Required
- Familiarity with C++
- Familiarity with C#
- Knowledge of 3D graphics pipeline fundamentals: mesh representation & attributes, transformation matrices, projections, shaders and rasterization.
- Knowledge of *a* low-level graphics API (e.g. *one of* OpenGL, DirectX, Vulkan, WebGL, etc)
- Demonstrate basic knowledge of vector maths (e.g. dot & cross product, basis vectors & transforming between coordinate systems, projection between 2D<->3D).
- Previous experience working with Git and in a CI/CD environment.
Preferred
- Experience writing high performance C++ code
- Experience writing multithreaded C++ code
- Experience working with 3D data in the AEC industry
- Experience with *a* game-engine or 3D viewer framework (e.g. *one of* Unity, Unreal, Hoops, ThreeJs, Godot, etc)
- Demonstrate intermediate knowledge of vector maths and/or geometry processing (e.g. alternative mesh representations, graph and/or acceleration structures, intersection and hit testing, boolean operations, simplification & subdivision).
Nice to Have
Experience with Unity
Experience with JavaScript
Experience with MongoDB or similar
- Experience with CAD applications and/or CAD file processing