3D Visualization and User Interface Software Engineer

Canvas is looking for a talented software engineer to champion empowering workers to use the next generation of construction tools. This person is responsible for creating the user interface and 3D visualizations through which both developers and end-users will control the tool. You will work closely with the rest of the algorithms and software team to streamline workflow and make a simple yet capable interface that empowers users of all backgrounds. You’ll create responsive applications for intuitively displaying data from multiple sensors in real-time while also allowing users to define complex autonomous behaviors with minimum effort.

We’re a series A funded small team with a great first platform in our early stages of development. You’ll wear many hats but you’ll play a significant role in shaping the future of our product, culture, and engineering team. Join us in creating new tools to reshape the construction industry.

See our Careers page for a little more info about working at Canvas.


  • Responsible for end-to-end development of tools for visualizing and presenting data to both internal and external end users

  • Develop interactive user interfaces to allow users to visualize data and intuitively define complex robotic behaviors

  • Develop backend infrastructure for representing, queueing, executing, and interrupting autonomous behaviors

  • Work with the team to build and maintain a robust deployment ready software codebase for a fleet of autonomous systems, scaling from one system to many


  • 1+ years industry experience and BS/MS in related field

  • C++ and Python in a Linux environment

  • Software fundamentals (iteration, data structure, object oriented programming, bits and bytes)

  • Experience developing interactive 3D visualizations using libraries such as OpenGL, QT, and VTK or other

  • Experience creating tools for visualizing and interacting with high bandwidth data in real-time      

Preferred Requirements:

  • Web development experience

  • Mobile development experience

  • Familiarity with linear algebra concepts such as matrix multiplication, dot products, projections and cross products

  • Familiar with homogeneous transforms, rotation vectors, Euler angles, quaternions, and translations