Clientmind Recruiting, Inc.
Clientmind Recruiting is searching for a Senior Firmware Engineer for a growing technology company in Greenbelt, MD. This role is responsible for designing, developing, and maintaining firmware and software in various applications. This is a full-time position and will work onsite 3x per week.
Tasks Responsibilities:
Firmware Development:
Design, develop, and maintain embedded firmware for a variety of microcontroller-based systems, ensuring optimal performance, reliability, and power efficiency.
Architecture & Design:
Collaborate in defining system architecture and firmware design, including low-level driver development for sensors and I/O interfaces, hardware abstraction layers, and communication protocols.
Debugging & Troubleshooting:
Identify, diagnose, and resolve complex firmware and system issues, utilizing tools such as oscilloscopes, logic analyzers, and debuggers.
Code Optimization:
Optimize firmware for performance, memory usage, and power consumption while adhering to real-time and safety-critical requirements.
Collaboration & Communication:
Work closely with hardware engineers, software teams, and product managers to ensure seamless integration of firmware with hardware and system-level applications.
Documentation:
Produce high-quality documentation, including specifications, design documents, test plans, and user manuals to support firmware development and maintenance.
Testing & Validation:
Develop and execute unit tests, integration tests, and system-level validation to ensure firmware quality and robustness.
Mentorship:
Provide technical leadership and mentorship to junior and mid-level engineers, guiding them in best practices and solving complex engineering challenges.
Continuous Improvement:
Stay up-to-date with the latest developments in embedded systems, firmware development techniques, and industry trends, and contribute to the improvement of engineering practices.
Requirements Required Qualifications:
Clearance:
US Citizen with Secret level security clearance or ability and willingness to obtain a clearance.
Education:
Bachelor’s or Master’s degree in Computer Engineering, Electrical Engineering, or a related field, or equivalent work experience.
Experience:
Minimum of 8+ years of hands‑on experience in embedded firmware development with a proven track record of successful project execution.
Technical Skills:
Programming:
Strong proficiency in C/C++ programming languages for embedded systems.
Microcontrollers:
Extensive experience with microcontrollers (e.g., ARM Cortex-M, STM32), including hardware-level programming and peripheral interfacing.
RTOS:
Expertise in both bare metal and RTOS (Real‑Time Operating Systems) embedded software architectures.
Communication Protocols:
Experience with UART, SPI, I2C, CAN, Ethernet, etc.
Debugging:
Proficient with debugging tools such as JTAG, oscilloscopes, logic analyzers, and IDE debuggers.
Version Control:
Familiarity with version control systems (e.g., Git, SVN).
Problem‑Solving:
Strong analytical skills with the ability to diagnose and resolve complex embedded system issues.
Documentation:
Ability to produce clear, concise documentation and reports.
Collaboration:
Excellent interpersonal and communication skills, with the ability to work effectively in cross‑functional teams.
Preferred Qualifications:
Advanced Experience:
Experience with FPGA development, low‑level hardware design, or system‑on‑chip (SoC) integration.
Embedded Linux:
Experience programming on custom embedded Linux platforms running on embedded application processors. Familiarity with building custom Linux features and power/speed optimization.
Software Skills:
Experience with scripting languages (e.g., Python) for automation or testing purposes.
#J-18808-Ljbffr
Tasks Responsibilities:
Firmware Development:
Design, develop, and maintain embedded firmware for a variety of microcontroller-based systems, ensuring optimal performance, reliability, and power efficiency.
Architecture & Design:
Collaborate in defining system architecture and firmware design, including low-level driver development for sensors and I/O interfaces, hardware abstraction layers, and communication protocols.
Debugging & Troubleshooting:
Identify, diagnose, and resolve complex firmware and system issues, utilizing tools such as oscilloscopes, logic analyzers, and debuggers.
Code Optimization:
Optimize firmware for performance, memory usage, and power consumption while adhering to real-time and safety-critical requirements.
Collaboration & Communication:
Work closely with hardware engineers, software teams, and product managers to ensure seamless integration of firmware with hardware and system-level applications.
Documentation:
Produce high-quality documentation, including specifications, design documents, test plans, and user manuals to support firmware development and maintenance.
Testing & Validation:
Develop and execute unit tests, integration tests, and system-level validation to ensure firmware quality and robustness.
Mentorship:
Provide technical leadership and mentorship to junior and mid-level engineers, guiding them in best practices and solving complex engineering challenges.
Continuous Improvement:
Stay up-to-date with the latest developments in embedded systems, firmware development techniques, and industry trends, and contribute to the improvement of engineering practices.
Requirements Required Qualifications:
Clearance:
US Citizen with Secret level security clearance or ability and willingness to obtain a clearance.
Education:
Bachelor’s or Master’s degree in Computer Engineering, Electrical Engineering, or a related field, or equivalent work experience.
Experience:
Minimum of 8+ years of hands‑on experience in embedded firmware development with a proven track record of successful project execution.
Technical Skills:
Programming:
Strong proficiency in C/C++ programming languages for embedded systems.
Microcontrollers:
Extensive experience with microcontrollers (e.g., ARM Cortex-M, STM32), including hardware-level programming and peripheral interfacing.
RTOS:
Expertise in both bare metal and RTOS (Real‑Time Operating Systems) embedded software architectures.
Communication Protocols:
Experience with UART, SPI, I2C, CAN, Ethernet, etc.
Debugging:
Proficient with debugging tools such as JTAG, oscilloscopes, logic analyzers, and IDE debuggers.
Version Control:
Familiarity with version control systems (e.g., Git, SVN).
Problem‑Solving:
Strong analytical skills with the ability to diagnose and resolve complex embedded system issues.
Documentation:
Ability to produce clear, concise documentation and reports.
Collaboration:
Excellent interpersonal and communication skills, with the ability to work effectively in cross‑functional teams.
Preferred Qualifications:
Advanced Experience:
Experience with FPGA development, low‑level hardware design, or system‑on‑chip (SoC) integration.
Embedded Linux:
Experience programming on custom embedded Linux platforms running on embedded application processors. Familiarity with building custom Linux features and power/speed optimization.
Software Skills:
Experience with scripting languages (e.g., Python) for automation or testing purposes.
#J-18808-Ljbffr