Serverobotics

Sr. Embedded Software Engineer, Robotics Platform

USA (remote). Posted a month ago

The role

This person will design, develop, test, and maintain robotics middleware and application frameworks using modern C++ on embedded Linux. They will own platform components from design through deployment across the robot fleet.

What you will do

  • Design, develop, test, and maintain robotics middleware and application frameworks using modern C++ on embedded Linux.
  • Own significant platform components from technical design and implementation through validation, deployment, and operation.
  • Partner with software teams to identify reliability, performance, and developer experience problems.
  • Collaborate with Autonomy and Systems Engineering on risk assessments, failure analysis, and software architecture.
  • Translate system-level safety and reliability requirements into software behavior and verification strategies.
  • Develop instrumentation, benchmarks, logging, tracing, and fleet-level metrics.
  • Diagnose and resolve complex system-level issues involving concurrency, scheduling, and networking.
  • Evaluate technical tradeoffs and contribute to architectural decisions.
  • Lead technical design and code reviews and contribute to engineering standards.
  • Provide technical guidance and mentorship to other engineers.

Required qualifications

  • Bachelor’s degree in Computer Science, Robotics, Computer Engineering, Electrical Engineering, or a related technical discipline, or equivalent practical experience.
  • 5+ years of professional software engineering experience, including significant experience developing production software in modern C++ (C++17 and newer).
  • Experience developing and debugging systems software in embedded Linux environments.
  • Strong understanding of multithreaded programming, concurrency, synchronization, interprocess communication, and systems-level software development.
  • Experience designing software for latency-sensitive, safety-related, real-time, or high-reliability systems.
  • Experience profiling and optimizing embedded software for performance, reliability, and resource utilization.
  • Experience independently owning complex software components through design, implementation, testing, and deployment.
  • Strong troubleshooting and problem-solving skills to diagnose complex issues across software and hardware boundaries.
  • Strong written and verbal communication skills and the ability to collaborate effectively across teams.

Nice to have

  • Experience developing middleware for robotics, autonomous vehicles, or similar complex systems.
  • Experience developing and deploying production software on NVIDIA Jetson or similar embedded computing platforms.
  • Knowledge of Linux internals, scheduling, resource management, device interfaces, and interprocess communication mechanisms.
  • Experience with fault-tolerant architecture, failure-mode analysis, functional safety, or safety-related software development.
  • Experience with distributed systems, networking, RPC frameworks, or serialization technologies such as Protocol Buffers, FlatBuffers, or Cap’n Proto.
  • Experience developing telemetry, observability, health monitoring, or diagnostic capabilities for robotics or distributed device fleets.
  • Experience integrating software with sensors, embedded hardware, or other robotic system components.

About the company

Serve Robotics is reimagining how things move in cities with a personable sidewalk robot. The team consists of tech industry veterans in software, hardware, and design.

Sr. Embedded Software Engineer, Robotics Platform at Serverobotics | JobZoey