Define the architecture, design, and develop new features for our software on all commonly used platforms in modern C++
Optimize and enhance our software with new, efficient algorithms and state-of-the-art software tools and technologies
Work independently on solutions for specified requirements and be responsible for complying with time and quality specifications
Ensure that our software is stable and runs efficiently on many different systems (more than 2.5 billion installations)
Monitor the latest technical developments in your field and make proposals for improvement
Guide and assist other team members in engineering topics relevant to the team
Must Haves
A university or college degree in the field of information technology or a related subject or relevant work experience
3+ years of professional experience in the field of software development
Solid knowledge of C++ and C# is mandatory
Experience in taking architectural decisions about the development and maintenance of large-scale distributed systems and integrations with applications and user interfaces
Familiarity with boost and other open-source libraries
Understanding of Clean Code and Design Patterns for object-orientated programming
Experience in any of the following fields would be desirable: parallel programming, SQL, NoSQL, test automation, network communications
A positive and solution-oriented mindset paired with a structured and analytical way of thinking/working, being a team player, as well as motivation to learn new things
Fluency in English is mandatory, further languages are a plus