Senior Embedded Software Engineer

Randstad
Peoria, United States of America
yesterday

Role details

Contract type
Internship / Graduate position
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior
Compensation
$ 125K

Job location

Peoria, United States of America

Tech stack

Board Bringup
Application Frameworks
Automation of Tests
Azure
Bioinformatics
C++
Software Quality
Code Review
Computer Engineering
Continuous Integration
Software Debugging
Software Design Patterns
Linux
Device Drivers
Memory Management
Embedded C
Middleware
Embedded Software
Ethernet
Github
Python
Non-Volatile Memory
Performance Tuning
Software Architecture
Cloud Services
Software Engineering
Software Requirements Analysis
Software Systems
Multithreading
GIT
Information Technology
Software Version Control

Job description

job summary: We are seeking a Senior Software Engineer to play a technical leadership role on an autonomy software team developing the core application development framework used in critical on-board applications for autonomous systems. This position focuses on architecting, implementing, and scaling production-quality autonomy software while mentoring engineers and driving technical direction across projects.

  • The ideal candidate brings deep hands-on experience in embedded software development and can work through requirements definition, including clear documentation.

location: Peoria, Illinois job type: Contract salary: $54 - 60 per hour work hours: 8am to 5pm education: Bachelors

responsibilities:

  • Lead the design, development, and ownership of the application framework and middleware across autonomy applications

  • Define and influence software architecture for scalable, reliable, and maintainable autonomy systems

  • Serve as a technical leader within the team, setting coding standards, best practices, and design patterns

  • Mentor and guide junior and mid-level engineers through design reviews, code reviews, and technical coaching

  • Ensure software quality through automated testing, CI/CD pipelines, performance optimization, and documentation

  • Support requirements generation and architecture decisions and tradeoffs

  • Support functional safety software design and validation process

  • Lead debugging and root-cause analysis for complex issues observed in simulation, HIL, or field deployments

  • Collaborate with cross-functional teams to integrate hardware and software solutions

  • Operate test benches and manage tasks using Azure DevOps

qualifications: Technical Skills Required:

  • Strong expertise in C++ (required); proficiency in Python

  • Proven experience designing and maintaining large-scale, production software systems

  • Deep understanding of Linux-based development, multithreading, memory management, and performance optimization

Desired Skills:

  • Experience in development of device drivers, hardware diagnostics, non-volatile memory interfacing, board initialization, & communication networks such as J1939/CAN/Ethernet

  • Experience with industry-standard tools such as Git, GitHub, and Azure for version control, collaboration, and cloud services

  • Familiarization with core robotics principles

Soft Skills Required:

  • Strong code review, design documentation, and technical communication skills

  • Working within a team that is spread out across multiple locations

Education & Experience Required:

  • Years of experience: 7+ years of professional experience with a strong focus on embedded C/C++ development

  • Degree requirement: Bachelor's degree in Computer Science, Software Engineering, Computer Engineering, or related field or equivalent experience

  • Do you accept internships as job experience: Yes

  • Are there past or additional job titles or roles that would provide comparable background to this role: Senior C++ Software Engineer

Equal Opportunity Employer: Race, Color, Religion, Sex, Sexual Orientation, Gender Identity, National Origin, Age, Genetic Information, Disability, Protected Veteran Status, or any other legally protected group status.

At Randstad Digital, we welcome people of all abilities and want to ensure that our hiring and interview process meets the needs of all applicants. If you require a reasonable accommodation to make your application or interview experience a great one, please contact HRsupport@randstadusa.com.

Pay offered to a successful candidate will be based on several factors including the candidate's education, work experience, work location, specific job duties, certifications, etc. In addition, Randstad Digital offers a comprehensive benefits package, including: medical, prescription, dental, vision, AD&D, and life insurance offerings, short-term disability, and a 401K plan (all benefits are based on eligibility).

This posting is open for thirty (30) days.

,

  • Lead the design, development, and ownership of the application framework and middleware across autonomy applications

  • Define and influence software architecture for scalable, reliable, and maintainable autonomy systems

  • Serve as a technical leader within the team, setting coding standards, best practices, and design patterns

  • Mentor and guide junior and mid-level engineers through design reviews, code reviews, and technical coaching

  • Ensure software quality through automated testing, CI/CD pipelines, performance optimization, and documentation

  • Support requirements generation and architecture decisions and tradeoffs

  • Support functional safety software design and validation process

  • Lead debugging and root-cause analysis for complex issues observed in simulation, HIL, or field deployments

  • Collaborate with cross-functional teams to integrate hardware and software solutions

  • Operate test benches and manage tasks using Azure DevOps

Requirements

Technical Skills Required: - Strong expertise in C++ (required); proficiency in Python - Proven experience designing and maintaining large-scale, production software systems - Deep understanding of Linux-based development, multithreading, memory management, and performance optimization Desired Skills: - Experience in development of device drivers, hardware diagnostics, non-volatile memory interfacing, board initialization, & communication networks such as J1939/CAN/Ethernet - Experience with industry-standard tools such as Git, GitHub, and Azure for version control, collaboration, and cloud services - Familiarization with core robotics principles Soft Skills Required: - Strong code review, design documentation, and technical communication skills - Working within a team that is spread out across multiple locations Education & Experience Required: - Years of experience: 7+ years of professional experience with a strong focus on embedded C/C++ development - Degree requirement: Bachelor's degree in Computer Science, Software Engineering, Computer Engineering, or related field or equivalent experience - Do you accept internships as job experience: Yes - Are there past or additional job titles or roles that would provide comparable background to this role: Senior C++ Software Engineer

Apply for this position