Multiple Software Jobs Available - Avidbots

Senior Software Developer – Robot Systems

About Avidbots

Avidbots is a robotics company with a vision to bring robotic solutions into everyday life to increase organizational productivity and to do that better than any other company in the world. Their groundbreaking product, the Neo autonomous floor scrubbing robot, is deployed around the world and trusted by leading facilities and building service companies. Founded in 2014 and headquartered in Kitchener, ON, Canada, Avidbots is offering comprehensive service and support to customers on 5 continents.

About this Role

We are looking for an experienced and passionate Senior Software Developer to help push the boundaries of our robots. Ideally, you have an exceptional and proven capability of developing software in C++ and OOP. You have made significant architectural contributions to complex systems and have some experience with GUI applications. You thrive with the latest technology while taking pride in well-designed, clean, and reliable code. You will be part of an experienced team of robotics architects and seasoned developers to develop the best robotics solutions for our products.

How you will make a difference

  • Lead and work in a team to create, maintain, and improve our robot software
  • Become a technical expert of your domain and contribute to the overall robot architecture
  • Contribute to improving the development environment and processes

Key Skills and Experience

  • B.Sc. or graduate degree in computer science, engineering or equivalent
  • Development experience in modern C++, ROS and Python
  • 5+ years of professional software development experience
  • Proven experience leading software development projects including mentoring junior members of the project team
  • Proven experience with modern development process based on agile methodology
  • Proficient in architecting, presenting and sharing software solutions to complex robotic challenges
  • Driven individual, passionate, self-starter
  • Medium skill level in a Linux-based OS with command-line
  • Some driver-level development

Nice to Have

  • Have built, designed or brought robots to life before
  • Qt QML, Electron experience
  • Good understanding of the basic principles of physics
  • Experience with Functional Safety concepts

Apply here > BambooHR

Intermediate Software Developer – Robot Systems

About Avidbots

Avidbots is a robotics company with a vision to bring robotic solutions into everyday life to increase organizational productivity and to do that better than any other company in the world. Their groundbreaking product, the Neo autonomous floor scrubbing robot, is deployed around the world and trusted by leading facilities and building service companies. Founded in 2014 and headquartered in Kitchener, ON, Canada, Avidbots is offering comprehensive service and support to customers on 5 continents.

About this Role

We are looking for an experienced and passionate Intermediate Software Developer to help push the boundaries of our robots. Ideally, you have an exceptional and proven capability of developing software in C++ and OOP. You have made software contributions to complex systems and have some experience with GUI applications. You thrive with the latest technology while taking pride in well-designed, clean, and reliable code. You will be part of an experienced team of robotics architects and seasoned developers to develop the best robotics solutions for our products.

How you will make a difference

  • Work in a team to create, maintain, and improve our robot software
  • Become a technical expert of your domain and contribute to the overall robot architecture
  • Contribute to improving the development environment and processes

Key Skills and Experience

  • B.Sc. or graduate degree in computer science, engineering or equivalent
  • Development experience in modern C++, ROS and Python
  • 3+ years of professional software development experience
  • Proven experience with modern development process based on agile methodology
  • Proficient in architecting, presenting and sharing software solutions to complex robotic challenges
  • Driven individual, passionate, self-starter
  • Medium skill level in a Linux-based OS with command-line
  • Some driver-level development

Nice to Have

  • Have built, designed or brought robots to life before
  • Qt QML, Electron experience
  • Good understanding of basic physics principles
  • Experience with Functional Safety concepts

Apply here > BambooHR

Senior Software Developer - Coverage Planning Algorithms for Mobile Robotics

About Avidbots

Avidbots is a robotics company with a vision to bring robotic solutions into everyday life to increase organizational productivity and to do that better than any other company in the world. Their groundbreaking product, the Neo autonomous floor scrubbing robot, is deployed around the world and trusted by leading facilities and building service companies. Founded in 2014 and headquartered in Kitchener, ON, Canada, Avidbots is offering comprehensive service and support to customers on 5 continents.

About this role:

Our robots use an advanced sensor suite to identify their location and then plan optimal paths to cover these areas as fast as possible using path planning algorithms developed in-house. We are looking for an experienced, passionate, quality-driven Senior Software Developer to help our team expand and solidify our set of proprietary path planning algorithms to tackle increasingly complex, varied, and dynamic worlds. You will get to prove the robustness of your algorithms both in simulation and in hardware, across thousands of unique real-life environments of our customers.

Ideally, you have exceptional practical and applied expertise in designing and developing task-oriented path-planning algorithms for mobile robot navigation and mission execution. You have worked with computationally-restricted hardware running efficient code. You love that your software is architected well, handles many possible combinations of inputs, produces outputs that work optimally for every situation, and is flexible for future extension. You understand how your algorithms translate to real-life performance in hardware and have developed solutions that address the numerous constraints that apply to mobile robots operating in highly dynamic conditions, all to your customers’ complete satisfaction.

You will become an integral member of our veteran design and development team working on the cutting edge of robotics and will be able to directly see your contributions furthering robotic integration in malls, airports, and other facilities across the world. You will be supporting the maintenance and improvement of existing robot behaviour as well as leading investigations and prototyping of new algorithms to expand our autonomous capabilities. You will be expected to design, code, document, and test your improvements in simulation and hardware and provide technical guidance and insight into a breadth of autonomous solutions.

How will I make a difference?

  • Advanced degree in computer science, engineering, or equivalent, with particular emphasis on robotics, algorithm design, and/or software development
  • 5+ years of industry experience in mobile robotic path or task planning algorithm development
  • Expertise in an object-oriented language such as C++
  • Driven individual, passionate about robotics, algorithms and algorithm development, self-starter

Key requirements and experience:

  • Comfortable with Linux operating systems (CLI, scripting)
  • Familiarity with ROS; worked on a full navigation stack before
  • Experience with industry-standard software development tools and processes (eg. Git, continuous integration, unit testing)

Nice to have:

  • Software development for personal use - GitHub or open-source contribution references welcomed
  • Image processing, game and graphics programming
  • Exposure to other technical robotics concepts (HRI, SLAM, sensor fusion, firmware, hardware)

Apply here > BambooHR