Open Robotics
Powering the world's robots
hero_pattern.png

Old Job Posting

Advancing robots

About Us

At Open Robotics, we work with industry, academia, and government to support the development, distribution, and adoption of open software and hardware for use in robotics research, education, and product development.

Note: We are in the process of migrating content from our old site. If you don't find what you're looking for here, check there.


Careers

We are seeking motivated, friendly, collaborative individuals with excellent software skills and an interest in robotics. Direct experience with robotics is a plus, but not a requirement. All positions are preferred to be full-time and on site at our office in Mountain View, California. However, we are open to the possibility of part time and offsite opportunities.

Benefits include full health care coverage, a 401k plan with employer contributions, and compensation commensurate to degree and experience.

Open Robotics is committed to building a culturally diverse team and we encourage applications from women and members of other traditionally underrepresented groups in the tech community.

We maintain an open and interactive work environment and take pride in striking a sustainable work/life balance. We develop software in the open and collaborate freely with colleagues at other companies and universities. We approach the engineering and science of robotics systems with a focus on quality and usability, and we aim for our work to have impact far beyond our team. We believe that we’re changing the world with what we’re doing, and we hope that you agree.

To apply, email your resume/CV (PDF preferred), along with any requested documentation (usually code samples and references) to jobs@osrfoundation.org. Please include a cover letter indicating the position(s) you’re interested in and giving context for your application.

Software Engineer: Simulation Physics

Develop and maintain the physics subsystem of the Gazebo robotic simulator. This position involves a mix of c++ software development and modeling of multi-body dynamics (Newton, Euler, and Lagrange). We are looking to improve our software interfaces to support more open source physics solvers and characterize performance and accuracy with benchmark tests.

Roles and Responsibilities

  • Maintain and improve API for abstraction layer between physics engines with interface to standard data formats (URDF, SDFormat)
  • Implement models and controllers in the simulator for robotic applications in multiple domains, including tuning parameters and debugging collision detection and numerical methods in the physics solver
  • Write benchmark tests to characterize simulator performance and accuracy
  • Full lifecycle application development
  • Support, maintain and document software functionality
  • Software testing, code review, and quality assurance

Skills / Job Requirements

  • BS/MS/PhD in Computer Science, Mechanical Engineering, or a related field (compensation commensurate to degree and experience)
  • Mathematics: Linear Algebra, Differential Equations, Numerical Methods
  • Physics: Calculus-based physics (mechanics), Multi-body dynamics
  • Several years of software development experience with C/C++

Nice to Have’s

  • Experience as a user of physical simulation software
  • Experience with Computational Geometry, Feedback Control, Robot Kinematics
  • Programming experience with open source physics solvers (ODE, Bullet, Simbody, DART, Siconos, etc.)
  • Experience developing and maintaining open-source software
  • Extensive knowledge of software development in Linux
  • Experience with software development using Microsoft Visual Studio

Application Material

  • Cover letter, in which you introduce yourself and explain your interest in joining our team
  • Resume/CV
  • Link(s) to code sample(s), ideally in a publicly accessible repository
  • Two references and/or two letters of recommendation

Send your Application Materials to jobs@openrobotics.org

Software Engineer: Robotics

Develop, extend, support, and apply robotics software, including the ROS programming framework and the Gazebo simulator. Join our team as we build the open source tools that are relied upon by the global robotics community, from education and research to product. Help us to apply those tools to solve important problems.

Topics of interest include user interfaces, rendering, 3D modeling, sensor generation, physics simulation performance and accuracy, distributed systems, communications middleware, developer and debugging tools, perception, motion planning, and software packaging and distribution. The ideal candidate is proficient in at least one of these topics, and capable of expanding into others.

Roles and Responsibilities

  • Develop C++ and scripting (Python or Ruby) tools and libraries.
  • Full life-cycle library and application development.
  • Support, maintenance, and documentation of software functionality.
  • Software testing and quality assurance.

Skills / Job Requirements

  • Degree(s) in Computer Science or a related field (recent graduates welcome), and/or equivalent industry experience.
  • Extensive knowledge of C++ and at least one scripting language such as Python or Ruby.
  • Extensive knowledge of software development in Linux.
  • Experience designing and developing large software systems.

Nice to Have’s

  • Experience with ROS, Gazebo, and/or other robotics software.
  • Experience developing and maintaining open-source software.
  • Experience designing and developing user- and developer-friendly software systems.
  • Experience developing for embedded systems, Windows and/or OSX.
  • Experience using common open source libraries and tools, such as OGRE, Qt, and CMake.
  • Experience with physics-based simulation software.
  • Several years of professional software development experience.

Application Material

  • Cover letter, in which you introduce yourself and explain your interest in joining our team
  • Resume/CV
  • Link(s) to code sample(s), ideally in a publicly accessible repository
  • Two references and/or two letters of recommendation

