Firmware Engineer (Embedded)

Clientmind Recruiting

  • Greenbelt, Maryland
  • 4 days ago

    Highlights

    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. 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.

    Numbers & Facts

    LocationGreenbelt, Maryland

    Description


    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.

    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 4 years of hands-on experience in embedded firmware development with a proven track record of successful project execution.
     
    • TechnicalSkills:
    • Strong proficiency in C/C++ programming languages for embedded systems.
    • Extensive experience with microcontrollers (e.g., ARM Cortex-M, STM32, i.MX), including hardware-level programming and peripheral interfacing.
    • Expertise in both bare metal and RTOS (Real-Time Operating Systems) embedded software architectures.
      • Experience with communication protocols such as UART, SPI, I2C, CAN, Ethernet, etc.
    • Proficient with debugging tools such as JTAG, oscilloscopes, logic analyzers, and IDE debuggers.
    • 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.

    Similar Jobs

    See more jobs