
Senior Embedded Software Engineer (C/C++ & RTOS)
- Pune, Maharashtra
- Permanent
- Full-time
- Architect, design, develop, and maintain embedded firmware in C/C++, targeting diverse environments (bare-metal, multi-threaded RTOS, embedded OS).
- Must have specific experience with common microcontroller and/or embedded processing platforms such as STM32 TI and ESP32.
- Must have a strong understanding of embedded software design and architectural concepts as well as the integration between firmware and hardware.
- You must have a strong understanding of software development tools and methodologies used in the context of embedded systems. Familiarity with source control via established systems such as Git.
- Must have demonstrated skill in independently using electronics lab equipment to develop/troubleshoot low-level drivers and hardware integration for interfaces such as I2C, SPI, UART, USB, etc.
- You must possess good interpersonal skills and have the ability to work between multiple departments in carrying out this position s duties.
- Must have experience on CAN protocol with required tools like CANalyzer.
- Bachelor s in Electronics/ECE /EEE with 8 12 years of relevant embedded software experience
- Proven expertise in C/C++ firmware, RTOS (e.g. FreeRTOS), bare-metal, and embedded OS deployments
- Deep hardware interfacing experience: I C, SPI, UART, USB, CAN (experience with CAN tools like CANalyzer mandatory)
- Familiarity with key microcontroller families: STM32, TI, ESP32
- Strong understanding of software hardware architecture, including memory, timing, concurrency, and inter-task synchronization designs
- Master-level skills in debugging tools and hardware lab work JTAG/SWD, oscilloscopes, logic analyzers
- Experience working in version-controlled, collaborative environments with Git and development pipelines
- Excellent communication and cross-team collaboration aptitude
- Development cycles for embedded Linux or embedded OSes
- Familiarity with MISRA, AUTOSAR, or functional safety standards
- Unit/HIL testing, CI/CD for embedded systems (Docker, hardware simulation)
- Wireless protocols (BLE, Wi-Fi, LoRa)
- OTA, secure bootloaders, firmware encryption
- Microcontroller families like NXP, Nordic, etc.