1

Junior Embedded C Developer Jobs in Michigan (NOW HIRING)

Embedded Software Engineer

Warren, MI

$123K - $162K/yr

Develop embedded (C/C++/Rust) software for vehicle software-update functions and enhancements using ... Collaborate with System Engineers to refine understanding of requirements and identify ...

Embedded Software Engineer

Warren, MI ยท On-site

$123K - $162K/yr

Develop embedded (C/C++/Rust) software for vehicle software-update functions and enhancements using ... Collaborate with System Engineers to refine understanding of requirements and identify ...

Software Engineer III

Novi, MI ยท On-site

$90 - $120/hr

Software Engineer III Indirect Auburn, MI, US 5 days ago Requisition ID: 1547 HL Mando America ... Work on writing embedded code in C language, developing MATLAB models for Auto Coding, and working ...

Embedded Software Engineer

Allen Park, MI ยท On-site

$119K - $157K/yr

Stefanini is looking for an Embedded Software Engineer (Allen Park, MI) For quick apply, please ... Skills in embedded C, MATLAB integration testing, low-level code debugging, LIN, CAN, diagnostics ...

Embedded Software Engineer

Rochester, MI ยท On-site

$121K - $159K/yr

Develop control algorithms for embedded controllers Implement control algorithms using Assembly and C programming languages Develop MISRA C compliant code Assist in developing hardware/software test ...

Showing results 41-60

Junior Embedded C Developer information

What does a junior embedded C developer do?

A Junior Embedded C Developer assists in designing, developing, and testing software for embedded systems using the C programming language. They often work on microcontrollers and hardware devices, writing code that interacts directly with hardware components. Their responsibilities may also include debugging, code optimization, and supporting senior developers on larger projects. This role is ideal for those with a background in computer science or electronics and a strong interest in low-level programming.

What are some common challenges faced by junior embedded C developers when transitioning from academic projects to real-world embedded systems work?

Junior Embedded C Developers often find that working on commercial embedded systems introduces complexities not encountered in academic settings. Common challenges include understanding and working with hardware constraints, such as limited memory or processing power, and integrating with existing codebases and legacy systems. Additionally, juniors may need to quickly adapt to rigorous testing and debugging tools specific to embedded environments, as well as collaborating closely with hardware engineers and cross-functional teams. Overcoming these challenges helps build a strong foundation for future advancement in embedded systems development.

What are the key skills and qualifications needed to thrive as a junior embedded C developer?

To thrive as a Junior Embedded C Developer, you need a solid understanding of C programming, embedded systems concepts, and a relevant degree in computer science or electronics. Familiarity with microcontroller platforms (like ARM or AVR), debugging tools, and version control systems such as Git is typically required. Strong problem-solving skills, attention to detail, and effective teamwork are crucial soft skills in this role. These competencies enable the development of reliable embedded solutions and efficient collaboration within engineering teams.

What is the difference between Junior Embedded C Developer vs Embedded Software Engineer?

CriteriaJunior Embedded C DeveloperEmbedded Software Engineer
Required CredentialsAssociate's/Bachelor's in Electrical Engineering, Computer Science, or related fieldBachelor's or higher in Computer Engineering, Electrical Engineering, or related field
Work EnvironmentEmbedded systems development, hardware integration, low-level programmingEmbedded systems, firmware development, software optimization
Employer & Industry UsageConsumer electronics, automotive, IoT devices, industrial automationAutomotive, aerospace, medical devices, consumer electronics
Common Search & Comparison IntentYesYes

While both roles involve embedded systems and C programming, a Junior Embedded C Developer typically focuses on basic firmware development and hardware interfacing under supervision. An Embedded Software Engineer often handles more complex software design, optimization, and integration tasks, requiring more experience and technical expertise.

What cities in Michigan are hiring for Junior Embedded C Developer jobs?

Cities in Michigan with the most Junior Embedded C Developer job openings:

Infographic showing various Junior Embedded C Developer job openings in Michigan as of July 2026, with employment types broken down into 78% Full Time, 8% Part Time, 1% Temporary, 12% Contract, and 1% Nights. Highlights an 81% Physical, 4% Hybrid, and 15% Remote job distribution.

Senior Embedded Development Engineer

Intrepid Control Systems

