Software Engineer, Controls



Software Engineering
Amsterdam, Netherlands
Posted on Tuesday, May 21, 2024
Monumental is automating on-site construction with robotics and software. Our mission is to make construction primarily software-defined and work towards a future where beautiful, bespoke buildings are built within a single day with minimal labor.
We’re a small team of generalist engineers that spans a wide spectrum of expertise (mechanical, electrical, software and machine vision) coming from companies like Palantir, Qualcomm, Dyson and Shopify.
We're still in the first days of building the company and this is a unique opportunity to be an early employee in a high-growth, high ambition startup environment. From Day 1, You’ll be able to work with an experienced founding team surrounded by top-tier investors.
You can read a bit more on why we believe you should spend your time working on construction, learn more about our vision and about the company.
About you and this role
We’re looking for a software engineers to join our team. Someone with deep knowledge of both software engineering and controls engineering. Help us bring our robots to life and join our mission to bring automation to the construction industry to create affordable, beautiful, high quality housing for everyone.
At Monumental, we’re building an operating system to make on-site construction possible with robotics. Our software stack allows us to do everything from 3d reconstruction (through photogrammetry) of a construction site, design 3d structures that will be built, up to the supply chain, path planning, and inverse and forward kinematics of our robots.
Some of the type of challenges you might be working on:
1. Designing and modeling a localization and control system for our autonomous ground vehicles that can move around a construction site
2. Designing or optimizing specific control loops, e.g. for mortar flow control through different sensors (e.g. a load cell, or time-of-flight sensors)
3. Design and optimize new motions for a 4DOF XYZ-style crane or explore adding a new degree of freedom to the system
4. Implementing production-level code at whatever level makes sense (embedded firmware in C++, or our application layer in Rust) necessary to bring your algorithms to life.

What you'll be responsible for

  • Design and implementation of controls algorithms, both prototype quality for early experiments and production quality for real-world use. We expect you to write C, C++, Rust or Python code, not doing simulations in Matlab.
  • Design and implement localization algorithms (e.g., visual-inertial SLAM) and ensure we use the right sensors and logic to figure out where we are in world-space, using sensor fusion when required.
  • Design and build tools that allow debugging, analysis, and performance evaluation of your algorithms.
  • Bringing software engineering best practices to our team. You should be able to write production-level code that will stand on its own.
  • Root cause analysis and general debugging skills whenever things fail.
  • Taking full ownership of a project, going from idea to prototype to finished project.

What we’re looking for

  • Experience implementing algorithms for the calibration and motion control and path planning of complex robotic systems.
  • Practical and theoretical knowledge on modeling, signal processing, motion planning, sensor fusion, collision avoidance and SLAM.
  • Proven experience in software engineering, in e.g. C, C++, Python, Rust, or comparable languages.
  • Software engineering skills and best practices. You use git for version control, know how to do unit tests or how to automate deployment of your code.
  • Basic familiarity with Linux systems and conventions. E.g., you’re comfortable ssh’ing into other machines to figure out why something isn't working.
  • Experience in troubleshooting issues and conducting root cause analysis.
  • Preferred experience in building prototypes in a zero-to-one environment and/or top student teams.
  • B.Sc. in Electrical-, Mechanical-, Mechatronics-, Controls System Engineering or equivalent.
Interested? Get in touch with us: iwanttojoin@monumental.co, and tell us a bit about the most interesting or difficult project you’ve worked on to date.
If you don’t meet all the qualifications here but are excited about Monumental and feel you’d still be able to help us solve difficult problems, do get in touch. We are open to generalists with a demonstrated ability to focus on outcomes and get things done and are comfortable with you learning things as you go along.