The opportunity:
We are seeking a talented and detail-oriented Firmware Engineer to design, develop, and optimize embedded firmware solutions for next-generation products. This role offers the opportunity to work closely with hardware, software, and system engineering teams to deliver high-performance, reliable, and scalable embedded systems.
The ideal candidate is passionate about embedded development, enjoys solving complex technical problems, and thrives in a fast-paced, innovative-driven environment.
Key responsibilities include:
1. Strategic Responsibilities:
- Contribute to firmware architecture design aligned with product and technology roadmaps.
- Participate in defining embedded system standards, best practices, and coding guidelines.
- Collaborate with cross-functional teams (hardware, software, QA) to influence product design decisions early in development.
- Evaluate and recommend new tools, technologies, and frameworks to enhance firmware development efficiency and quality.
- Support long-term maintainability, scalability, and performance optimization strategies.
- Contribute to risk assessment and mitigation planning for embedded systems projects.
2. Functional Responsibilities:
- Design, develop, test, and debug firmware for embedded systems and microcontroller-based products.
- Work with peripherals such as UART, SPI, I2C, CAN, USB and ADC/DAC
- Develop low-level drivers, middleware, and application-level firmware.
- Implement RTOS-based or bare-metal firmware solutions.
- Perform board bring-up, hardware validation, and debugging using oscilloscopes, logic analyzers, and debuggers.
- Optimize firmware for performance, power consumption, and memory usage.
- Write and maintain technical documentation, including design specifications and test plans.
Key attributes for success –
- Strong analytical and problem-solving mindset.
- Attention to detail with a focus on reliability and quality.
- Ability to work independently while collaborating effectively in cross-functional teams.
- Strong ownership and accountability for deliverables.
- Excellent troubleshooting and debugging skills.
- Clear communication skills (both written and verbal).
- Adaptability in fast-paced, evolving technical environments.
- Continuous learning mindset with interest in emerging embedded technologies.
You will earn brownie points if you have –
- Experience in board bring-up and hardware validation.
- Exposure to C++ and RTOS
To qualify for the role, you must have –
- Bachelor’s or Master’s degree in Electronics, Electrical Engineering, Computer Engineering, or a related field.
- 2–4 years of hands-on experience in embedded firmware development.
- Strong programming skills in C/C++ for microcontroller-based systems.
- Experience with ARM Cortex-M/A or similar architectures.
- Solid understanding of hardware interfaces such as UART, SPI, I2C, CAN and USB.
- Experience with RTOS (e.g., FreeRTOS) or bare-metal development.
- Familiarity with debugging tools such as JTAG/SWD debuggers, oscilloscopes, and logic analyzers.
- Experience with version control systems (e.g., Git).
- Strong understanding of embedded system constraints (memory, power, performance).
- Ability to read and interpret schematics and datasheets.