Senior Systems Software Engineer
The Role
The Senior Systems Software Engineer will be a member of the core team building the Quantum Key Distribution system. The focus is on high-performance Python services on Linux, algorithm optimization and acceleration (also via hardware offload), and the role spans defining software architecture, integrating with FPGA/embedded subsystems, and turning requirements into reliable, observable software.
The Senior Systems Software Engineer leads and co-owns the overall internal QKD software architecture and client-facing software API. By setting engineering standards, mentoring, and unblocking delivery, they ensure predictable releases and a strong execution cadence.
The Responsibilities
The Senior Systems Software Engineer should expect to work in the following activities.
- System architecture
- Leading and co-owning the QKD software architecture: control plane services, key sifting/postprocessing integration, configuration management, monitoring, and external interfaces
- Defining module boundaries and service APIs; evolving the system toward clear data/control-plane separation
- Efficient implementation and hardware/software integration
- Designing and implementing high-performance Python services on Linux (asyncio, WebSockets, NumPy); profiling and tuning for latency and throughput
- Developing, profiling, and optimizing QKD sifting and postprocessing algorithms (signal handling/processing, error correction/information reconciliation, LDPC, privacy amplification) to maximize key rate and minimize end-to-end latency; applying algorithmic improvements and implementation techniques (vectorization, concurrency/async, memory/layout tuning, C/C++ extensions, SIMD/CUDA/GPU/FPGA offload where appropriate)
- Defining and maintaining robust interfaces with embedded/FPGA system components over UART/USB/PCIe/Ethernet; respecting realtime constraints and failure modes
- Guiding downstream system integration (WebSockets/gRPC/REST) and ensuring clear contracts and backward compatibility
- Designing for test – building mocks/simulators and automated test systems
- DevOps
- Building and maintaining CI/CD with Docker and GitHub Actions; automated tests, static analysis, artifact management, and release pipelines
- Establishing observability (structured logging, metrics, tracing) and operational runbooks; improving reliability and debuggability with SLOs/alerts
- Embedding security and crypto hygiene by default: secure transport, secrets management, key handling, and coordination with cryptography stakeholders
- Adding performance benchmarking and regression tracking for key rate and end-to-end latency; integrating profiling/flame graphs into CI and enforcing performance budgets
The Requirements
The Senior Systems Software Engineer is expected to have the following qualifications and experience.
- 5+ years of Python development; 3+ years leading or co‑owning service/system architecture for a hardware‑first product
- Strong Linux async Python (asyncio, WebSockets), concurrency (threads/processes), profiling/tuning
- Proven custom hardware integration (MCU, FPGA) over UART/USB/PCIe/Ethernet
- CI/CD with Docker and GitHub Actions; automated testing, static analysis, artifact management
- Experience with GPU & CUDA acceleration/optimization; SIMD familiarity
- Production observability (logging/metrics/tracing) and incident/debug practices
- Working knowledge of relational/key-value/time-series stores (PostgreSQL/Redis/Prometheus)
- Security by Default mindset: secrets, secure transport, key/crypto hygiene
- Proficiency in written and spoken English
- Ability to be on-site in Munich office several times per week
- Applicants must have the right to work in Germany at the time of application. We do not provide visa sponsorship.
- Must be eligible to obtain and maintain either (a) a U.S. Secret (or higher) security clearance or (b) an EU SECRET (or national equivalent) personnel security clearance. Employment is contingent on meeting applicable government security requirements; eligibility is determined by the competent authorities.
Good to have:
- Experience with QKD systems, cryptography, or high‑rate data pipelines