Key Responsibilities
- Design, develop, and maintain firmware for microcontrollers (MCUs).
- Develop low-level hardware drivers for peripherals such as UART, SPI, I2C, GPIO, DMA, and interrupts.
- Create and implement test applications to validate hardware functionality and support manufacturing testing.
- Collaborate with hardware engineers during board bring-up, component validation, and system integration.
- Conduct code reviews, debugging, and performance tuning to ensure high-quality deliverables.
- Contribute to continuous improvement by suggesting design, process, and cost-efficiency enhancements.
- Mentor and provide technical guidance to junior engineers.
- Stay updated on emerging technologies and best practices in embedded firmware development.
Qualifications
- Bachelors Degree in Electronics Engineering, Electrical Engineering, Computer Engineering, or Computer Science.
- At least 5 years of experience in firmware or embedded systems development.
- Proficiency in C/C++ programming for low-level embedded applications.
- Solid understanding of embedded systems architecture and communication protocols (UART, SPI, I2C, CAN).
- Hands-on experience with board bring-up, debugging hardware/software integration, and performance optimization.
- Strong analytical, problem-solving, and collaboration skills.
Preferred Qualifications
- Experience with ARM microprocessors and RTOS environments.
- Familiarity with version control systems (e.g., Git), build systems, and CI/CD pipelines.
- Exposure to Agile/Scrum development methodologies.
- Knowledge of FPGA/CPLD programming (Verilog or VHDL) is an advantage.
- Understanding of cybersecurity principles and software testing automation frameworks.
- Experience with Process Control Systems or Distributed Control Systems is a plus.
Why Join
Youll be part of a global engineering team that values innovation, collaboration, and professional growth.