Responsibilities
* Design, develop, and maintain high-level embedded software modules within GNSS receiver firmware, including positioning engines, navigation filters, and data fusion logic.
* Refactor and modernize existing legacy codebases into modular, maintainable, and testable architectures.
* Collaborate with algorithm developers to translate mathematical models into efficient and robust C++ implementations.
* Integrate GNSS correction services (RTK, PPP, CSSR) and ensure consistent data flow between the receiver and correction sources.
* Implement unit tests, integration tests, and performance validation for critical firmware components.
* Optimize resource usage, reliability, and runtime performance across diverse hardware targets and operating systems.
* Participate in architectural reviews, code reviews, and documentation processes to ensure high engineering standards.
* Develop advanced debugging tools for diagnosing issues, post-processing logs, and simulating positioning scenarios.
* Port code across different firmware versions and products, ensuring compatibility and performance.
* Collaborate with hardware teams to support new hardware development and integration.
* Conduct field testing, debugging, and provide ongoing support for deployed products.
* Participate in CI/CD workflows (TeamCity, Bitbucket/GitHub, Jira) for continuous integration and deployment.
Education & Experience
* Master’s degree in Electrical Engineering, Computer Science, or related field.
* 5+ years of industrial experience developing large-scale applications in C++ (including C++11/14/17) and CMake.
* Experience with embedded software and real-time operating systems (RTEMS, FreeRTOS, QNX).
* Proficiency with version control systems (Git, Mercurial, SVN), CI/CD pipelines, code quality, and refactoring.
* Experience developing multi-threaded applications.
* Good knowledge of Python for scripting, automation, and testing.
* Experience with TeamCity or similar CI/CD tools.
* Experience with Java for integration tasks is a plus.
Knowledge, Skills, and Abilities
* Long-term job orientation, responsibility, punctuality.
* Ability to work in an international, cross-disciplinary team.
* Strong analytical and problem-solving skills.
* Ability to understand and extend existing architectures and codebases.
* Understanding of model-based software design and modular architecture patterns.
* Intermediate or higher English proficiency.
* Excellent C++ programming skills
#J-18808-Ljbffr