Lead and mentor a team of embedded software engineers in the design, development, and integration of embedded systems.Architect, design, and optimize software modules using C / C++ in Linux-based environments.Drive development and implementation of communication protocols, ensuring efficient and reliable data exchange.Collaborate with cross-functional teams to define requirements, develop solutions, and establish delivery roadmaps.Ensure adherence to coding standards, software design principles, and best practices for embedded development.Conduct detailed code reviews, performance tuning, and system debugging to maintain high software quality.Provide technical guidance, make key design decisions, and support problem resolution across project phases.Coordinate with stakeholders to track progress, manage risks, and ensure timely project delivery.Work extensively in Linux environments with focus on socket programming and communication protocol implementation.Contribute to development involving real-time systems, IoT devices, or industrial communication standards like BACnet or KNX.Participate in Agile development processes and utilize CI / CD pipelines for continuous integration.Required Skills & Experience :
- 8–10+ years of experience in embedded software development using C / C++.
- Strong background in Linux systems programming and socket programming.
- Experience in protocol development and integration (e.g., BACnet, KNX, or similar).
- Knowledge of networking protocols, IoT, or industrial communication systems.
- Proficiency with version control tools (e.g., Git), build systems, and debugging tools.
- Exposure to Agile methodologies and CI / CD environments.
- Excellent analytical, debugging, and problem-solving skills.
- Proven experience in leading and mentoring technical teams.
Skills Required
Linux, Socket Programming, Communication Protocols