Software Engineer – Runtime & Virtual Machine Systems
ABS - Alternative Bold Solutions UG (haftungsbeschränkt) · Germany
Apply & track with Apply EdgeSoftware Engineer – Runtime & Virtual Machine SystemsDeutschWir suchen einen Software Engineer mit fundierter Erfahrung in der Systemprogrammierung für die Arbeit an einer experimentellen Ausführungsplattform mit virtuellen Maschinen, Low-Level-Runtimes und deterministischen verteilten Systemen.Die Rolle umfasst den Entwurf und die Implementierung von Ausführungsinfrastruktur, die Integration mehrerer Runtime-Umgebungen sowie den Aufbau von Tooling zur Prüfung von Korrektheit, Determinismus und Fehlerverhalten über verschiedene Ausführungs-Engines hinweg.Deine AufgabenEntwicklung und Integration von Komponenten für virtuelle Maschinen und Runtimes.Arbeit mit RISC-V, WebAssembly (Wasm) und/oder vergleichbaren Ausführungsumgebungen.Entwurf deterministischer Schnittstellen zwischen Ausführungs-Engines und einem gemeinsamen Host/Runtime.Implementierung von Low-Level-Hostfunktionen, Systemaufrufen, State-Zugriffen und Ausführungs-APIs.Aufbau von Differential-Testing- und Fuzzing-Infrastruktur zur Erkennung von Inkonsistenzen zwischen unabhängigen Implementierungen.Untersuchung von Ausführungsabweichungen, Edge Cases und Schwachstellen auf Implementierungsebene.Profiling und Optimierung der Runtime-Performance.Arbeit mit Konzepten verteilter Systeme und Blockchain-artiger Ausführung – Vorkenntnisse im Blockchain-Bereich sind nicht erforderlich.Das bringst du mitSehr gute Programmierkenntnisse in Rust, C++ oder einer anderen Systemsprache.Gutes Verständnis von Betriebssystemen, Compilern, Runtimes oder virtuellen Maschinen.Erfahrung mit mindestens einem der folgenden Themen: RISC-V, WebAssembly, LLVM/Compiler-Infrastruktur, VM- bzw. Interpreter-Implementierung, Emulatoren oder Binary Translation.Verständnis von deterministischer Ausführung und Low-Level-Softwareverhalten.Sicherer Umgang mit unbekannten Systems-Codebasen und Freude an der Arbeit nahe der Ausführungsschicht.Von VorteilErfahrung im Bau oder in der Anpassung einer VM, eines Emulators, eines Compiler-Backends oder einer Runtime.Erfahrung mit Fuzzing, Differential Testing oder Property-Based Testing.Kenntnisse in verteilten Systemen oder replizierten Zustandsmaschinen.Vertrautheit mit Smart-Contract- oder Blockchain-Ausführungsumgebungen.Erfahrung in Security Engineering oder Programmanalyse.Du passt besonders gut zu uns, wenndu Freude an Problemen an der Schnittstelle von Compilern, Betriebssystemen, virtuellen Maschinen, Security und verteilten Systemen hast. Du solltest dich in einem frühphasigen Systems-Projekt wohlfühlen, in dem Experimentieren und Prototyping ein wichtiger Teil der Arbeit sind.Vorkenntnisse im Blockchain-Bereich sind nicht erforderlich.–––––––––––––––––––––––––––––EnglishWe are looking for a Software Engineer with strong systems programming experience to work on an experimental execution platform involving virtual machines, low-level runtimes, and deterministic distributed systems.The role involves designing and implementing execution infrastructure, integrating multiple runtime environments, and building tooling to test correctness, determinism, and fault behavior across different execution engines.What you will work onDevelop and integrate virtual machine and runtime components.Work with RISC-V, WebAssembly (Wasm), and/or similar execution environments.Design deterministic interfaces between execution engines and a shared host/runtime.Implement low-level host functions, system calls, state access, and execution APIs.Build differential testing and fuzzing infrastructure to detect inconsistencies between independent implementations.Investigate execution divergence, edge cases, and implementation-level vulnerabilities.Profile and optimize runtime performance.Work with distributed-systems and blockchain-style execution concepts without requiring prior blockchain expertise.What we are looking forStrong programming skills in Rust, C++, or another systems language.Good understanding of operating systems, compilers, runtimes, or virtual machines.Familiarity with at least one of: RISC-V, WebAssembly, LLVM/compiler infrastructure, VM/interpreter implementation, emulators or binary translation.Understanding of deterministic execution and low-level software behavior.Comfortable reading unfamiliar systems codebases and working close to the execution layer.Nice to haveExperience building or modifying a VM, emulator, compiler backend, or runtime.Experience with fuzzing, differential testing, or property-based testing.Knowledge of distributed systems or replicated state machines.Familiarity with smart-contract or blockchain execution environments.Security engineering or program-analysis experience.You would be a strong fit ifYou enjoy problems at the boundary between compilers, operating systems, virtual machines, security, and distributed systems. You should be comfortable working on an early-stage systems project where experimentation and prototyping are an important part of the job.Prior blockchain experience is not required.