- Home
- Jobs
- Software Engineering
- Backend Software Engineer II

Backend Software Engineer II at Parallel Systems
Los Angeles, CAFull-timeSoftware EngineeringPosted about 7 hours ago
Apply with PipelineAbout the Role
<div class="content-intro"><p>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.</p></div><div>
<p><strong><span data-contrast="none">Backend Software Engineer II</span></strong><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></p>
<p><span data-contrast="none">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.</span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></p>
<p><span data-contrast="none">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.</span> <span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></p>
<p><strong><span data-contrast="none">Responsibilities:</span></strong><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></p>
<ul>
<li><span data-contrast="auto">Implement and extend backend features for critical train control applications, adding support for new train control concepts with guidance from senior engineers.</span><span data-ccp-props="{}"> </span></li>
<li><span data-contrast="auto">Develop and maintain system-level software written primarily in Rust.</span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></li>
<li><span data-contrast="auto">Improve the reliability and correctness of existing code by finding and fixing edge cases in train control logic.</span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></li>
<li><span data-contrast="auto">Write and test code that meets our safety, security, and compliance standards.</span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></li>
<li><span data-contrast="auto">Debug and diagnose issues in simulation and on real hardware, escalating complex problems when needed.</span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></li>
<li><span data-contrast="auto">Participate in code reviews and technical discussions and help write technical specs for the features you build.</span><span data-ccp-props="{}"> </span></li>
</ul>
<p><strong><span data-contrast="none">What Success Looks Like:</span></strong><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></p>
<ul>
<li><strong><span data-contrast="auto">After 30 days:</span></strong><span data-contrast="auto"> 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.</span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":0,"335559739":0}"> </span></li>
<li><strong><span data-contrast="auto">After 60 days:</span></strong><span data-contrast="auto"> 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.</span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":0,"335559739":0}"> </span></li>
<li><strong><span data-contrast="auto">After 90 days:</span></strong><span data-contrast="auto"> 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.</span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":0,"335559739":0}"> </span></li>
</ul>
<p><strong><span data-contrast="none">Basic Requirements:</span></strong><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></p>
<ul>
<li><span data-contrast="none">Bachelor's degree in computer science, computer engineering, or a related field, or equivalent practical experience.</span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":0,"335559739":0}"> </span></li>
<li><span data-contrast="none">3+ years of experience in backend or systems-level software development. </span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":0,"335559739":0}"> </span></li>
<li><span data-contrast="auto">Experience in C, C++, Rust, or other systems programming languages. </span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></li>
<li><span data-contrast="auto">Proficiency with Linux environments, low-level system interactions, and memory management. </span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></li>
</ul>
<p><strong><span data-contrast="none">Preferred Qualifications:</span></strong><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></p>
<ul>
<li><span data-contrast="none">Experience with Rust in production or a strong desire to work with Rust. </span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":0,"335559739":0}"> </span></li>
<li><span data-contrast="auto">Experience in safety critical application spaces such as autonomous vehicles, industrial control equipment, or aerospace. </span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></li>
<li><span data-contrast="auto">Experience in or knowledge of rail control systems is greatly preferred. </span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></li>
<li><span data-contrast="auto">Familiarity with cloud-based architectures and containerized environments (Docker, Kubernetes).</span><span data-ccp-props="{"134233117":false,"134233118":false,"335559738":240,"335559739":240}"> </span></li>
</ul>
</div>
<p> </p><div class="content-pay-transparency"><div class="pay-input"><div class="description"><p><span style="font-size: 12px;"><em>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.</em></span></p></div><div class="title">Target Salary Range:</div><div class="pay-range"><span>$122,000</span><span class="divider">—</span><span>$167,000 USD</span></div></div></div><div class="content-conclusion"><p><span style="font-size: 10pt;"><em>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.</em></span></p>
<p><span style="font-size: 10pt;"><em>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.</em></span></p></div>
Related Roles
Full Stack Software Engineer I
Parallel Systems
Los Angeles, CAEmbedded Software Engineer - Vehicle Software
Parallel Systems
Los Angeles, CASoftware Engineer II – Test/Internal Tooling
Parallel Systems
Los Angeles, CASenior Software Engineer
Parallel Systems
Los Angeles, CAEnterprise Marketing Lead
Parallel Systems
Los Angeles, CAPLM/ PDM Systems Architect
Parallel Systems
Los Angeles, CA