• At least Bachelor degree in computer science
• 3+ years in Software Development using C++
• Strong knowledge of basic data structures and algorithms
• Understanding of algorithm complexity (big O notations)
• Design Patterns
• Basic knowledge of Math (linear algebra, analytic geometry)
• Image processing
• Build local & international career
• Contribute in full cycle of product development
• Be a part of future technologies
• Use Learning and development system
• Learn & use English
• Trip to Europe, Asia, USA
• Develop high-quality state-of-the-art algorithms as a part of Materialise SDK (kernel libraries)
• Communicate with customers (internal and external): clarify tasks, review requirements provided, create acceptance tests and metrics
• Deliver code in production quality, with respect to kernel development processes (pass design and code review, cover with tests, write documentation etc.)
• Provide maintanance and support: assist product developers in integration process, fix bugs, consult customers on algo related questions
MatSDK is an acronym for the “Materialise Software Development Kit”, a collection of software libraries which contain our shared and core technology. These libraries are integrated in our desktop and mobile products. The MatSDK team: the team responsible for supporting & providing all research & shared code to Materialise desktop & mobile software applications.
Pull tasks or projects are activities which are driven by one BU’s or product’s need and typically contribute on a short term into next product release. Algo as a Service and bugfixes in MatSDK code are typical examples of pull activities.
Push tasks and projects are activities which are driven by MatSDK and typically contribute on longer term. In general these activities relate to reducing or controlling the technical debt in MatSDK. Autotesting and refactoring are typical push projects.
MatSDK team (together with Research) is a team of specialists in their domain, it doesn’t seem effective if potentially less specialized people will implement code which belongs in our MatSDK. MatSDK components are continuously being improved and developed for different products.
Stability. We aim to autotest the MatSDK components and avoid regression.
Better Dependencies. We aim to make our shared code as modular as possible. Making it possible for products to ’shop’ for the functionality they need. This facilitates ESCROW and strategic IP partnerships, but also reduced the size of the developers code branch and the applications deployment package.
Portability. We make the MatSDK code as portable as possible to be better prepared for evolutions in the IT market.