Strong systems programming experience in Python, Rust, or C++. You’ve written real-world state machines, gRPC or protobuf-based APIs, or low-latency services that operate on real or simulated hardware.
Deep familiarity with concurrent and asynchronous programming, including event loops, cancellation semantics, bounded queues, and task orchestration under failure modes. You know how to handle timeouts, retries, and device-level race conditions.
Frontend engineering experience with Svelte, React, or similar frameworks. You’ve built responsive, real-time interfaces and care about state management, testing, and usability. You’ve worked with structured APIs and understand browser performance implications.
You’ve built and debugged protocol-aware interfaces for serial, TCP, USB, I²C, or similar buses. You understand framing, handshake patterns, and flow control when dealing with instruments or embedded systems.
You’ve designed device orchestration layers that can execute long-running procedures, monitor device health, and stream telemetry. You know how to propagate failure states and build for partial availability.
Experience building or contributing to hardware simulation environments, mocking hardware APIs, and running integration tests with virtual devices. You understand the value of simulation not just for testing, but for CI and parallel development.
You’ve worked on telemetry pipelines using structured logs and time-series data, built systems for ingesting and querying device state, and understand the differences between high-frequency signal capture vs sparse control logs.
Experience designing and operating fault-tolerant distributed systems, where retries, idempotency, dead-letter queues, and safe rollback are all table stakes.
You think about observability by default—instrumenting code with structured logs, metrics, traces, and ensuring diagnostics can be surfaced without modifying code post-deployment.
You’ve built for on-prem, reproducible deployment, and understand the challenges of deploying to a real lab where hardware, software, and network conditions are rarely ideal.
Experience with embedded protocols (e.g., serial, I²C, Modbus), device virtualization, or microcontroller firmware.
Familiarity with Kubernetes and containerization in lab settings.
Contributions to systems for robotics, automation, or manufacturing infrastructure.
Apply for this job in 1 click
Skip the repetitive application forms
Install the Base Career Chrome Extension and autofill job applications across major job boards with your profile.
Trusted by over 500,000 job seekers on Base Career