I'm a Senior Frontend Developer who ended up specializing in something pretty niche: taking huge, messy real-world datasets - aerial imagery, BIM models, sensor feeds - and turning them into smooth 3D scenes that actually run in a browser. Cesium.js and Three.js are basically my daily drivers at this point.
- Frontend engineer at Constructor, building a city-scale Digital Twin of Moscow - 2,500 km², 9,000+ live data layers, real-time transport data over WebSockets
- Trained as a civil/structural engineer before switching to frontend - so when I look at a BIM model or a utility network, I'm not just rendering it, I actually know what it means
- Wrote custom Cesium.js patches for WebGL error handling because off-the-shelf stopped being enough at city scale
- Built a Chrome DevTools extension just to profile LOD tile performance sanely, instead of guessing
- Also comfortable outside the geospatial bubble - React, Angular, Redux/NgRx, REST APIs, testing with Jest
- Based in Chiang Mai, Thailand, open to relocating for the right role
Frontend & Core: Angular, React, Nx (Monorepo), TypeScript, RxJS, NgRx/NGXS.
3D & Graphics: Three.js, WebGL, WebGPU, Unreal Engine (Integration), GLSL (Shaders).
Maps & Geospatial: Cesium.js, MapLibre GL JS, Mapbox GL JS, OpenLayers, Leaflet, Deck.gl, Turf.js, 3D Tiles, GeoJSON.
State & Data Management: Asynchronous State Management, Redux/NgRx.
Data Visualization: Chart.js, D3.js, Highcharts.
Data & Real-time: WebSockets, gRPC-web, REST API.
Architecture & Patterns: Plugin Architecture, Micro-Frontends, Modular Design, Module Federation, Webpack.
Performance: Rendering Optimization, Memory Management, Web Workers, LOD Strategies.
Testing: Jest, Testing Library, Unit Testing.
Markup & Styling: HTML5, CSS3, Semantic HTML.
Version Control: Git, GitHub, GitLab.
Domain Expertise: Digital Twin development, BIM/CAD data integration, Photogrammetry.
- GEO Three Scene - a hybrid geospatial viewer that syncs a Cesium.js 3D globe with a React Three Fiber scene, visualizing a map's XYZ tile pyramid in real time - tile loads, LOD levels, and broken tiles all rendered live as a 3D structure on top of the globe. Built as a demo of profiling and debugging tooling for geospatial apps - the kind of visibility into tile/LOD behavior that's normally invisible in production. React, TypeScript, Vite.
- WebGPU, now that it's actually usable in production
- Going deeper into React Three Fiber and the wider R3F ecosystem
- Whatever the next off-the-shelf library stops being enough for