Send your Application Materials to jobs@openrobotics.org

Software Engineer: Web

Develop user friendly, cross platform, lightweight, and mobile interfaces to robotic and autonomous systems. Join our team to help build the next generation of web applications for robotic systems.

Our team has a deep background in embedded devices, robot simulation, and control software. This experience will combine with your knowledge of web technolgies to create a seamless ecosystem of software for robot control, planning, analysis, and simulation.

Roles and Responsibilities

  • Develop web applications to control and coordinate robot simulation for use in competitions, research, development, and testing.
  • Design and prototype web technologies, such as visualization and anaylsis, for use with physical and simulation robotic systems.
  • Support, maintenance, and documentation of sotware functionality.
  • Software testing and quality assurance.

Skills / Job Requirements

  • BS, MS, or PhD in Software Engineering, Computer Science, or related field (recent graduates welcome).
  • Knowledge of distributed databases, scaling services, high throughput and low latency solutions.
  • Knowledge of testing and deploying web applications through cloud providers.
  • Experience designing and developing web applications with public REST interfaces.

Nice to Have’s

  • Experience using common web oriented technologies such as Polymer, Go language, AngularJS, Javascript, or Node.
  • Experience connecting web applications with hardware devices, such as IoT devices and robots.
  • Experience developing and maintaining open-source software.
  • Experience writing Android and/or iOS applications.
  • Experience using open source libraries.
  • Experience with ROS, Gazebo, and/or other robotics software.
  • Several years of professional software development experience.

Application Material

  • Cover letter, in which you introduce yourself and explain your interest in joining our team
  • Resume/CV
  • Link(s) to code sample(s), ideally in a publicly accessible repository
  • Two references and/or two letters of recommendation

Send your Application Materials to jobs@openrobotics.org.

Build/Release Engineer

Develop, extend, and support an extensive and complex build farm that continually handles thousands of build and test jobs on many architectures and operating systems. This position would involve close collaboration with software and build engineers at OSRF and elsewhere to streamline the build/release process and solve issues as they arise. Join the build/release team as we expand to bring the flexibility and power of open-source software to as many computing platforms as possible, while also providing a convenient end-user binary installation experience.

Roles and Responsibilities

  • Develop and support build/release automation on a large-scale build farm
  • Manage buildfarm machines, both physical and cloud-based
  • Develop and support continuous-integration processes on a variety of hardware and software architectures

Skills / Job Requirements

  • Patience and empathy for both upstream software developers and downstream users, and the ability to effectively communicate this through electronic means (email, tickets, etc.)
  • Degree(s) in Computer Science or a related field, or equivalent industry experience
  • Extensive knowledge of Ruby/Python, bash, CMake, and other scripting languages
  • Extensive knowledge and experience with git, Mercurial, and other source code management tools
  • Extensive knowledge and experience with Docker and Jenkins (or similar tools)
  • Extensive deployment experience on at least one platform
  • Experience in test tools (automated tests, coverage, statistics) for C++, Python, and/or Ruby

Nice to Have's

  • Experience building and distributing large collections of open-source software
  • Experience in QA
  • Cross-platform deployment experience on Linux, Mac OS X, and Windows
  • System-administration experience
  • Configuration management using puppet, chef, and similar tools
  • Experience as a Linux maintainer

Application Material

  • Cover letter, in which you introduce yourself and explain your interest in joining our team
  • Resume / CV
  • Link(s) to sample(s) of your work, ideally in a publicly-viewable location
  • Two references and/or two letters of recommendation

Send your Application Materials to jobs@openrobotics.org

Software Engineer

Posting Date Range: July 11th, 2017 - July 26th, 2017

Develop, extend, support, and apply robotics software, including the ROS programming framework and the Gazebo simulator. Building open source tools that are relied upon by the global robotics community, from education and research to product. Applying these tools to solve important problems. Topics of interest include user interfaces, rendering, 3D modeling, sensor generation, physics simulation performance and accuracy, distributed systems, communications middleware, developer and debugging tools, perception, motion planning, and software packaging and distribution.

Position Requirements

Master's degree or foreign degree equivalent in Electrical Engineering, Mechanical Engineering, Aeronautical Engineering, Computer Engineering, or related field.

Special Skills Requirements:

  1. Develop C++, Python, and Ruby tools and libraries
  2. Full life-cycle library and application development
  3. Support, maintenance, and documentation of software functionality
  4. Software testing and quality assurance
  5. Gazebo

Job Location

170 Whisman Rd, Bldg. D, Suite A, Mountain View, CA 94041

Application Material

Mail resume to: Open Source Robotics Foundation, Inc., Attn: HR Services, 170 Whisman Rd, Bldg. D, Suite A, Mountain View, CA 94041

Must reference SE-LP.