Lead the design and architecture of critical software components, writing well-thought-out, highly optimized C++ code.
Apply advanced software design methodologies, strictly adhering to principles like SOLID and RAII to ensure robust, scalable, and maintainable systems.
Develop a multi-threaded, multi-core system under a custom real-time operating system as well as embedded Linux.
Leverage AI tools to accelerate research, optimize daily workflows, and elevate overall code quality.
Gain a deep understanding of the underlying hardware architecture and end-to-end vision use cases.
Collaborate closely with internal departments to gather requirements and ensure the flawless integration of new features.
Requirements
Bachelor's degree in Computer Science, Software Engineering, or related fields.
5+ years of hands-on experience in C/C++ programming.
Exceptional software design and architecture skills, with a proven track record of applying modern C++ paradigms in mission-critical environments.
Practical knowledge and experience using AI tools to enhance software development processes.
Experience developing in a Linux operating system.
Experience working on real-time operating systems or embedded systems.
Strong understanding of computer architecture and performance tuning on different platforms.
Experience with Real-Time OS and driver development – (Advantage).
Experience in HW/SW integration and debugging activities on real HW