Netwerken
Logo Flemish Universities

Exclusief evenement

Shadow a SOFTWARE ENGINEER || Consultancy (all fields of science)

Organisator van het evenement

Flemish Universities

Het programma

Cegeka opens the position of Software Engineer for the purpose of Job Shadowing, offering PhD candidates (≥ 3rd year of the PhD trajectory) / postdocs affiliated with 1 of the 5 Flemish universities the possibility to see for themselves what tasks and responsibilities come with this particular job function. 

The responsibilities of a Software Engineer at Cegeka go beyond just coding; it's about creating high-quality software that delivers value and is sustainable. This involves a wide range of tasks and expertise, from user interaction to the underlying infrastructure. In short, a software engineer is a problem solver, a craftsman, and a lifelong learner who focuses on delivering high-quality, sustainable software that adds real value—with expertise ranging from the user interface to the underlying infrastructure and cloud operations.

1. Delivering value

The primary responsibility is to deliver value to the customer and the organization. This means software engineers must understand what problems the software needs to solve and how it contributes to business objectives. This includes:

  • Understanding Business Needs: Actively communicating with stakeholders to understand the real needs and problems, instead of blindly following specifications.

  • Focus on Usability (Frontend): For software engineers, this specifically means designing and implementing intuitive and efficient user interfaces that provide an optimal user experience. This includes UI/UX principles and responsive design.

2. Quality and Craftmanship

It is essential to ensure quality and craftsmanship at every stage of the software development process. This goes beyond just avoiding bugs and includes:

  • Testing and Validation: Thoroughly testing the software to ensure it works correctly and meets requirements. This includes unit, integration, and system testing for both frontend and backend components.

  • Robustness and Reliability: Developing software that is stable and reliable, even under unexpected conditions or heavy load. For software engineers, this means designing scalable and resilient systems that can handle high transaction volumes and handle errors gracefully.

  • Security: Paying attention to the security of the software to prevent vulnerabilities and protect data. This applies to all layers of the application, from the frontend (e.g., cross-site scripting prevention) to the backend (e.g., secure APIs and authentication).

  • Performance: Optimizing the software for efficiency and speed, ensuring it is fast and responsive. This may involve performance tuning of backend database queries or optimizing frontend webpage load times.

3. Sustainability and Maintainability

A crucial aspect is creating sustainable and maintainable software. Software is rarely a one-time effort; it needs to function long-term and be adaptable. This requires:

  • Readable and Understandable Code: Writing code that is easy for other engineers (and your future self) to understand and modify, for both frontend frameworks and backend services.

  • Modular Design: Designing systems in small, independent components that are easier to test, maintain, and reuse. This is essential for both frontend component libraries and microservices architectures in the backend.

  • Documentation: Providing adequate documentation where needed, describing the architecture, design, and functioning of the software.

  • Refactoring: Regularly restructuring the code to improve quality, readability, and maintainability, without changing external functionality.

4. Efficiency, Productivity and Operations

Software engineers are also responsible for efficiency, productivity, and the operational aspects of the software. This means not only building good software, but also doing it effectively and ensuring smooth operation in production:

  • Automation: Leveraging automation for tasks such as testing, building, and deploying to work faster and more consistently. This includes Continuous Integration/Continuous Delivery (CI/CD) pipelines.

  • Version Control: Effectively using version control systems (like Git) to collaborate and manage changes.

  • Process Improvement: Continuously looking for ways to improve the development process and eliminate bottlenecks.

  • Cloud Deployments and Operations: Engineers are responsible for properly setting up, monitoring, and managing software in the cloud. This includes:

    • Infrastructure as Code (IaC): Defining and provisioning cloud infrastructure (e.g., servers, databases, networks) via code (e.g., Terraform, Bicep).

    • Monitoring and Logging: Implementing robust monitoring and logging systems to track application health and performance, and quickly detect and resolve issues. This is critical for both frontend (e.g., error tracking) and backend (e.g., resource utilization, API response times).

    • Scalability and Elasticity: Designing systems that can automatically scale based on demand, and configuring cloud services accordingly. This is especially relevant for backend services.

    • Disaster Recovery and Backup: Setting up strategies and procedures for recovering systems after failures and securing data.

5. Continuous Learning and Adaptation

The world of software development evolves rapidly. Therefore, continuous learning and adaptation is a fundamental responsibility:

  • Staying Up to Date: Actively studying new technologies, tools, and methodologies—whether it's the latest JavaScript frameworks for the frontend, advanced database techniques for the backend, or the latest cloud deployment strategies.

  • Feedback and Iteration: Being open to feedback—from both team members and users—and iteratively improving the software.

  • Problem-Solving Ability: The ability to analyze, diagnose, and implement effective solutions to complex problems, whether it's a performance issue in the backend, a rendering problem in the frontend, or a configuration issue in cloud deployment. >


> Open to PhD candidates / postdocs with a background in Engineering,Computer Science. Preference is given to candidates who have a firm knowledge of Dutch and English, and have a solid background in Computer Science

Cegeka offers a 1-day Job Shadowing experience. The date identified for Job Shadowing is 10 October.  

Deelnemende bedrijven/organisaties

  • In close cooperation

    Logo Flemish Universities

    Partner