Terms of Employment • W2 Contract, 3 Months (Possible Extension / Permanent Conversion) • This position is onsite in Baltimore, MD 21230.
Overview & Responsibilities
Our client is seeking an experienced and highly skilled Firmware Engineer to work with others on an innovative, impactful medical device in a dynamic environment. The ideal candidate will have a strong background in developing embedded firmware for Arm Cortex microcontroller units (MCUs) and a solid
understanding of mechatronics, sensor and actuator integration, and communication protocols. This role involves designing, developing, and debugging firmware for systems with multiple sensors and actuators. The candidate will work on cutting-edge projects, translating system requirements into robust and efficient firmware solutions.
Key responsibilities include: • Analyze system requirements and develop firmware solutions for systems involving multiple sensors and actuators. • Write, debug, and optimize C code for embedded Arm Cortex MCUs (working on an STM32 microcontroller). • Assess existing codebases, identify areas for improvement, and fix bugs. • Implement and manage communication protocols such as UART, I2C, and SPI. • Configure and utilize hardware timers, interrupts, and GPIOs effectively. • Work with other engineers to develop and tune feedback control loops for sensor and actuator systems. • Integrate and interface with sensors and actuators such as optical or magnetic angular encoders, temperature sensors, heaters, and Peltiers. • Work closely with hardware teams to ensure seamless integration of firmware and hardware components. • Conduct thorough testing, validation, and troubleshooting of firmware to ensure reliability and performance. • Error detection and handling if/when hardware fails. • Document code, processes, and design decisions clearly and concisely.
Required Skills & Experience • Bachelor's degree in Computer Engineering, Electrical Engineering, or a related field with at least 2 years of relevant experience; OR an engineering degree in another field with at least 5 years of relevant experience. • Strong proficiency in C programming for embedded systems. • Hands-on experience with Arm Cortex microcontrollers (MCUs). • Solid understanding of communication protocols (UART, I2C, SPI). • Proficiency in configuring and using hardware timers, interrupts, and GPIOs. • Experience with angular encoders (optical or magnetic) and feedback control loops. • Familiarity with sensors and actuators, including heaters, Peltiers, and temperature sensors.