Senior Software Engineer - Robotics

Nimble Robotics9 months ago
San Francisco, CA, United States
Hybrid
Full-time
Junior Level (1-3 years)

Job Description

About the Role

We are looking for a Senior Software Engineer to join our Robotics team. You will help build the application systems, integrations, and orchestration that enable robots to operate reliably in production environments. This role is about creating the software that allows robots to perform useful tasks at scale, from coordinating behaviors to integrating with enterprise systems, working closely with robotics engineers, ML engineers, multi-robot coordination teams and product teams.

Responsibilities

  • Lead design and implementation of complex application components that coordinate robot actions, manage system state, and support operational workflows.
  • Design and maintain reliable integrations with robot platforms, APIs, services, and data systems
  • Drive engineering best practices across the team by producing high-quality, well-tested, and maintainable code.
  • Develop task orchestration and system-level logic that power production robots
  • Collaborate with ML engineers and robotics engineers to integrate robot capabilities into reliable and scalable software systems
  • Work with cross-functional teams to define requirements, design architecture, and ensure system robustness
  • Mentor junior engineers and contribute to improving team processes and technical standards
  • Participate in and often lead design reviews, code reviews, and technical planning sessions
  • Triage product or robotics system issues to ensure reliability of production robotics systems; help diagnose and resolve operational issues when they arise

Qualifications

  • Bachelors, Masters, or PhD: in Computer Science or related field or equivalent
  • Experience: 3 - 7 years of professional software engineering experience
  • Self-learning: Strong self learning and improvement mindset
  • Programming languages: Strong proficiency in at least one of the following programming languages: Rust, Python, C++
  • Software engineering fundamentals: Deep understanding of software engineering fundamentals, backend services, distributed systems, and API design
  • Experience designing scalable systems: Demonstrated experience designing scalable systems and leading complex technical projects
  • Communication skills: Excellent communication skills and ability to collaborate across multi-disciplinary teams
  • On-call rotation: Willingness to support production operations through an on-call rotation

Nice to have

  • Experience with integrating hardware devices, embedded systems, automation systems
  • Exposure to automation environments such as warehousing, manufacturing, or logistics
  • Experience with CI/CD, AWS, Kubernetes, message brokering

Salary: $190,000 - $225,000 a year

The above range is the salary range. This position will also receive generous equity!

Required Skills

Multi-disciplinary Collaboration
API Design
C++
Message Brokering
AWS
Software Engineering Fundamentals
Task Orchestration
CI/CD
Distributed Systems
Kubernetes
Python
Rust
System Architecture