Monumental are automating on-site construction with robotics and software. Atrium, our operating system for construction, lets us do everything from building walls with our robots, to designing buildings, managing our robot fleet, analyzing data, and much more. Our stack is broad by necessity: we use Rust for many things from robot middleware to back-end services, TypeScript across our web app and internal tools, and NixOS to manage our servers as well as the computers in our robots.
As we’re deploying more robots and software, we’re always running into new challenges. The problems are often not straightforward: poor connectivity on a construction site because of interference, a memory leak that only becomes an issue after hours of runtime, a robot behaving differently than the simulation. This means a lot of creative problem solving is involved. One of our engineers even traced down a problem to a memory leak in Chrome, which got fixed soon after he submitted a bug report.
Additionally, because we’re scaling our operations, the scope of our software also keeps growing. We’re now building internal apps for scheduling robot operators, planning site logistics and maintenance, and improving manufacturing. To make these applications possible, we need well-architected software and reliable software infrastructure.
To help us build, improve, and maintain our platform, we’re looking for a strong generalist software engineer. Full stack at Monumental is really full stack, from the firmware for our robot’s actuators to our in-house document database. You’ll get a lot of autonomy and the chance to build software that builds actual robots and houses. You’ll also get the chance to collaborate with other engineering disciplines (e.g. electrical, mechanical) to support new robot features or debug issues. For more on how we think about the role, read Bouke’s post on his experience joining Monumental as a software engineer.