- Robot type
- Autonomous Vehicle
- Location
- Ann ArborMichiganUSA
- Job type
- Software
- Posted
- Sep 21, 2026
- Salary
- $160,000–$180,000 a year
Senior Software Performance Engineer
Job description
As a Senior Performance Engineer on the Behavior Planning team, you will own latency, throughput, memory utilization, and thread safety for our real-time decision-making pipeline. Working alongside staff roboticists who write high-level autonomy logic, your job is to profile the stack, enforce performance budgets, and build execution guardrails that guarantee deterministic, high-throughput execution.
Prior background in autonomous vehicles, controls, or robotics math is not required . We are seeking engineers obsessed with system performance, low-level execution concepts, and software profiling tools.
May Mobility is transforming cities through autonomous technology to create a safer,…
Job responsibilities
- System Diagnostics: Instrument the behavior pipeline to measure runtime performance, isolating latency spikes, resource contention, and memory inefficiencies.
- Pipeline Optimization: Refactor high-frequency execution loops to maximize cache utilization, eliminate dynamic memory allocations, and reduce tail latency.
- Concurrency Architecture: Re-engineer thread boundaries and synchronization logic to maximize multi-core parallel processing while ensuring thread safety.
- Performance Guardrails: Build automated micro-benchmarks and runtime telemetry into CI/CD pipelines to prevent algorithm developers from introducing performance regressions.
- API Design: Partner with autonomy teams to establish performant, low-overhead C++ module interfaces for new behavioral features.
Job requirements
- Systems & Hardware Knowledge: Deep understanding of CPU cache hierarchies (L1/L2/L3), memory alignment, lock-free concurrency models, and Linux OS thread scheduling.
- Profiling & Diagnostic Tooling: Hands-on experience with Linux profiling toolchains (e.g., Perf, Tracy, eBPF) and dynamic sanitizers (ASan, TSan, Valgrind).
- C++ Engineering: Strong proficiency in modern C++ (C++17/20) with a focus on writing low-overhead abstractions, RAII, and cache-friendly data layouts.
- Benchmarking Methodologies: Familiarity with micro-benchmarking frameworks (e.g., Google Benchmark) and performance-regression testing in continuous integration.
- Domain Background: Experience in performance-critical software environments such as game engines, financial technology, database runtimes, or operating system kernels.
- Degree Requirement: B.S. Degree in Computer Science, Computer Engineering, or an equivalent degree.
- Academic Advancement: Master’s degree or PhD in Computer Science, Computer Engineering, or a related field.
- Professional Depth: At least 5 years of professional experience.
Similar jobs
May Mobility · Software
Manager, Simulation Infrastructure
Ann Arbor, Michigan (Remote OK)
May Mobility · Software
Site Autonomy Engineer
Ann Arbor, Michigan
May Mobility · Software
Manager, Simulation Operations
Remote, USA
May Mobility · Software
Software Engineer II - Data Platform
Ann Arbor, Michigan (Remote OK)