Troy, MI โ€ข On-site

$110K - $130K/yr

Full-time

Medical, Dental, Retirement, PTO

Re-posted 12 days ago


Job description

Description

General Description:

The Senior Embedded Development Engineer is responsible for the design, development, integration, testing, and support of advanced embedded systems used in Intrepid Control Systems products. This position works closely with the Performance Hardware Application Team and other engineering groups to develop customer-facing solutions involving high-speed automotive communication and data logging technologies, including MultiGBASE-T1, 100/1000BASE-T1, 10BASE-T1S, SerDes camera, and other high-bandwidth interfaces.


Skills:

  • Strong proficiency in embedded C and C++ design, development, and debugging.
  • Strong knowledge of embedded systems architecture and hardware/software integration.
  • Strong working experience with embedded Linux build environments, system debugging, and device driver development.
  • Proficiency with AMD/Xilinx Zynq MPSoC, Zynq platforms, Vivado, and Vitis.
  • Strong understanding of communication protocols and interfaces, including I2C, SPI, UART, Ethernet, AXI-Full, AXI-Stream, and AXI-Lite.
  • Strong troubleshooting and analytical skills.
  • Ability to perform hardware-level debugging.
  • Ability to work independently and collaboratively in a team environment.
  • Strong written and verbal communication skills.
  • Strong organizational and project management skills.
  • Ability to create clear, maintainable, and well-documented code and technical documentation.

Preferred Qualifications

  • 4+ years of experience with hybrid software/FPGA systems.
  • Experience with embedded Linux design and development, including Linux kernel configuration, driver development, U-Boot, Petalinux, and/or Yocto.
  • Experience with NVMe and boot process configuration.
  • Experience designing and implementing high-speed, high-bandwidth systems.
  • Experience with PCIe.
  • Experience integrating AMD/Xilinx IP cores.
  • Familiarity with PCB design tools such as Altium for schematic review and validation.
  • Experience with scripting languages such as TCL, Bash, and Python.
  • Familiarity with automotive technologies and interfaces, including CAN, LIN, Ethernet, audio, and video.
  • Experience with IO planning for new hardware designs.
  • Experience with version control systems such as Git.

Requirements

Essential Job Functions:

  • Design, develop, debug, and maintain embedded software applications using C and C++.
  • Develop solutions using AMD/Xilinx Zynq MPSoC and Zynq platforms, along with associated development tools such as Vivado and Vitis.
  • Participate in product definition, block diagram development, system architecture, and technical design reviews.
  • Lead projects through concept, implementation, testing, validation, and release.
  • Perform hardware and software integration, troubleshooting, and debugging.
  • Utilize equipment such as oscilloscopes, logic analyzers, and protocol analyzers to diagnose and resolve issues.
  • Design and implement systems utilizing communication protocols and interfaces, including I2C, SPI, UART, Ethernet, AXI-Full, AXI-Stream, and AXI-Lite.
  • Develop and review high-level system architectures and low-level software designs.
  • Create and maintain technical documentation, code documentation, test procedures, and design specifications.
  • Ensure work complies with project schedules, company standards, and applicable industry requirements.
  • Support manufacturing, validation, customer support, and issue resolution activities as needed.
  • Provide technical guidance and mentorship to less experienced engineers.
  • Collaborate effectively with cross-functional teams while independently managing assigned responsibilities.
  • Maintain high standards for code quality, readability, and version control practices.
  • Participate in continuous improvement efforts related to engineering processes and product development.

Minimum Requirements:

  • Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field.
  • Minimum of 5 years of experience in embedded software design, development, and debugging using C/C++.
  • Minimum of 3 years of experience with AMD/Xilinx Zynq MPSoC or Zynq-based systems.
  • 5+ years of embedded software development experience, including a minimum of 3 years of embedded Linux build and debugging experience.
  • Experience developing and debugging embedded systems from concept through release.
  • Experience with hardware-level debugging using oscilloscopes, logic analyzers, and similar tools.
  • Experience working with embedded communication protocols and bus interfaces.
  • Ability to reliably work on-site in Troy, Michigan.

Salary:

Based on experience: $110K - $130K annually


Benefits:

401(k) matching

Medical

Dental

Paid Time Off

Holidays

Internal Office Events

AND MORE!