Role summary: We're a visualization studio building interactive, real-time 3D experiences for the web - and we care about one thing above all else: the image on screen. Our ambition is to deliver the most advanced real-time graphics the browser can produce, across a spectrum of devices from high-end desktop GPUs down to iPads, and to stay on the leading edge of the WebGPU era.
You'll be the technical authority on everything visual - the render pipeline, materials, shaders, and the performance that makes it run smoothly - while writing the kind of frontend code that gets it into users' hands. If you get excited by pulling a near-film-quality frame out of a tile-based mobile GPU, or by building a postprocess stack on WebGPU compute, this role is for you.
Responsibilities
•Rendering architecture & quality. Design and implement our render pipeline end to end - PBR materials, a composable postprocess stack (SSAO, SSGI, SSR, bloom, DOF, TAA), HDRI/IBL lighting, and a correct linear-color → tone-mapping (ACES / AgX) workflow.
•The render graph / pass system. Define how passes are ordered and composed, how the G-buffer and MRT targets are laid out, and how passes share data — and keep it maintainable as it scales.
•The GLB / material pipeline. Own material-slot conventions, the finish/variant system, and runtime material switching, working in lockstep with the asset team.
•Shaders. Write and maintain the shader and node-material code (TSL / WGSL / GLSL) where the stock toolset isn't enough - and have the judgment to know when it isn't.
•Renderer ↔ product integration. Architect how the 3D layer lives inside a real React + TypeScript application - clean APIs, sane state, and app-level performance, not just GPU performance.
•Performance across devices. Hit and hold our frame budgets on constrained hardware (e.g. iPad: 30+ FPS with the full postprocess stack), backed by a scalable quality system that adapts to device capability.
•Technical direction. Set the standards, review graphics code, and be the person the team trusts on anything rendering-related.
Must-have
•Substantial production experience with vanilla Three.js - shipped work, not demos - including its modern WebGPU renderer, node system, and TSL.
•Deep, current understanding of the WebGPU landscape as it stands today: the resource model (bind groups, pipelines, render & compute passes), what's solid vs. still moving, and real-world browser support and limitations. You actively track where this ecosystem is going.
•Strong hand-written shader experience in any language (WGSL / GLSL / HLSL / Metal). The GPU execution model matters, not the syntax - you can write and debug non-trivial shaders from scratch, and pick up WGSL/TSL fluently if you haven't already.
•Real-world experience with PBR materials and HDRI/IBL lighting in a product context.
•Solid grasp of postprocess composition: pass ordering, G-buffer layout, how passes interact, and what breaks when you reorder them.
•Graphics