Senior Embedded Development Engineer

Intrepid Control Systems 

📍 Troy, United States 🇺🇸

full-time
senior
110000
on-site
Posted —

Key Skills

embeddedLinuxC++ZynqI2C

Industry

AutomotiveConsumer Electronics

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++.
  • Design and develop hardware solutions using HDL languages such as VHDL, Verilog, etc.
  • 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!