3D Full-Stack Software Engineer — Three.js / Angular / Node.js

orthoeye.digital

Node.jsAngular

Location
Remote
Employment
Full-time
Level
Mid-level
Category
Frontend
Posted
Deadline

Description

We are building a digital orthodontics platform with interactive browser-based 3D tools.

This role is primarily focused on frontend and 3D development with TypeScript, Angular, Three.js, and WebGL, with Node.js full-stack development as a secondary responsibility. You will build interactive tools for viewing, editing, and working with complex 3D models directly in the browser.

You Are

A software engineer with demonstrable experience building interactive web applications through commercial work, substantial personal projects, open-source contributions, or similar production-quality work.

Strong in modern JavaScript and TypeScript.

Able to work productively with Angular, including components, services, dependency injection, forms, routing, and application state.

Experienced with RxJS or comparable reactive and asynchronous state-management patterns.

Experienced with Three.js or a comparable WebGL-based engine, and ready to work directly with Three.js.

Comfortable working with scenes, cameras, renderers, lights, meshes, materials, and render loops.

Experienced with BufferGeometry, vertex attributes, index buffers, normals, typed arrays, and binary mesh data.

Comfortable with 3D mathematics, including vectors, transformation matrices, local and world coordinate systems, rotations, and quaternions.

Able to implement interactive 3D behavior such as raycasting, object picking, dragging, surface-constrained movement, camera controls, and object transformations.

Familiar with triangle meshes, bounding boxes, spatial acceleration structures, collision or proximity checks, and common mesh edge cases.

Able to work with 3D formats such as STL and understand model loading, coordinate systems, units, normals, and transformations.

Able to profile and optimize browser rendering, CPU usage, GPU resources, and memory when working with large meshes.

Familiar with Web Workers, ArrayBuffer, transferable objects, or other approaches for keeping expensive work off the main UI thread.

Comfortable building and consuming REST APIs.

Experienced with Node.js and Express, or a comparable backend stack.

Familiar with file uploads, asynchronous jobs, persistent workflow state, authentication, validation, and error handling.

Able to write unit, API/integration, and end-to-end tests.

Familiar with Git workflows, pull requests, code review, and collaborative development.

Comfortable taking ownership of AI-generated code by reviewing, testing, debugging, and validating it before delivery.

Angular experience is strongly preferred. Candidates with strong React or Vue experience may also be considered if they have substantial browser-3D expertise and can become productive in Angular quickly.

Will Be a Plus

Experience with three-mesh-bvh or similar BVH/AABB acceleration structures.

Experience implementing mesh collision detection, proximity checks, or closest-point queries.

Experience with mesh editing, contour manipulation, cutting planes, or CAD/3D-viewer tooling.

Familiarity with GLSL, custom shaders, render targets, or GPU-based calculations.

Experience with WebGL performance profiling and GPU resource lifecycle management.

Familiarity with glTF/GLB, Draco compression, or other compressed 3D formats.

Experience with voxel grids, octrees, signed distance fields, or spatial indexing.

Experience integrating JavaScript applications with C++, WebAssembly, or native geometry-processing services.

Experience implementing editor-style features such as command history, undo/redo, scene serialization, and reusable transformation tools.

Experience with SQLite, PostgreSQL, DynamoDB, or repository-based persistence.

Experience with AWS services such as S3, SQS, DynamoDB, or presigned upload workflows.

Experience with Docker and containerized local development.

Experience with Karma/Jasmine, Node’s test runner, and Playwright.

Experience working with large binary files and object storage.

Experience in medtech, healthcare, orthodontics, CAD, manufacturing, scientific visualization, or 3D printing.

Familiarity with AI-assisted development tools such as Cursor, Claude Code, or Codex.

Advanced C++ or machine-learning expertise is not required. You will collaborate with engineers responsible for native geometry processing and ML services, but you should be able to understand their inputs, outputs, coordinate systems, and integration requirements.

What We Expect from You

Use modern AI development tools to work faster while remaining responsible for the correctness and maintainability of the resulting code.

Make pragmatic engineering decisions that help us deliver quickly without creating unnecessary complexity.

Investigate unfamiliar parts of the system independently and communicate important assumptions or risks.

Proactively identify rendering, performance, memory, state-management, and UX problems and propose practical solutions.

Validate 3D behavior using representative models and edge cases rather than relying only on visual inspection.

Be comfortable working in an evolving product with changing priorities and early-stage ambiguity.

Collaborate effectively with frontend, backend, C++, ML, and product team members.

Take ownership of a feature across the frontend, 3D scene, API, persistence, and processing workflow when needed.

Responsibilities

Build and improve Three.js-based clinical 3D viewers and interactive planning tools.

Implement scan inspection, preparation, and manual cleanup workflows.

Build tools for mesh selection, surface interaction, landmark editing, transformations, segmentation review, and 2D/3D overlays.

Maintain consistent transformations and coordinate systems across viewers, workflow steps, saved state, and backend processing.

Optimize rendering and interaction for large clinical scan meshes.

Move expensive geometry operations off the main browser thread when necessary.

Manage mesh loading, caching, resource reuse, and correct disposal of WebGL resources.

Implement Angular components and focused services following the project’s existing architecture.

Maintain reliable synchronization between Three.js scene state, Angular state, and backend workflow state.

Contribute to Express routes, services, repositories, validation, authentication, and storage integrations when a feature requires full-stack changes.

Integrate the web application with asynchronous C++ geometry-processing and Python ML services.

Write and maintain frontend unit tests, backend API tests, and Playwright end-to-end tests.

Participate in technical design discussions and code reviews.

Use AI-assisted development tools responsibly and help improve the team’s engineering workflows.

What We Offer

The opportunity to work on an innovative product in the medical-technology and browser-3D space.

High ownership and direct impact on product UX and technical decisions.

Close collaboration with specialists in frontend engineering, computational geometry, C++, and machine learning.

Flexible working hours within the European time zone.

A fast-moving environment where strong engineers can influence both product direction and system architecture.

Company-paid access to premium AI developer tools, with a budget of $200+ per month depending on role and needs.

Professional development support, including relevant courses and certifications.

20 paid business days of vacation.

5 paid sick-leave days.

Paid national holidays.

Apply at the source

This role was published by orthoeye.digital and listed via Djinni. Applications are handled there, not on this site.

View & apply on djinni.co ↗