Embedded Firmware Engineer with 1 year of production experience building low-level STM32 firmware, register-level peripheral drivers, FreeRTOS applications, connectivity firmware, and hardware-debugged integrations.
I work primarily in Embedded C, STM32/ARM Cortex-M, FreeRTOS, and embedded hardware debugging, with additional hands-on experience in Linux device drivers, Device Tree, CAN/ISO-TP/UDS, and ESP32 connectivity.
| Domain | Technologies |
|---|---|
| Embedded C / MCU | Embedded C, STM32L0, STM32U0, STM32F407, ESP32-S3/S2, ARM Cortex-M |
| Firmware | Bare-metal, register-level drivers, FreeRTOS, task/queue/event-group design, watchdogs |
| Interfaces | I2C, SPI, UART, GPIO, EXTI, TIMER, LPTIM, IWDG, ADC, USB |
| Connectivity | Wi-Fi, BLE GATT/NimBLE, MQTT/TLS, TCP/IP |
| Automotive | CAN, ISO-TP (ISO 15765-2), UDS (ISO 14229) |
| Embedded Linux | Linux kernel modules, I2C client drivers, character devices, ioctl, procfs, Device Tree |
| Debug / Build | GDB, OpenOCD, J-Link, SWD/JTAG, DSO, Logic Analyzer, Wireshark, GCC, Make, CMake |
| Quality | Unit/integration testing, ASan/UBSan, cppcheck, Doxygen, MISRA-C guidelines |
- Register-level STM32 peripheral drivers with zero HAL/LL dependency.
- STM32L073 to STM32U0 firmware migration across approximately 18,500 lines and 25 files.
- Production integration of RFID, touch, LED and fingerprint devices over SPI/I2C/UART.
- ESP32-S3 FreeRTOS firmware for Wi-Fi, BLE, MQTT/TLS and system monitoring.
- Hardware root-cause debugging using DSO, logic analyzer and SWD/JTAG.
- Python/Tkinter factory tooling for encrypted UART device provisioning and verification.
ISO 14229 | ISO 15765-2 | C11 | State Machines | Memory Pool | Testing
- Host-buildable CAN/UDS stack with ISO-TP segmentation/reassembly and UDS service dispatch.
- Fixed-size memory pool, SPSC ring buffer, CRC engines and C11 atomics.
- 43 unit/integration tests with ASan/UBSan validation and HLD/LLD/Doxygen documentation.
Linux Kernel | I2C | Character Device | ioctl | Device Tree | BeagleBone Black
- Out-of-tree Linux I2C client driver exposing /dev/mpu6050 through a character-device interface.
- ioctl and procfs interfaces, Device Tree overlay, Linux userspace examples and STM32F407 companion firmware.
ESP-IDF 5 | FreeRTOS | NimBLE | Wi-Fi | BLE | Watchdog
- Modular Wi-Fi/BLE firmware with task, event-queue and event-group based coordination.
- Runtime health monitoring and watchdog handling.
- Embedded Linux bring-up and system programming
- Yocto/OpenEmbedded and Buildroot
- U-Boot and Device Tree
- Bootloaders, OTA and firmware update design
- Embedded CI, testing and static analysis
PG-DESD — Sunbeam Institute (CDAC), Pune
B.E. — Electrical Engineering, SPPU