Position: Software Engineer C++ (SDK)
Company: Materialise
Category: C++
Experience required: 2y
English level: intermediate

**Responsibilities:**

- 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 maintenance and support: assist product developers in integration process, fix bugs, consult customers on algo related questions.
 
**Requirements:**

- Strong C++;
- Good mathematical background;
- At least intermediate level of English;
- Basic data structures and algorithms.
 
**Nice to have:** CMake, git, CI/CD, Multithreading, cross-platform development, TDD and knowledge of image processing.
 
**Education**
At least a Bachelor degree in Computer science.
 
The new person will join the Medical SDK team.
MatSDK is an acronym for the “Materialise Software Development Kit”, a collection of software libraries which contain our shared and core technology. The MatSDK is responsible for supporting & providing all research & shared code. Developing new algorithms and bug fixes in MatSDK code are typical examples of tasks. We aim to autotest the MatSDK components and avoid regression.
Team is responsible for delivering state-of-art algorithms for the following Materialise products: 3-matic, Mimics, C&V and CMF workflows.
**More information about these products you can find here:**
https://www.materialise.com/en/medical/mimics-innovation-suite/3-matic
https://www.materialise.com/en/medical/mimics-innovation-suite/mimics
https://www.materialise.com/en/medical/software/mimics-enlight

**Additional information:**

There is a structural team that deals with structural issues, but you are hired to another team, the medical one, which deals with medical algorithms. **Team:** 4 C++ developers and Agile Coach, all in Ukraine, there are more people in general, but they are in different departments. 
There is a common code base and there are people who are responsible for the core part, and there is an algorithmic one, more related to the product. 

Windows environment, making new cross-platform code.
We write for different platforms, not only for Windows.
Performance testing is a part of daily tasks.
Scrum methodology.
The service is provided to our internal products.
Meetings can be in English, but there are no regular ones, depending on the task.
From time to time we make presentations, share knowledge, and there are technical conferences inside MatSDK.

**Interviewing process**
3 Stages: HR (30 min), technical (1.5 hours) and with management (1 hour). Online in Microsoft Teams.

We are looking for people for our Kyiv office. Partly remote. We also provide a relocation option to Kyiv. 
**Address:** Raisy Okipnoi Str., 8a. Metro station Livoberezhna.

**Product company.** Head office in Belgium. We have 28 offices worldwide.