Software Engineer, Machine Vision



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 labour.
We’re a small team of mostly engineers (coming from companies like Palantir, Qualcomm, Dyson, Shopify, Tesla & Meta) that is looking to expand the operational part of our business. 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 backed by top-tier investors.
You can read more on why we believe you should spend your time working on construction, and learn more about our vision and company.
About You and This Role
We’re looking for software engineers with deep knowledge of software engineering and modern machine vision to join our team. 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 of 3D structures that will be built, supply chain, path planning, and inverse/forward kinematics of our robots.
Some of the types of challenges you might be working on:
Developing algorithms for localization, mapping, calibration, and state estimation using state-of-the-art techniques such as visual-inertial SLAM or through fiducial markers allowing us to drive our autonomous vehicles in the ever-changing environment of a construction site
Designing machine vision systems that can judge the quality of bricks, mortar, or other construction objects and that can run in production
Working with our software team to build a production-level system that ingests sensor data, runs your algorithms, and interfaces with our software stack
Measuring the performance of our sensing system and improving it, including characterizing the sources of various inaccuracies and deficiencies that we might encounter.
Implementing robust, production-level code that can bring your algorithms to life. You own your projects from start to finish and don’t approach problems like a researcher who hands them over to a separate software engineering team.

What you'll be responsible for

  • Design and implementation of machine vision algorithms, both prototype quality for early experiments and production quality for real-world use.
  • When your prototypes work, being able to convert them into robust production quality code. You have proven software engineering experience beyond just doing things in a Jupyter notebook.
  • Design and implement novel localization algorithms (e.g., visual-inertial SLAM, or localization through fiducial markers) and ensuring we use the right sensors and logic to figure out where we are in world-space, using sensor fusion when required.
  • Implement state-of-art machine vision algorithms for object detection, object localization, or quality control purposes.
  • Implement and optimize 3D reconstruction and photogrammetry pipelines and workflows.
  • 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

  • Deep understanding and experience with multiple hardware sensor systems such as LiDARs, IMUs, and (depth) cameras.
  • Experience in developing, implementing, and testing mapping, localization and state estimation algorithms, such as (VI-)SLAM, VIO, ICP, and Kalman filters
  • Ideally, some experience with real-time, deep learning based computer vision, e.g. with multi-object tracking systems
  • 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.
  • A strong bias for action and output. We’re not a research organization and emphasize shipping frequently and fast iteration loops
  • A strong sense of ownership and motivation
Why Monumental?
Joining Monumental means being at the forefront of a movement aimed at making significant strides in the construction industry. Here, your work has the potential to impact not just the company but the future of how we build. If you're driven by innovation, eager to tackle complex challenges, and ready to make a tangible difference, we want to hear from you.
Interested candidates should reach out to us at:iwanttojoin@monumental.co - share with us the most interesting or challenging project you've worked on with your CV or portfolio —we're excited to learn about your journey and discuss how you can contribute to ours.
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.