Participate in the full software development lifecycle, from design to implementation and testing by following system architectural strategies and guidelines.
Provide technical guidance to software development teams through the project lifecycle.
Assist in the debugging and testing of embedded software systems.
Ensure compliance with safety standards and protocols
Maintain comprehensive documentation of all design and development processes
Work Experience
Bachelor's/master's degree in computer science, Electronics, Embedded Systems
4 to 6 years in developing software on embedded C++ covering application/middleware/framework
Excellent in C++ (preferably C++ >14) and object-oriented programming & design patterns
Experience in developing software for real-time core (CR) and application core (CA) of embedded platforms
Good understanding of Linux basics, board bring up and experience development of middleware and application on Linux environment.
Experience in multithreading, IPC and task scheduling on Linux
Basic understanding about Linux middleware library such as V4L2, DRM etc.
Good software debugging skills using tools like gdb, Valgrind, Visual Studio etc.
Excellent problem-solving abilities and attention to details