C++ Software Engineers

Materialise is a dynamic Belgian high-tech worldwide company, founded in 1990, with over 2,200 employees. Our mission is to innovate for a better and healthier world through our software and hardware infrastructure and our in-depth knowledge of additive manufacturing (also known as 3D Printing). 


We would like to welcome several C++ Software Engineers to further advance the technical knowhow at Materialise – with value creation at the heart of everything we do. Based on your interests and experience you will work in the Software Business Unit, the Medical Business Unit, or in our Research and Technology Department.


In our Software BU, we provide companies a platform of software tools that manage and control their 3D printing process more efficiently, allowing our customers to meet the highest standards of the most demanding industries. Here we develop, among other solutions, Materialise Magics, a versatile, industry-leading data and build preparation software for 3D printing. There are also exciting new developments ongoing with our cross-departmental licensing framework.


In our Medical BU, we are pioneering many leading medical applications of 3D printing and where we are enabling clinicians, engineers, and researchers to revolutionize innovative personalized treatment that helps improve and save lives. Two top-of-the-line medical software solutions are developed here: Materialise 3-matic and Materialise Mimics.


In our Research & Technology department, we provide building blocks for innovation & shared frameworks to Materialise and all its business units. We have a team of 80+ people who have deep domain knowledge and a shared eagerness to look into and apply new state-of-the-art technologies. In this department, one of the aspects we work on is further developing our core technology SDK, which is the foundation of many of our software products. 

Responsibilities

Together, during the interview process, we will discover what products, departments, … would match best with your fields of interest and experience. Responsibilities may vary, but can be somewhat summarized:

  • You will be responsible for designing, building, and maintaining efficient, reusable, and reliable C++ code.
  • You’ll identify bottlenecks and bugs and devise solutions to these problems.
  • You will help to maintain code quality, organization, and automation. In other words: you ensure coding standards are followed and help implement good programming practices within the team.
  • You gladly take part in building and supporting cross-product platforms.
  • You will be responsible for conducting code review and consult on technical topics.
  • You work in team and interact with other teams across the organization to understand the software requirements, for suggestions for improvements and design.
  • You proactively participate in technical discussions and meetings that can contribute to better understanding of the component design & implementation. 
  • You can choose to work out of our office in Leuven (Belgium) or in Wroclaw (Poland) and you’ll be able to work remotely to up to 60% of your time. 

Requirements

  • You have commercial experience in software development and consider yourself proficient in C++.
  • A knack for maintainability: you can read code you wrote more than 6 months ago, feeling only minor levels of shame, and understand what it does on sight. People have reviewed your code before and did not run away crying;-).
  • You have good communication and problem-solving skills.
  • You have a good understanding of SDLC and are familiar with Agile/Scrum methodology.
  • You have great attention to details, a sense of curiosity, and you show willingness to take responsibility and show initiative.
  • You have successful experiences with working in hybrid teams.
  • At least a strong intermediate level of English, both written and spoken.
  • (Feel free to specify your specific fields of interest in your application)

Experience with any or more of the following is considered a plus (again, depending on the department you’d end up in and your own fields of interest)

  • Experience with QT
  • Experience with 3D modeling, CAD, CAE, 3D printing, image processing
  • Computational geometry and/or a mathematics background
  • A good understanding of object oriented design and functional design concepts 
  • Cross-platform development (and familiarity with e.g. Python, CMake …)
  • Familiarity with generic programming, templates, and STL