Nuro logo
Nuro Verified
Autonomous Vehicles, Robotics, AI, Logistics, Last-mile Delivery

Senior Software Engineer, Networking & Real-Time Systems

RemoteRemoteFull TimeSeniorPosted 2 months ago

Is this role right for you?

Upload your resume and get a skill-by-skill breakdown — see exactly where you match, where you're close, and what to highlight. Not a mystery percentage.

Get a tailored resume highlighting what this role needs.

Required skills

  • C++20
  • Go
  • WebRTC
  • Websocket
  • QUIC
  • SRT
  • gRPC
  • Wireshark
  • Linux networking stack
  • socket programming

Nice to have

  • VP8
  • VP9
  • H264/265

Role summary

Nuro is seeking a Senior Software Engineer specializing in Networking & Real-Time Systems to ensure reliable connectivity for self-driving vehicles. This role involves architecting network bonding frameworks across multiple cellular providers, building sophisticated simulations for performance testing, and developing custom congestion control algorithms for low-latency video streaming. You will also collaborate with hardware and embedded teams to optimize the network stack on vehicle gateways. The ideal candidate possesses a deep understanding of the Linux networking stack, C++ expertise, and a strong grasp of networking protocols and their limitations in high-mobility environments. Experience with video streaming frameworks and codecs is a plus.

Who We Are

Nuro believes self-driving vehicles are the most immediate and profound opportunity for AI to drive positive change in the physical world. Safer streets, more time for what matters, and easier access to the world around us, that’s why we’re building a universal autonomy platform: self-driving for all roads and all rides.Founded in 2016, Nuro is a physical AI company developing Level 4 autonomous driving technology for a wide range of vehicles, use cases, and markets. Powered by the Nuro Driver™, our universal autonomy platform enables the global mobility ecosystem to deploy autonomy at scale, from robotaxis and logistics fleets to personal vehicles.With years of real-world deployment experience and a flexible, partner-led business model, Nuro is working toward a future where millions of autonomous vehicles powered by our technology help make everyday life safer, easier, and more connected.Nuro has raised over $2B in capital from Uber, NVIDIA, Google, Softbank, Fidelity, T. Rowe Price, and other leading investors.

About the Role

Operating a vehicle remotely over cellular networks is challenging and critical. You will be responsible for ensuring that our "eyes on the road" never blink. You’ll tackle deep-stack networking challenges—from bonding multiple LTE carriers to designing custom FEC (Forward Error Correction) algorithms that out-perform standard protocols.

About the Work

  • Engineered Connectivity: Architect a network bonding framework to aggregate bandwidth across multiple cellular providers (Verizon, AT&T, T-Mobile) to ensure zero-drop connectivity.
  • Performance Modeling: Build sophisticated ns-3-like simulations to "stress test" our stack against edge cases like tunnel entries, rural dead zones, and network congestion.
  • Optimization: Develop and implement custom congestion control algorithms specifically tuned for high-bitrate, low-latency video streaming.
  • Cross-Functional Leadership: Partner with Hardware and Embedded teams to optimize the network stack directly on our vehicle gateway.
  • Tech We Use
  • Languages: C++20, Go
  • Protocols: WebRTC, Websocket, QUIC, SRT, gRPC
  • Tools: Wireshark
  • About You

  • Systems Thinker: You have a deep understanding of the Linux networking stack, socket programming, and how data moves from the physical layer to the application.
  • C++ Expert: You write performant, thread-safe code and understand the nuances of real-time systems.
  • Protocol Native: You don’t just use TCP/UDP; you understand why they fail in high-mobility environments and how to implement FEC or ARQ to compensate.
  • Experience: 5+ years of industry experience (or a PhD with a focus on Networking/Distributed Systems and 3+ years of industry experience).
  • Bonus Points

  • Video streaming framework experience, e.g., WebRTC
  • Understanding of video codec such as VP8, VP9, H264/265 etc.
  • At Nuro, your base pay is one part of your total compensation package. For this position, the reasonably expected base pay range is between $193,930 and $291,150 for the level at which this job has been scoped. Your base pay will depend on several factors, including your experience, qualifications, education, location, and skills. In the event that you are considered for a different level, a higher or lower pay range would apply. This position is also eligible for an annual performance bonus, equity, and a competitive benefits package.

    At Nuro, we celebrate differences and are committed to a diverse workplace that fosters inclusion and psychological safety for all employees. Nuro is proud to be an equal opportunity employer and expressly prohibits any form of workplace discrimination based on race, color, religion, gender, sexual orientation, gender identity or expression, national origin, age, genetic information, disability, veteran status, or any other legally protected characteristics.

    Sample Nuro interview questions

    • 1

      Build a service discovery mechanism for distributed systems.

      system designmedium
    • 2

      Maximum Depth of an N-ary Tree Find the maximum depth of an N-ary tree. Input: root = [1,null,2,null,3,null,4] Output: 4 Explanation: The tree is essentially a straight line, requiring a traversal that reaches a maximum depth of 4 layers.

      codingmedium
    • 3

      Merge Overlapping Intervals Merge overlapping intervals in an array. Input: intervals = [[1,4],[4,5]] Output: [[1,5]] Explanation: The intervals touch exactly at the 4 mark, so they are successfully merged into a single continuous interval.

      codingmedium
    • 4

      Lowest Common Ancestor on an N-ary Tree Find the lowest common ancestor on an N-ary tree. Input: root = [1,null,2,3,4], p = 2, q = 3 Output: 1 Explanation: Both nodes 2 and 3 are direct children of the root node 1, making 1 the lowest common ancestor.

      codingmedium
    • 5

      Split Array into Consecutive Subsequences Split an array into consecutive subsequences. Input: nums = [1,2,3,4,4,5] Output: FALSE Explanation: The numbers can form [1,2,3,4], but the remaining leftover group [4,5] is too short to form a valid sequence of length 3.

      codingmedium

    Get started to unlock a personalized interview prep pack for this role.

    Ready to apply?
    You'll be redirected to Nuro's application page.

    Similar roles

    See how RiseMe works

    Match, tailor, and prep so you send fewer applications and land more interviews.