A complete application in a minute
Tailored resume and cover letter, ready to send.
Parallel Systems is seeking a Backend Software Engineer II to build train control software for autonomous rail vehicles. You will work on Rust-based backend systems modeling train movement authorities, bulletins, switches, and signals, with growth toward PTC capabilities.
The role emphasizes implementing features end-to-end, reading railroad specs, and contributing to safety-critical software. Prior rail experience is not required, but curiosity and quick learning are essential.
Parallel Systems is pioneering autonomous battery-electric rail vehicles designed to transform freight transportation by shifting portions of the $900 billion U.S. trucking industry onto rail. Our innovative technology offers cleaner, safer, and more efficient logistics solutions. Join our dynamic team and help shape a smarter, greener future for global freight.
Parallel Systems is seeking a Software Engineer II to help build the train control software that lets our autonomous rail vehicles operate safely on the rail network. You'll work on the backend systems, written primarily in Rust, that model how trains are authorized to move: movement authorities, bulletins, switches, and signals, implemented in our system as motion rules and Parallel blocks.
This is a hands-on role with a clear growth path. You'll start by closing edge cases in our existing train control logic, move on to owning new features end to end (from reading railroad specs through technical design, backend, and UI changes), and grow into a core contributor on our path to supporting Positive Train Control (PTC). Prior rail experience is not required; curiosity and a willingness to learn a deep domain are.
After 30 days: You understand the core concepts behind train control (movement authorities, bulletins, switches, and signals) and how they're implemented technically in our system through motion rules and Parallel blocks. You've added support for one or two missing edge cases in train control.
After 60 days: You've added support for a new train control feature, such as movement authorities that are only valid depending on the movement of other trains. You analyzed the requirements from specs, wrote a technical spec covering the necessary backend and UI changes, and implemented them in our codebase. You've also begun learning the concepts behind PTC and reading the associated specs.
After 90 days: You've added support for several new train control features and have a solid understanding of the gap between what's required to support PTC and what exists in our system today.
We are committed to providing fair and transparent compensation in accordance with applicable laws. Salary ranges are listed below and reflect the expected range for new hires in this role, based on factors such as skills, experience, qualifications, and location. Final compensation may vary and will be determined during the interview process. The target hiring range for this position is listed below.
Target Salary Range: $122,000 - $167,000 USD
Parallel Systems is an equal opportunity employer committed to diversity in the workplace. All qualified applicants will receive consideration for employment without regard to any discriminatory factor protected by applicable federal, state or local laws. We work to build an inclusive environment in which all people can come to do their best work.
Parallel Systems is committed to the full inclusion of all qualified individuals. As part of this commitment, Parallel Systems will ensure that persons with disabilities are provided reasonable accommodations. If reasonable accommodation is needed to participate in the job application or interview process, to perform essential job functions, and/or to receive other benefits and privileges of employment, please contact your recruiter.