Software Engineer II – Test/Internal Tooling
Design, develop, and maintain test frameworks and internal tooling for autonomous rail vehicles. Requires strong experience in Python, C++/Rust, HITL/SITL testing, Linux, Docker, and Kubernetes.
About the job
Responsibilities
- Design, develop, and maintain testing frameworks for on-vehicle software as well as cloud-based services
- Design, develop, and maintain hardware test stands for the vehicle subsystems
- Maintain continuous integration (CI) pipeline, with an emphasis on reliability, speed, and cost effectiveness
- Partner with hardware and software teams to develop useful internal software tooling
- Contribute to regulatory documentation, including software traceability and test protocols
- Provide technical mentorship and guidance to engineers across the testing and validation team
- When appropriate, step into project leadership, ensuring milestones are well-defined and achieved
Requirements
- 3+ years of software development skills and professional experience with both scripting (Python) and systems (C++/Rust) programming languages
- 2+ years of experience building test software and/or internal tooling, with an emphasis on hard tech products in addition to conventional cloud software
- Experience with both hardware-in-the-loop (HITL) testing and software-in-the-loop (SITL) simulations
- Working proficiency with Linux, DevOps, cloud services, and containerization (Docker, Kubernetes)
- Demonstrated success in leading technical design, setting direction, and mentoring other engineers
Preferred Qualifications
- Experience in safety-critical domains such as autonomous vehicles, industrial control, or aerospace
- Knowledge of rail control systems (strong plus)
- Ability to work cross-functionally and balance technical depth with product impact
- Experience with polyglot codebases
Skills
Python, C++, Rust, Linux, Docker, Kubernetes, CI/CD, Hardware-In-The-Loop Testing, Software-In-The-Loop Testing, DevOps
Similar jobs
QA Engineering jobsConduct hands-on maritime testing of autonomous surface vehicles, operating systems aboard vessels, analyzing sortie data, and reporting anomalies to engineering teams. Requires 3+ years of complex-system test or field operations experience, maritime or autonomous-systems exposure, and U.S. security-clearance eligibility.
Owns requirements, architecture, integration, verification, testing, and failure analysis for autonomous flying robots. The role requires 3+ years of experience with reliable electromechanical systems, cross-domain troubleshooting, test development, and Python or SQL-based data analysis.
Build and scale shared test automation frameworks and execution infrastructure for web, mobile, and backend systems. The role requires 5+ years in test automation or platform engineering, strong TypeScript/Node.js skills, and experience with Kubernetes, AWS, and cross-stack testing.
Build and maintain reliable automated tests and infrastructure for a browser-based 3D CAD platform. The role requires 3+ years of web test automation experience, strong TypeScript or JavaScript skills, and expertise integrating end-to-end testing into CI.
Build automated and exploratory testing systems for products, APIs, AI models, and data platforms. The role requires 5+ years of software or QA engineering experience, strong scripting skills, and the ability to evaluate metrics, reliability, and model behavior.