Embedded Software Engineer

Technical Talent Group

Phoenix, AZ

JOB DETAILS
SKILLS
Architectural Design, Booting, Boundary Scan, C Programming Language, Communication Skills, Communications Protocols, Computer Engineering, Computer Firmware, Configuration Management, Continuous Improvement, Debugging Skills, Debugging Tools, Detail Oriented, Documentation, Electrical Engineering, Embedded Software, Embedded Systems, Emulators, Git, Hardware Design, Hardware Performance Testing, Hardware-Software Integration, I2C, Identify Issues, Logic Analyzer, Microcontroller, Operating Systems, Oscilloscope, Printed Circuit Board Design, Product Development, Product Management, Product/Service Launch, Production Support, Requirements Management, Requirements Validation/Verification, Sheet Metal Design, Software Development, Software Engineering, Source Code/Configuration Management (SCM), System Validation, Technical/Engineering Design, Test Plan/Schedule, Testing, USB, Universal Asynchronous Receiver-Transmitter (UART), Validation Testing
LOCATION
Phoenix, AZ
POSTED
5 days ago

About the Role

We are seeking an experienced Embedded Software Engineer with a passion for building innovative products from the ground up. The ideal candidate is hands-on, detail-oriented, and capable of taking a project from initial requirements through full product realization. This is a critical role for engineers who thrive in a fast-paced environment and enjoy solving complex technical challenges on bare-metal embedded systems.

Key Responsibilities

  • Full Lifecycle Ownership: Translate high-level system requirements into robust embedded software solutions — including architecture, design, implementation, validation, and production support.

  • Bare Metal Development: Design and implement firmware in C for microcontrollers without operating systems, ensuring optimal performance, timing accuracy, and hardware integration.

  • New Product Development: Lead software development for new product introductions, creating reliable codebases from scratch that integrate seamlessly with custom hardware.

  • Hardware Collaboration: Work closely with hardware and PCB design engineers to define requirements, validate system interfaces, and debug integration issues.

  • Testing & Validation: Develop test plans, perform hardware bring-up, and execute system-level verification using tools such as oscilloscopes, logic analyzers, and emulators.

  • Continuous Improvement: Participate in design reviews, documentation, and knowledge sharing to ensure code quality, maintainability, and scalability for future designs.

Required Skills & Experience

  • 5+ years of experience developing embedded software in C for bare-metal microcontrollers.

  • Proven track record of taking products from concept to production, including requirements definition, coding, testing, and release.

  • Deep understanding of embedded architectures, interrupt-driven design, and real-time system constraints.

  • Strong debugging and troubleshooting skills using hardware tools (oscilloscopes, JTAG, in-circuit debuggers).

  • Experience with common communication protocols such as SPI, I2C, UART, CAN, and USB.

  • Solid understanding of hardware/software integration principles.

  • Excellent documentation and communication skills.

Preferred Qualifications

  • Experience with ST32 or similar microcontrollers.

  • Familiarity with hardware abstraction layers and bootloader design.

  • Exposure to firmware version control (Git) and configuration management.

  • Bachelor’s or Master’s degree in Electrical Engineering, Computer Engineering, or related field.

About the Company

T

Technical Talent Group