OTX Runtime Engineer at Salvo Software | Torre
warning

Heads-up

The job you’re trying to post already exists in Torre:

OTX Runtime Engineer

You'll architect and ship a production-grade OTX runtime, driving global digital transformation.
Emma highlights
This highlight was written by Emma’s AI. Ask Emma to edit it.
Full-time

Legal agreement: Employment

Provide your expected compensation while applying
location_on
Remote (for United States residents)
Match
skeleton-gauges
You have opted out of job matches in .
To undo this, go to the 'Skills and Interests' section of your preferences.
Review preferences
Shared by
Emma of Torre.ai
about 2 months ago

Requirements and responsibilities


About Salvo SoftwareSalvo Software is a global firm that provides cost-effective software solutions to guide enterprises and startups through digital transformation. We build products that sit at the intersection of automotive diagnostics, embedded systems, and modern software architecture — shipping tools that real engineers rely on in production environments around the world.Role OverviewWe are looking for a Senior OTX Runtime Engineer to design and ship a production-grade runtime for the ISO 13209 Open Test sequence eXchange (OTX) standard. This is a deeply technical, high-ownership role at the core of Salvo's diagnostic toolchain.You will own the full runtime stack — from XML deserialization and the object model through the type system, evaluator, executor, and extension framework — and integrate it with a D-Server layer that speaks ODX, UDS, and the D-PDU API. The work demands equal fluency in language-implementation concepts, Kotlin Multiplatform engineering, and automotive diagnostic protocols.Key ResponsibilitiesOTX Runtime CoreDesign and implement an ISO 13209-compliant OTX runtime, covering the full object model, deserializer, and type system.Build a tree-walking interpreter for the OTX XML-based DSL, including AST design using sealed/algebraic data types.Implement a variable scoping and parameter binding engine faithful to the OTX specification.Develop the evaluator and executor pipeline, ensuring correct handling of procedural flows, conditions, loops, and exception handling as defined in ISO 13209-1/2.Design and implement the OTX extension framework to support runtime-loadable extensions.Handle streaming XML parsing with namespace resolution and xsi:type polymorphic deserialization.D-Server & Diagnostic IntegrationIntegrate the runtime with a D-Server layer: implement ODX parsing, service catalog management, and UDS request/response encoding and decoding.Implement built-in OTX extensions including DiagCom adapter, PDU-to-J2534 adapter, and log:/file:/str:/ext:/flash:/even: extensions.Develop diagnostic application logic targeting J2534 and D-PDU API (ISO 22900-2) diagnostic interfaces.Support flash programming workflows across multiple OEM configurations.Kotlin Multiplatform & QualityShip the runtime as a Kotlin Multiplatform (KMP) library targeting JVM and native platforms.Write robust concurrent code using Kotlin Coroutines and Mutex primitives; debug and resolve production deadlocks.Define and maintain a comprehensive test suite covering OTX conformance, edge cases in diagnostic protocol encoding, and runtime stability.Participate in design reviews, contribute to internal documentation, and mentor team members on OTX and diagnostic protocol topics.RequirementsMust-Have ExperienceShipped an OTX-compliant runtime to production in any language.Participated in development of a D-Server diagnostic interface, including ODX parsing and executing UDS services across multiple OEMs.Deep, subject-matter-expert knowledge of ISO 13209-1/2 (OTX) and ISO 22901-1 (ODX).Shipped at least one Kotlin Multiplatform (KMP) library to production.Production experience debugging concurrency issues using Kotlin Coroutines and Mutex.Implemented a tree-walking interpreter for an XML-based DSL.Designed ASTs using sealed or algebraic data types.Handled streaming XML parsing with namespace resolution and xsi:type polymorphism.Strong command of Kotlin; candidates with equivalent depth in Java, Scala, or C# will also be considered.Diagnostic Protocol KnowledgeSubject-matter expert in UDS (ISO 14229), ISO-TP (ISO 15765), and CAN/CAN-FD (ISO 11898).Experience developing diagnostic applications targeting J2534 and/or D-PDU API (ISO 22900-2).Working knowledge of KW2000 and OBD-II (SAE J1979).Experience with flash programming is a strong plus.Nice to HaveHands-on experience with commercial OTX authoring tools (e.g., ETAS EDIABAS OTX Studio, SOFTING).Familiarity with commercial ODX authoring tools (e.g., Mazel & Quack OTX/ODX Editor).Experience with heavy-duty vehicle diagnostics (SAE J1939).Background in automotive OEM or Tier-1 supplier environments.
Optionally, you can add more information later (benefits, pre-screening questions, etc.)
check_circle

Payment confirmed

A member of the Torre team will contact you shortly

In the meantime, continue adding information to your job opening.