Senior Software Engineer

over 3 years ago
Full time role
Woburn, MA, US... more
Woburn, MA, US... more

Job Description

Root AI is a robotics company dedicated to solving the biggest challenges facing the indoor farming industry. Today’s industrial greenhouses are modern marvels of efficiency and sustainability. These farms are making fresh, locally grown, and nutritious produce available year-round. We’re on a mission to create advanced robotic systems that can see, care for, and harvest these crops.

We are an early stage start-up assembling a foundational team of passionate and talented professionals. Join us as we build the future of farming.

As a small startup, everything we do has to be exceptional. Every member of the team has a critical role, and every decision we make matters, so we hire with that in mind. We value diversity, not just because it takes a team with unique perspectives and skills to solve the worlds hardest problems, but because we truly believe it’s the right thing to do.

Responsibilities

  • Develop and maintain mobile robot platform software. Our mobile robot is not connected to the cloud, so all robot processing is done onboard!
  • Develop and maintain core software systems related to robotic operation: autonomy, perception, state estimation together with other software team members
  • Set up best-practices in devops for maintaining code quality and code deployment using continuous integration / continuous delivery
  • Develop and maintain cloud data ingestion pipelines
  • Develop and maintain on-robot logging and debugging infrastructure
  • Keep up-to-date with best practices across all development areas, and apply the right-sized solution for each problem
  • Participate and conduct design reviews with an interdisciplinary team

Core Skills

  • Ability to communicate about systems at multiple levels of abstraction – high-level and nitty-gritty
  • Strong analytical thinking and organizational skills, with attention to detail and communication
  • An understanding of bug triage: which bugs can wait, and which bugs need to be fixed immediately
  • 3+ years C++ (C++11 or later) and associated development and testing toolchains
  • 3+ years Python or other scripting language
  • Know your way around a Linux shell
  • Version control (we use git) and code review practices
  • BS or MS in CS, EE, EECS, or related field

Familiar with at least one of the following

  • C++ algorithm frameworks and associated best practices (e.g. boost, Eigen, PCL, OpenCV)
  • Embedded GPU frameworks and toolchains (e.g. TensorRT, CSI cameras, ARM cross-compilation)
  • Continuous integration / continuous deployment tools and best practices
  • Ethernet communication protocols (e.g. one of ZeroMQ, MQTT, RPC)
  • Virtualization (e.g. Docker, vagrant)
  • Deployment infrastructure (e.g. supervisor, Ansible)
  • AWS and associated tools (in particular EC2 and S3) or equivalent with Azure, Google Cloud, or other cloud infrastructure provider
  • Database selection and table design (e.g. Postgres vs. NoSQL)

 

Similar jobs