Senior DevOps and Infrastructure Developer
Avidbots
Kitchener, ON
Avidbots is bringing robots to everyday life to expand human potential. Its first product to deliver on this vision is Neo - a self-driving floor scrubber. Neo is widely deployed and trusted by the world’s leading facilities and building services companies. Headquartered in Kitchener, ON, Canada, Avidbots is a 100% vertically integrated technology company, and offers comprehensive service and support to customers on four continents.

Our robots make maps of a wide range of indoor areas, small and large (e.g. malls, department stores, grocery stores, hospitals, airports, etc.) using lasers and cameras and then plan the optimal path to cover these areas as fast as possible.

We are looking for a senior devops developer for our Infrastructure team. We are shipping many robots all around the world and we need very strong internal tooling to support reliability in development, build, test, release, production, and product support. These tasks range from writing software to simulate the physical robot operating in a variety of environments to designing and implementing new automatic monitoring and diagnostic systems.

The ideal candidate has 5+ years of software development in some combination of software development and software development planning/management, with emphasis on devops roles. You will be working alongside an experienced team of robotics veterans, software and hardware engineers to help you along the way.

Main Tasks:
Work alongside other software development teams to deliver reliable, well tested software to our robots by improving and automating our internal tools, our development environment, programming practices and libraries

Design and implement fleet management components, automated monitoring solutions, custom data collection tools

Create and refine systems for continuous integration, build systems, automated testing, automated update/deployment, validation and robotics simulation used by our software development, manufacturing, and QA teams

Work on improving the security and robustness of our base OS images, software mirrors and repositories

Help developers prototype new hardware and work with the hardware engineers to identify any problems and spec out new systems requirements

Must Have:
Relevant degree or significant work experience

Extensive experience with Debian/Ubuntu or embedded Linux builds (Yocto, BusyBox)

Intermediate skill or better in C++

Nice to have:
Experience with Python, Rust, Go or NodeJS JavaScript

Experience in designing architecture based on requirements, predicting future pain points, and solving problems that people didn’t even know they had

Prior experience with any of:
Jenkins or other CI/Build systems

Amazon Web Services, Google Compute Cloud or similar

REST APIs

Manufacturing engineering and test automation

ROS or other previous robotics/automation projects

Encryption, network security, server security

Linux Networking (firewalls, dns, tcp/udp, QoS)

Web development