Sr. Embedded Software Engineer

Back to Job Listing

Job Description

Are you an Automotive Embedded Software Engineer with an eye for detail? Do you have experience designing, testing, and releasing complex and innovative software for vehicle controls applications? At Pi Innovo, you will apply your technical creativity, deliver custom embedded real-time control solutions, and solve technical challenges on diverse and exciting projects.  Pi Engineering is responsible for the full development lifecycle from first customer interaction through system specification, design, system testing, and final customer delivery.

In this role, you will be engaged in:

  • Planning and executing embedded software designs for volume manufacture and prototyping
  • Performing activities throughout the software product lifecycle including:
    • Capturing and specifying requirements capture
    • Designing and analyzing software architecture and hardware-software interfaces
    • Evaluating third-party software components and tools, experimenting with evaluation boards, and prototyping solutions
    • Creating software verification plans
    • Implementing, testing, and debugging software
  • Identifying, proposing and implementing improvements and enhancements to Pi’s OpenECU family of products:
    • Diagnostics capabilities
    • Communications interfaces (including CAN, LIN, and Ethernet)
    • Bootloaders
    • Operating system design
    • Low-level device drivers
    • Microcontroller eTPU functions
    • User interfaces, including C-APIs, Simulink blocks, code generation scripts, and integration with 3rd-party tools
  • Providing coaching and technical mentoring to junior engineers

Job Requirements

The skills, knowledge, and abilities Pi looks for in our Senior Embedded Software Engineers include:

  • A Bachelor’s degree in Computer Science, Software Engineering, or Electrical Engineering; a Master’s degree is highly desirable
  • Five (5) or more years of experience in vehicle-related embedded software development and the full software product development lifecycle
  • Three (3) or more year of experience developing low-level device drivers, embedded operating systems (RTOS), and bootloaders
  • Expertise in writing, debugging and testing embedded C software
  • Experience with auto-generated software (MATLAB/Simulink)
  • Experience with CAN communications and diagnostics protocols (CCP, J1939, UDS, OBDII, etc.)
  • Experience with vehicle development and calibration tools (CANalyzer, CANape, ATI Vision, ETAS INCA)
  • Experience with hard-in-the-loop (HIL) simulation, control systems design and tuning, vehicle dynamics modeling, in-vehicle evaluation and calibration, and/or engine controls strategies
  • Knowledge of Python, .NET, assembly and/or C# is a plus, as are familiarity with ISO 26262, PSpice and CMMI
  • Prior work experience in a customer-facing technical role is a big plus, as is experience leading projects
  • Experience with software integration, as well as the ability to work closely with hardware and systems application engineering teams is required
  • Experienced in launching software into production
  • Excellent communication (verbal, written) and time management skills are key

We seek motivated, ambitious engineers who genuinely enjoy helping customers come up with solutions to their challenges. Pi provides a company culture of collaboration, respect, and innovation, and a place to work with passionate people doing what they love.

Email your resume for Sr. Embedded Software Engineer