Job Title : Embedded Firmware Engineer
Job Overview :
We are seeking an experienced and innovative Embedded Firmware Engineer to join our dynamic engineering team. In this role, you will be responsible for designing, developing, and testing embedded firmware for various embedded systems. You will work closely with hardware engineers and software developers to bring innovative products from concept to completion, ensuring they meet both functional and performance requirements.
Key Responsibilities :
- Firmware Development : Design, implement, and maintain firmware for embedded systems, using programming languages like C , C++ , and assembly language where necessary.
- Hardware Integration : Collaborate with hardware engineers to integrate firmware with microcontrollers, sensors, communication modules, and other hardware components.
- Embedded System Design : Contribute to the design and architecture of embedded systems, ensuring that the firmware is optimized for the system's requirements.
- Testing & Debugging : Develop and execute unit tests, perform system-level testing, and debug firmware issues using debuggers and oscilloscopes . Troubleshoot hardware and software issues during development and post-deployment.
- Performance Optimization : Optimize firmware to meet system performance goals, including memory usage, power consumption, and execution speed.
- Firmware Documentation : Write detailed technical documentation for firmware designs, APIs, and system configurations to ensure maintainability and future upgrades.
- Cross-functional Collaboration : Work closely with other engineering teams, including hardware engineers, software developers, and product managers, to ensure the successful development and delivery of embedded products.
- Continuous Improvement : Stay up-to-date with the latest advancements in embedded systems, firmware development tools, and industry trends. Propose and implement improvements to the development process and product features.
- Compliance and Standards : Ensure firmware complies with relevant industry standards, safety guidelines, and regulatory requirements.
Requirements :
Experience : 3+ years of experience in embedded firmware development, particularly with microcontrollers (e.g., ARM , PIC , AVR , Raspberry Pi , STM32 ).Technical Skills :Proficiency in C and C++ programming languages for embedded systems.Strong knowledge of microcontroller architectures and peripherals (e.g., GPIO , UART , I2C , SPI , ADC / DAC ).Experience with real-time operating systems (RTOS) , bare-metal programming , and multitasking environments.Familiarity with hardware description languages (e.g., VHDL , Verilog ) and hardware design concepts is a plus.Strong debugging skills using JTAG , SWD , oscilloscopes , and logic analyzers.Experience with version control systems such as Git .Familiarity with embedded communication protocols (e.g., TCP / IP , Bluetooth , Zigbee , Wi-Fi ).Knowledge of unit testing frameworks and debugging tools for embedded systems.Soft Skills :
Strong problem-solving and analytical skills.Ability to work in a collaborative team environment and communicate effectively with cross-functional teams.Strong attention to detail and a focus on product quality.Ability to work independently and manage multiple tasks with minimal supervisionSkills Required
C Programming, Adc, Uart