Job Requirements
Senior Firmware Engineer – Embedded Microcontroller Development
Role Overview
We are seeking an experienced
Senior Firmware Engineer
to lead the design and development of embedded firmware for microcontroller-based systems. The role focuses on architecting reliable, scalable, and high‑performance firmware for platforms such as
STM32
,
TI C2000
, and TI multicore MCUs. The candidate should have strong embedded C/C++ expertise, RTOS experience, and hands‑on hardware–software integration skills.
Experience with
MQTT protocols, IoT frameworks, or connected device architectures
is a strong plus.
Key Responsibilities
Firmware Architecture & Development
-
Design, develop, and maintain embedded firmware for ARM Cortex‑M and TI MCU platforms.
-
Develop and optimize peripheral drivers, middleware, communication stacks, and board support packages (BSP).
-
Implement modules involving ADC/DAC, PWM, DMA, timers, watchdogs, interrupts, and low‑power modes.
-
Architect RTOS‑based systems using FreeRTOS or similar operating systems.
Hardware–Software Integration
-
Collaborate with hardware teams for board bring-up, schematic validation, and design reviews.
-
Debug hardware/firmware integration issues using oscilloscopes, logic analyzers, and JTAG/SWD.
-
Validate and tune interfaces such as:
-
SPI, I²C, UART, CAN, LIN
-
Modbus/RS485, Ethernet, Profinet
-
USB or proprietary protocols
System Optimization & Reliability
-
Optimize real‑time performance, memory usage, and power consumption.
-
Implement robust error-handling, diagnostics, and state-machine-driven architectures.
-
Perform code reviews, static analysis, unit testing, and regression testing.
Documentation & Quality
-
Prepare architectural documents, design specifications, interface definitions, and API documentation.
-
Ensure firmware quality through coding standards (MISRA‑C or equivalent).
-
Support validation engineers and ATE teams with firmware-level hooks and testability features.
Cross-Functional Collaboration
-
Work closely with system, hardware, ATE, and validation teams.
-
Provide mentorship and technical leadership to junior firmware engineers.
-
Participate in system-level architecture decisions including communication frameworks, bootloaders, and security features.
Work Experience
Technical Skills
-
Bachelor’s/Master’s degree in Electronics, Electrical, Computer, or Embedded Systems Engineering.
-
7+ years of proven experience in embedded firmware development.
-
Hands-on experience with:
-
STM32 (ARM Cortex‑M series)
-
TI C2000 / TI multicore DSP/MCU platforms (preferred)
-
Strong expertise in:
-
Embedded C/C++
-
RTOS (FreeRTOS, TI‑RTOS, ThreadX, etc.)
-
Interrupt-driven programming and real-time firmware
-
Familiarity with:
-
JTAG/SWD tools, oscilloscopes, logic analyzers
-
Memory interfaces: Flash, EEPROM, FRAM
-
Common industrial protocols
Good To Have (Preferred)
-
Experience with MQTT protocol for messaging or telemetry.
-
Exposure to IoT architectures, device connectivity, or cloud‑connected embedded systems.
-
Experience building connected dashboards or interacting with IoT gateways.
-
Background in ATE/HIL environments or automation frameworks.
-
Knowledge of security best practices, OTA updates, and remote diagnostics.
-
Experience with Git, CI/CD for firmware, static analysis tools, or DevOps for embedded.
Soft Skills
-
Strong analytical and debugging capabilities.
-
Good communication and clear technical documentation skills.
-
Ability to take ownership of firmware development and mentor junior engineers.
-
Comfortable working in fast-paced environments with evolving requirements.