Firmware Engineer
Accio Robotics
Bengaluru, Karnataka, India
Responsibilities: Firmware Development: Design, develop, and optimize firmware for our robotic systems, ensuring seamless integration with hardware components. Microcontroller Programming: Develop and maintain code for various microcontrollers and embedded systems used in our products. Testing & Debugging: Collaborate with the hardware and software teams to test firmware implementations, debug issues, and ensure optimal performance and reliability. Performance Optimization: Optimize firmware for power consumption, system stability, and real-time performance. Documentation: Maintain comprehensive documentation of firmware designs, algorithms, and interfaces for internal and external collaborators. Continuous Improvement: Stay updated with the latest advancements in firmware development and embedded systems, bringing innovative ideas and improvements to our platforms. Requirements Requirements & Qualifications: 1-3 years of experience in embedded firmware development. Deliver high-quality C/C++ code in real-time environments. Familiarity with electronic circuit analysis/simulators like Multisim and Proteus. Must be familiar with ARM or equivalent embedded multi-core microprocessor architectures. Experience working hands-on with ARM-based microcontrollers. Knowledge of NXP microcontrollers and environments is a plus. Knowledge of RTOS concepts and experience working with FreeRTOS and other RTOS services is a must. Very good understanding of communication interfaces such as CAN, RS232, I2C, SPI, and Ethernet. Good understanding of DSA, control systems , and robotics is a plus, along with a good understanding of the hardware product development process. Ability to write highly optimized code is essential. 0-1 year of experience in PCB designing. Hands-on experience working with analog and digital devices, power converters for hardware system design. Aptitude to select and validate critical components for embedded system design. Basic understanding of PCB DFM (Design for Manufacturability) and DFA (Design for Assembly). Ability to use and interpret instrumentation and testing equipment such as function generators and oscilloscopes.