Tech Stack
Tag name is followed by "@" symbol and proficiency level value.
About proficiency levels:
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
Communication @ 9
Debugging @ 4
Distributed Systems @ 3
Git @ 4
Linux @ 6
Profiling @ 3
Software Development @ 7
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
Details
Our ADAS Platform team is responsible for building a scalable and modular software stack that powers advanced driver-assistance systems across a diverse range of product lines and OEMs. We are looking for a highly motivated Senior Systems Software Engineer with a strong foundation in software architecture. This role is ideal for someone who thrives on working across multiple layers of the software stack to analyze performance, inter-operation and deterministic execution flows. You will play a key role in evolving the platform to support efficient integration and scalability in a complex multi-OEM environment.
Responsibilities
- Driving architectural improvements that simplify and modularize the software stack.
- Designing and developing clean boundaries between components with performance-first approach to software modules.
- Refactoring ADAS components to support reuse, extensibility, and long-term maintainability.
- Partnering with teams across software, systems, and hardware to define clear interfaces and improve integration velocity.
- Establishing test coverage, design reviews, and architectural documentation that scales with the platform.
- Profiling and tuning system performance — optimizing for modern multi-core and real-time environments.
Requirements
- BS or MS in Computer Engineering, Computer Science, or a related field (or equivalent experience).
- 8+ years of professional software development experience.
- Solid background in C++ programming.
- Strong understanding of modular software architecture, clean code design, and separation of concerns.
- Hands-on experience building and debugging multithreaded, real-time, or performance-critical systems.
- Familiarity with parallel/distributed systems and low-level system profiling.
- Comfortable working in Linux, QNX, or other embedded RTOS environments.
- Exceptional communication skills and a collaborative, hard-working attitude.
Ways to Stand Out From The Crowd
- Experience developing ADAS software — especially in components like Planning, Sensor Fusion, Mapping, or Localization.
- Deep understanding of real-time operating systems, particularly QNX.
- Familiarity with the automotive software lifecycle and integration across safety-critical systems.
- Experience with memory management, DMA engines, and hardware abstraction layers (HAL).
- Experience using Git and Bazel in large-scale software environments.
Applications for this job will be accepted at least until April 26, 2026.
Your base salary will be determined based on your location, experience, and the pay of employees in similar positions. The base salary range is 184,000 USD - 287,500 USD for Level 4, and 224,000 USD - 356,500 USD for Level 5.