- Design and develop embedded software components and services using modern C++.
- Define high-level feature specifications, system integration concepts, and functional and non-functional requirements.
- Apply established software design patterns to create scalable, maintainable, and testable solutions.
- Analyze complex technical problems, develop prototypes, and assess solution feasibility with system and product architects.
- Provide technical mentoring and guidance on C++, embedded software development, and engineering best practices.
Skills Required:
- 8 - 11 years of relevant experience in C++ and embedded software engineering.
- Strong hands-on experience with C++ and embedded software development.
- Proficiency in Linux-based software development and debugging of embedded systems.
- Strong understanding of multithreaded programming, concurrency, synchronization, and inter-process communication.
- Practical knowledge of software design patterns and their application in production systems.
- Experience working with MySQL and basic database systems in software products.
Valuable to Have:
- Experience with computer networking concepts and XML processing.
Education: Any graduation or post-graduation degree in Computer Science, Electronics, Engineering, or a related discipline.