DevOps Robotics Engineer
As a DevOps robotics engineer you will architect and implement the infrastructure to support hundreds of robots on construction sites throughout the US. You will create a monitoring and data collection system, as well as a way to safely do OTA software and firmware updates. Beyond that you will work with the software team to support CI/CD pipelines, machine vision training pipelines, and testing. You will play a key role in getting the first large fleet of autonomous systems into construction sites.
YOUR IMPACT:
-
Build out our fleet management system – architect and implement how the robot fleet will be managed. Looking for processes that scale across 100s of robots
-
Bring up of the machines – Create scripts to automate bring up – this involves configuration of components, and testing inputs/ outputs.
-
Over the air updates – architect and implement how the robot fleet with do OTA updates for both software and firmware. Design a way for automatic recovery in case of failed update. Understand security and encryption for over the air update
-
Fleet support – Create a logging and ticket tracking system that provides the information required for support teams to get systems back up and running. Proactively flags issues with systems not behaving as expected.
-
Establish a RobotVPN for addressing in field issues and teleoperation.
-
Create a data management architecture for hardware systems in limited network environments – which data should be saved, prioritized, cached for upload, etc…
-
Build a CI/CD pipeline -Building systems to validate and generate release software for testing on robots. Lifecycle testing and hardening.
-
Languages - python, C++
-
C++ infrastructure experience: Understanding the challenges of deploying a fleet at scale and be able to design software to support these challenges. Understanding robot behavior and support diagnosing issues and reporting to responsible developers.
-
Experience with Linux infrastructures, database SQL, CI/CD tools, systemd, scripting such as JavaScript
-
Design test cases and run testing of the robotic system. This includes running the hardware through sets of tests to ensure performance and reliability. Test for regressions between software and firmware releases.
-
Other duties as assigned.
-
Regular attendance is required.
MINIMUM QUALIFICATIONS:
-
Accredited Bachelor’s degree in Engineering or related field with five (5) or more years of related experience.
STANDOUT QUALIFICATIONS:
-
Previous experience with software development, infrastructure development, or development and operations for Hardware/Physical system.
-
Proficient in C++ and Python
-
Familiarity with C#
-
Experience with Scrum/Kanban/SAFe, Agile workflow methodologies
-
Experience with Google Cloud Build and/or AWS for CI/CD