Careers

Senior C/C++ Firmware Developer

eSpark Consulting Group is seeking a highly experienced and results-driven Senior C/C++ Firmware Developer to join our embedded systems team. The ideal candidate will have deep expertise in embedded firmware development using C/C++, with hands-on experience in programming a wide range of 32-bit microcontrollers such as STM32 and ESP32, and a strong understanding of Embedded Linux environments, particularly OpenWRT. 

 
Responsibilities: 

  • Lead end-to-end firmware development projects from concept to deployment, including planning, effort estimation, scheduling, resource coordination, and risk management. 
  • Design, develop, and optimize firmware for 32-bit microcontrollers, especially STM32, ESP32, NXP (Kinetis, i.MX), and Microchip MCUs (ATMEGA, ATSAM, LAN9255). 
  • Collaborate closely with hardware, software, and QA teams to drive technical decisions, ensure system integration, and resolve complex cross-functional challenges. 
  • Develop and maintain robust, scalable, and efficient embedded code adhering to MISRA C standards and relevant IEC safety and reliability standards. 
  • Integrate firmware with Embedded Linux systems, particularly OpenWRT, and provide technical leadership in embedded Linux development. 
  • Contribute to FPGA-based designs, including developing and integrating HDL logic to complement firmware functionality. 
  • Implement and maintain communication protocols such as UART, SPI, I2C, CAN, and Modbus in embedded applications. 
  • Develop and execute automated unit tests and validation plans to ensure firmware quality, performance, and reliability. 
  • Work on real-time and bare-metal systems, using RTOS platforms like FreeRTOS, with deep understanding of task scheduling and resource management. 
  • Use embedded IDEs and toolchains such as Keil, MPLAB X, STM32CubeIDE, ESP-IDF, and Segger Embedded Studio effectively. 
  • Collaborate in Agile/Scrum development environments, participating in sprint planning, code reviews, and continuous integration. 
  • Maintain high-quality firmware documentation, including flowcharts, test procedures, technical specifications, and version histories. 
  • Utilize modern C++17 features to write clean, efficient, and maintainable firmware code, leveraging capabilities such as structured bindings, and compile-time evaluations. 
  • Support internal engineering teams and customers with technical troubleshooting, bug fixing, and post-deployment support. 

Requirements: 

  • 6+ years of hands-on experience in embedded systems design and firmware development. 
  • Proven expertise in C and C++ for embedded systems, including use of STL, smart pointers, and OOP principles. 
  • Strong experience with STM32, ESP32 (ESP-IDF), NXP, and Microchip MCUs (ATSAM, ATMEGA, LAN9255). 
  • In-depth understanding of RTOS, bare-metal programming, and multi-threaded applications. 
  • Proficiency in Embedded Linux systems, especially OpenWRT, including kernel customization and system-level integration. 
  • Working knowledge of FPGA design and integration, preferably using Verilog/VHDL and platforms like Xilinx or Intel FPGAs. 
  • Hands-on experience with debugging tools: JTAG, SWD, oscilloscopes, logic analyzers, and serial monitors. 
  • Familiarity with MISRA C, static code analysis tools, and industry compliance standards (e.g., IEC 61508, ISO 26262). 
  • Proficient with version control systems (Git) and CI/CD pipelines for firmware builds and automated testing. 
  • Strong command over modern C++ standards, particularly C++17, with practical experience using features like structured bindings. 
  • Experience in Agile methodologies, participating in sprint planning, retrospectives, and collaborative development workflows. 
  • Excellent written and verbal communication skills, with an ability to document, present, and explain complex technical concepts. 
  • Self-motivated, detail-oriented, and capable of mentoring junior team members and reviewing their work. 

 
Qualification: Bachelor’s degree in electronic engineering, computer engineering, or similar.  
 
Experience: 6+ years of experience as a Senior C/C++ Firmware Developer. 
 
eSpark Consulting Group offers you the following benefits: 

  • Annual Increments 
  • Paid Time off 
  • Flexible work hours 
Job Type: Full Time
Job Location: Block 1 Block 3 Gulistan-e-Johar Karachi

Apply for this position

Allowed Type(s): .pdf, .doc, .docx