Location – BangaloreExperience – 8+ yearsWork mode- Onsite, immediateNotice period – 15- 30 daysYour 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, I²C, 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 usingGitLab/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) withappropriate 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 trainingcolleagues.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/CDsystems. 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).Soft Skills Open-minded, willing to learn, and forward-looking attitude. Curious, questioning the status quo, and proactive in sharing ideas. Analytical thinking and structured approach. Team-oriented with a security-focused and test-driven development mindset.Motivation & Role ImpactYou will contribute to the core embedded systems framework by implementing thecomplete hardware abstraction layer. Your work will enable application developers toaccess microcontroller features more efficiently and will support a highly modular andreusable software environment across product lines.Tech StackProgramming 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, XRayDebuggers & Tools J-Link Debugger (SEGGER) ST-LINK/V3 Debugger STM32CubeMonitorInterfaces & Communication CAN (Controller Area Network) IO-Link Modbus (TCP) EtherCAT / PROFINET / OPC UA I²C, SPI, UARTSecurity & 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