(Embedded) Software Engineer

ABOUT MAIDBOT

Maidbot is a fast-growing robotics company pioneering a revolution in hospitality - the world’s largest industry - by creating robots to handle the dull, dirty and dangerous tasks required of human workers. With rising market demand and Maidbot’s first-mover status, we have already partnered with many of the largest hospitality brands through pilot programs and pre-orders. After completing a successful test with one hospitality company where a dozen of our robots worked alongside hotel staff, we are developing new features and enhancing our current software stack, which ranges from a customer-facing web application to autonomous robotics to state-of-the-art electronics. In our new Austin office you’ll find an army of robots; 3D printers to laser cutters; hypoallergenic dogs; and an endless supplies of hawaiian shaved ice, coffee, and tea!

ABOUT YOU

You are an experienced software engineer with extensive experience developing for single-board computers and AVR or ARM microcontrollers. You will work both individually and in a small team to develop software for our autonomous mobile robots and auxiliary connected devices. You will be able to collaborate with both the robotics software team as well as the hardware, electronics and testing teams. Most importantly, you are passionate about playing a key role in the development of a revolutionary robot.

RESPONSIBILITIES

  • Development of drivers for sensors and actuators onboard our robots.
  • Development of drivers for other internet or Bluetooth connected devices.
  • Development for embedded Linux and microcontroller environments.
  • Development of hardware-software integration and validation tests.
  • Source code management, documentation, verification and validation.

QUALIFICATIONS

  • B.S. or M.S. in Robotics, Computer Science, Electrical & Computer Engineering, or other related field.
  • At least 2 years of C++ development experience for an embedded environment.
  • Experience with Serial, I2C, PWM, and SPI communication protocols.
  • Experience working and developing in a Linux environment.
  • Applicants must be authorized to work in the U.S.

PREFERRED EXPERIENCE

  • Experience with robotics and / or Internet of Things (Iot) applications.
  • Substantial experience with the Robot Operating System (ROS).
  • Experience with cross-compilation toolchains and IoT development ecosystems such as PlatformIO and resin.io
  • Substantial Python development experience.
  • Exposure to Agile software development practices.