Software Engineer
About the job
About the Software Engineer role
The Software Engineer is responsible for designing and developing a web-based 3D model viewer, covering the solution from architecture and technology evaluation through implementation and optimization. The role involves exploring open-source tools and libraries, such as IFC parsers and WebGL frameworks, to support advanced 3D visualization capabilities.
Key Responsibilities:
- Designing and developing the web-based 3D model viewer, from architecture through to implementation
- Exploring and evaluating relevant open-source libraries and tools (e.g. IFC parsers, WebGL frameworks)
- Implementing model navigation features (e.g. object selection, section cuts, and property inspection, etc.)
- Collaborating with backend engineers on server-side geometry processing and data APIs
- Optimizing viewer performance when dealing with large, complex files
- Iterating on the viewer based on feedback from end users
Requirements:
- Familiarity with JavaScript/TypeScript and backend JS runtimes (e.g. Node.js/Deno)
- Good understanding of 3D graphics and/or computational geometry concepts
- Strong problem solving skills and a desire to learn
- Excellent communication and collaboration skills
Preferred Qualifications:
- Web development (Frontend/Backend/Full-stack)
- WebGL or related 3D frameworks (e.g. Babylon.js)
- Python and libraries like IfcOpenShell
- Building Information Modeling (BIM) concepts
- Geospatial data and information
- Agentic development workflows (e.g. Claude Code)
- WebAssembly

