Senior Software Engineer, Multi Robot Coordination at Nimble Robotics
San Francisco, CA 94103, USA -
Full Time


Start Date

Immediate

Expiry Date

30 Nov, 25

Salary

250000.0

Posted On

01 Sep, 25

Experience

5 year(s) or above

Remote Job

Yes

Telecommute

Yes

Sponsor Visa

No

Skills

Robotics, Complex Systems, Database Systems, Programming Languages, Computer Science, Azure, C++, Aws, Python, Docker, Operating Systems, Rust, Kubernetes

Industry

Computer Software/Engineering

Description

QUALIFICATIONS:

  • Bachelors, Masters, or PhD in Computer Science or related field, or equivalent experience
  • 5+ years of industry experience
  • Experience with relevant programming languages such as Rust, Golang, Python or C++ etc.
  • Experience simulating, debugging and analyzing Autonomous systems, Robotics, or other highly complex systems
  • Experience with cloud platforms such as AWS, GCP or Azure
  • Experience with containerization technologies like Kubernetes and Docker
  • Good understanding of database systems such as Postgres, Scylladb.
  • Good understanding of writing unit and integration tests
  • Good understanding with lower-level Operating Systems (Linux)

Develop robot capabilities

  • Develop efficient task planning, multi-agent path planning and multi-robot coordination algorithms to improve robot efficiency and warehouse throughput
  • Develop features for continued automation of warehouse tasks such as picking, packing and sorting
  • Design algorithms to optimally distribute and breakdown orders into robot tasks while minimizing robot congestion
  • Develop multi-robot simulation and 3D visualization software to accurately predict system behavior ahead of new customer launch and warehouse volume ramp up
  • Provide input on all aspects of product development from brainstorming to final delivery. Challenge product requirements and ensure consistency across system behavior by thinking through 2nd and 3rd order effects of proposed changes
Responsibilities

ABOUT THE ROLE:

We are looking for a Senior Software Engineer to join our growing multi-robot coordination team. You will play a critical role in working with our world-class cross-functional team to help develop and build the world’s most advanced robotic systems for the world’s biggest robotics opportunity!

RESPONSIBILITIES:

Architect Software Solutions

  • Craft highly performant, maintainable, scalable and fault tolerant robotics software using Rust programming language
  • Welcome new challenges and work independently across disciplines to both investigate issues and identify technical solutions.

Develop robot capabilities

  • Develop efficient task planning, multi-agent path planning and multi-robot coordination algorithms to improve robot efficiency and warehouse throughput
  • Develop features for continued automation of warehouse tasks such as picking, packing and sorting
  • Design algorithms to optimally distribute and breakdown orders into robot tasks while minimizing robot congestion
  • Develop multi-robot simulation and 3D visualization software to accurately predict system behavior ahead of new customer launch and warehouse volume ramp up
  • Provide input on all aspects of product development from brainstorming to final delivery. Challenge product requirements and ensure consistency across system behavior by thinking through 2nd and 3rd order effects of proposed changes.

Analytical Approach

  • Analyze complex system behavior in production to derive key insights for validating feature impact, pre-evaluating future feature development and understanding performance bottlenecks of the system

Technical Ownership

  • Hands on execution: Own development of algorithms, software infrastructure, coding, testing infrastructure, CI, on-call production support for live production, and debugging on production incidents and performance bottlenecks
  • End to end ownership: Take full ownership of landing large feature initiatives with technical design creation, technical design reviews, and delegating development tasks to others.

Technical Leadership

  • Continuous improvement: Review code developed by other developers and provide feedback to ensure best practices (e.g., style guidelines, checking code in, accuracy, testability, and efficiency). Uphold a high bar.
  • Contribute to existing documentation or educational content and adapt content based on product/program updates and user feedback.
  • Drive feature development and launch. Manage the team’s backlog, support sprint planning, and cross-disciplinary hand-offs with operations, hardware, robot software and cloud logistics software teams.
  • Serve as a mentor for junior engineers. Influence the overall technical roadmap for the team
Loading...