Benaco offering remote engineering job (3D reconstruction)

(Cross-post on Reddit: Benaco offering remote job (3D reconstruction) : haskell)

Benaco creates high-quality 3D models out of photo and laser data. We bring photorealistic digital twins into browsers to save our customers on-site visits, from real estate to hazardous environments such as chemistry parks and nuclear waste cleanup sites.


(Click the house icon for the 3D overview mode.)

We are a SaaS startup bootstrapped into profitability.
Like in our last hiring post, our current expansion in customers and features means we have a ton of stuff to do, and we’re looking to grow our team.


We can offer cool tasks from a wide variety of areas:

  • Computer Vision, including photogrammetry (the creation of 3D models from 2D images) and 3D laser point cloud processing
  • Computer Graphics
  • Implementing academic papers
  • Browser frontend programming
  • Web server programming
  • Low-level performance optimisations
  • Developer tooling
  • Distributed systems, reliability engineering, server ops
  • B2B sales
  • Customer interaction

If you are looking for a learning experience, we have both broad and deep knowledge across these areas, which we are happy to pass on.

Our tech stack comprises mainly of:

  • Haskell (web server, photogrammetry)
  • C++ (laser processing, mesh reconstruction)
  • some CUDA
  • Python with Mypy types (computer vision, data importing, processing orchestration)
  • TypeScript, React, WebGL (Website, 3D viewer)
  • Linux, Postgres, Ceph
  • Nix (DevOps)

Team and environment

  • Benaco is owned and led by its 3 founders Patrick Chilton (chpatrick), Niklas Hambüchen (nh2) and Francesco Mazzoli (bitonic).
  • All of us are 10+ years professional Haskell users, and we have worked together on projects for equally long.
  • We’ve worked at Google, FP Complete, Digital Asset, Erudify/Better. We’ve contributed to hundreds of open-source projects (including GHC, glibc, eigen, and other fundamental software) and are experienced in management, training, and running small companies.
  • We developed the whole Computer Vision pipeline from scratch because existing proprietary and open-source offerings were not suitable for the degree of end-to-end automation we envisioned. There is little legacy code, and all code you’ll be dealing with is either our own, or open-source.
  • We’re a small, high-efficiency company. We value operational excellence and low overheads.
  • We’re 100% remote.
  • The current team is in EU and Americas time zones. Some customers are in US west coast time zones.

If you like to see what other Haskellers have to say about us, check out our the Reddit comments on our last hiring post.

Your role

While you do not need to be an expert in all of the mentioned tasks or tech, we will need some significant help across multiple of them.
If you’re unsure if we’d be a good match, don’t hesitate to contact us and we’ll figure it out together.

For this role we’re especially looking for a good communicator who enjoys talking to our customers and helps us build the features they need.

We’re interested in you no matter if you’re just starting your engineering career, or well into it and looking for a change.

Remote work means that you will need to be a good communicator.

Part time work is possible, especially if you are good at independent work.
We may also be able to accommodate an internship with the goal of later full-time conversion, or single-person consultants registered in their own country.

If you are interested or have questions, let me know here, at, or on Matrix (!


To anyone curious; I’ve worked with both Niklas and Francesco in the past and they are excellent, detail-oriented programmers and absolutely lovely people. Benaco is good people. :clap::slightly_smiling_face:


Absolute legends, I’m so happy for you guys!


This is straight-up a dream job. Terrific people taking on engrossing work.


Hi :slight_smile:

How many people would you be willing take on? The ad suggests one.


Yes, currently we have 1 free role.