Remote Remote (Country) Full-time

Salvo Software is hiring an OTX Runtime Engineer

About Salvo Software Salvo 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 Overview We 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 Responsibilities OTX Runtime Core • Design 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 Integration • Integrate 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 & Quality • Ship 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.
Job Details
Location Remote
Work mode Remote (Country)
Employment Full-time
Department Firmware Development
Category Embedded
Posted 3 months ago
About company
Salvo Software
Salvo Software is a global powerhouse with a near-shore edge. We specialize in architecting cost-effective digital transformations for a diverse portfolio ranging from high-growth startups to established enterprises.
All jobs at Salvo Software Visit website