Senior Software Engineer (Python)
Role details
Job location
Tech stack
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., * 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
Do you have experience in Software documentation?, Do you have a Bachelor's degree?, * The ideal candidate brings deep hands-on experience in embedded software development and can work through requirements definition, including clear documentation., * 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, * 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
Benefits & conditions
Alaska Remote $54 - $60 an hour - Contract, Pulled from the full job description
- AD&D insurance
- 401(k)
- Health insurance
- Vision insurance
- Dental insurance
- Life insurance
- Disability insurance