Mid-Level Embedded Software Engineer

General Dynamics Mission Systems, IncScottsdale, AZ
2d$112,924 - $125,275

About The Position

We are seeking a skilled and motivated Mid-Level Embedded Software Engineer to join our dynamic team. The ideal candidate will have a solid foundation in computer engineering, computer science, or electrical engineering, with hands-on experience in embedded systems development. This position offers the opportunity to work on cutting-edge technologies, including FPGAs, Linux-based environments, and CI/CD pipelines. We are looking for someone with a strong technical background, a proactive attitude, and the ability to contribute independently to complex embedded systems projects.

Requirements

  • Bachelor’s degree in Computer Engineering, Computer Science, Electrical Engineering, or a related field.
  • 3-5 years of professional experience in embedded systems development.
  • Proficiency in C/C++ programming for embedded systems, including expertise in build tools like make.
  • Strong experience with Linux/Unix environments, including shell scripting and terminal-based workflows.
  • Hands-on experience debugging and troubleshooting embedded systems, including hardware/software interactions.
  • Extensive familiarity with tools such as Yocto, Buildroot, or Petalinux for developing board support packages (BSPs).
  • Strong analytical and problem-solving skills, with the ability to work independently and collaboratively.
  • Effective communication skills and the ability to contribute to team discussions and technical reviews.
  • Strong understanding of direct interfacing of software through hardware (Bare-metal device drivers, FSBL).
  • Able to interpret vendor part datasheets for software development/debugging.

Nice To Haves

  • In-depth knowledge of FPGA technologies and their applications in embedded systems.
  • Experience working with AMD Versal or ZynqMP FPGAs.
  • Familiarity with Intel x86 chip architectures.
  • Experience configuring and using device trees in embedded systems.
  • Working knowledge of CI/CD principles and tools, such as Jenkins or GitLab CI/CD.
  • Proven ability to contribute to the architecture and design of embedded systems.

Responsibilities

  • Design, develop, configure, and integrate embedded software using tools such as Yocto, Buildroot, or Petalinux.
  • Collaborate with cross-functional teams to architect, implement, and test FPGA-based systems.
  • Develop, debug, and optimize software in C/C++ for embedded systems, including managing complex build environments with tools like make.
  • Lead and contribute to projects involving AMD Versal and ZynqMP FPGAs, as well as Intel x86 chip architectures.
  • Develop and maintain Continuous Integration/Continuous Deployment (CI/CD) pipelines to streamline embedded software development.
  • Work extensively within Linux/Unix environments, including shell scripting, to support embedded systems development.
  • Debug and troubleshoot complex interactions between software and hardware, ensuring optimal system performance.
  • Provide technical guidance and mentorship to junior engineers and interns.

Benefits

  • Flexible schedules with every other Friday off work, if desired (9/80 schedule)
  • Competitive benefits, including 401k matching, flex time off, paid parental leave, healthcare benefits, health & wellness programs, employee resource and social groups, and more
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service