Principal Embedded Software Engineer Job Description

Principal Embedded Software Engineer Job Description Template

Our company is looking for a Principal Embedded Software Engineer to join our team.

Responsibilities:

  • Keep abreast of the latest technology trends & best practices, and understand when might be the appropriate time to adopt them;
  • Create maintainable, well documented code and tests; participate in code reviews; troubleshoot issues; optimize system performance;
  • Working directly with project managers and product owners to ensure that current and future efforts are aligned with customer and market needs;
  • Work in cross-functional teams to deliver product-level features and requirements;
  • Advise and mentor other engineers with embedded software development;
  • Support software QA and optimize I/O performance;
  • Design, develop, code, test and debug system software;
  • Perform hands-on debug of the final implementation on hardware;
  • Guide and implement strategies for unit-level test and validation;
  • Assist with defining and maintaining development standards and guidelines;
  • Assess third party and open source software;
  • Design and implement software of embedded devices and systems from requirements to prototype and customer deployment;
  • Timely deliver reliable, manufacturable, and cost-effective solutions for productization;
  • Review code and design;
  • Interface with hardware design and development.

Requirements:

  • At a minimum must have previously held an Active TS/SCI Clearance within the last 2 years;
  • Current active TS/SCI (access) security clearance;
  • Highly proficient in low-level C and C++ development, including bare-metal targets;
  • Experience with design according to functional safety standards (ISO 26262);
  • Experience with Xilinx silicon-on-chip tools and development;
  • Highly proficient in Python for high-level automation;
  • Some experience developing signal processing systems;
  • MS or PhD in Electrical Engineering, Computer Science, or related field;
  • Experience using Xilinx FPGAs, SoCs, and their corresponding toolchains;
  • Hardware integration experience;
  • Experience with Python;
  • Experience with industry standard networking protocols (Ethernet, IPv4, UDP);
  • Hands-on experience with debugging tools used directly on hardware;
  • 10+ years of technical experience in software development for embedded systems;
  • Experience with automotive software development processes (ASPICE, MISRA, etc.).