HamburgerMenu
hirist

Embedded Software Engineer - C/C++

Qode.World
Bangalore
6 - 10 Years

Posted on: 10/11/2025

Job Description

Your Responsibilities :



- Development and maintenance of embedded software in C/C++ for microcontroller-based systems.


- Programming and configuration of STM32 microcontrollers (Cortex-M0+, M4, M33).


- Implementation of device drivers, peripheral interfaces, and communication protocols (UART, SPI, IC, etc.).


- Adaptation and optimization of existing product software.


- Software integration and testing on target hardware.


- Conducting Unit-Tests and Code Reviews.


- Driving and contributing to the test strategy.


- Design and maintenance of the development ecosystem and CI/CD pipelines using GitLab/Jenkins.


- Setup, maintenance, and continuous improvement of embedded toolchains (compilers, linkers, debuggers, build systems).


- Optimization and integration of embedded IDEs (e.g., JetBrains CLion, VS Code) with appropriate plugins.


- Evaluation and documentation of tools, and creation of development guidelines.


- Collaboration with cross-functional teams (mechanics, electronics, testing, hardware).


- Future outlook : Participation in setting up a Linux-based toolchain and training colleagues.



Your Profile :



- Degree in Computer Science, Electrical Engineering, or equivalent qualification.


- Strong proficiency in C and C++, preferably in embedded software development.


- Experience in STM32 microcontroller families (especially Cortex-M0+, M4, M33).


- Experience with embedded development toolchains, IDEs (CLion, VS Code), and CI/CD systems.


- Familiarity with Unit-Test frameworks (e.g., Google Test).


- Solid understanding of schematics, technical datasheets, and reference manuals.


- Strong proficiency in Linux OS.


- Open-minded, structured, independent working style and strong team player.


- Good communication skills in English (German is a plus).



Must have :



Tech Stack :



Programming Languages :



- C hardware-based programming


- C++11 to C++17 or higher


- Python (used in toolchain and scripting)



Microcontrollers & Processors :



- STM32H5 (ARM Cortex-M33, 250 MHz)


- STM32U5 (ARM Cortex-M33, 160 MHz)


- STM32F4xx


- STM32F103


- Cortex M0+, M4, M33 (general)



RTOS :



- Segger embOS (must have)


- Zephyr RTOS (nice to have for future development)


- IDE, CI/CD & Build Tools


- JetBrains CLion, VS Code


- CMake, Make


- Jenkins


- Git, GitLab


- JetBrains IDEs, Upsource


- Jira Software, XRay



Debuggers & Tools :



- J-Link Debugger (SEGGER)


- ST-LINK/V3 Debugger


- STM32CubeMonitor



Interfaces & Communication :



- CAN (Controller Area Network)


- IO-Link


- Modbus (TCP)


- EtherCAT / PROFINET / OPC UA


- IC, SPI, UART



Security & Certifications :



- Secure Boot & Secure Firmware Update (SFI/SFU) STM32H5 supported


- TrustZone for Cortex-M33 (secure/insecure application separation)


- AES-256 & SHA-512 Hardware Encryption


- ISO 61508 / IEC 62443 Safety & Security Standards


info-icon

Did you find something suspicious?