Open position
Senior Software Engineer (UI/UX)
We are seeking a Senior Software Engineer to build the operator-facing surfaces of AMP: the workflow builder, the map and workcell editor, dashboards, and the scheduling and trigger interfaces. The users of AMP are plant engineers, not roboticists.
The workflow builder is a visual authoring tool over a live execution engine, and the map editor is a spatial editing surface over SLAM data. Both let a customer configure a site without writing code.
You will report to the UI/UX lead and own specific surfaces end to end, from interaction detail through to shipped, tested code.
What you’ll do
- Own specific AMP surfaces end to end, such as the map and workcell annotation editor or the workflow builder.
- Build spatial editing interactions over live map data: annotation CRUD, preferred paths, station and charge dock placement, and safety field editing.
- Build real-time views of robot state and workflow execution against streaming telemetry.
- Build and maintain shared components, hooks, and list systems that other surfaces reuse.
- Work with the UI/UX lead and product to turn interaction concepts into shipped, tested interfaces.
- Profile and fix rendering performance in views that carry large data sets.
- Write component and interaction tests for the surfaces you own.
- Pick up UI work currently handled by external contractors and bring it in house.
- Instrument the interface so usability problems appear in data.
Job requirements
Experience
- 5 to 8 or more years of professional frontend or full-stack engineering experience building complex, stateful web applications.
- Experience building a visual editor, canvas-based tool, diagramming interface, or comparable direct-manipulation interface.
- Experience with real-time data in the browser: streaming updates, subscriptions, and reconnection handling.
Education
- Bachelor's degree or higher in Computer Science, Human Computer Interaction, Design, or a closely related field.
- Equivalent industry experience with a portfolio of complex production interfaces may be considered.
Core technical background
- Strong TypeScript and React, including performance profiling and render optimization for large views.
- Experience with canvas or WebGL rendering, or with a library such as Three.js, deck.gl, or Konva.
- Solid command of state management patterns for applications with live server state.
- Experience consuming REST and streaming APIs, and flagging API shapes that make the interface worse.
- Working knowledge of accessibility and keyboard-driven workflows for operator tools.
- Experience with frontend testing: component tests, interaction tests, and visual regression.
Systems mindset
- Ability to reason about what the interface should do when the backend is slow, stale, or partially unavailable.
- Comfortable working from an interaction concept and filling in the detail.
- Comfortable in an industrial domain where the user is under time pressure.
Collaboration
- Clear communicator who can work effectively with remote teams across multiple time zones.
- Comfortable working alongside external contributors on shared surfaces.
Nice to have
- Experience visualizing robot state, maps, point clouds, or occupancy grids in the browser.
- Experience with 3D scene interaction and camera control.
- Familiarity with ROS 2, Foxglove, RViz, or comparable robotics tooling.
- Experience building tools for industrial or field operators.
- Prior open-source contributions to frontend or robotics visualization tooling.