Find a Career-Defining* Opportunity, Whatever Your Stage

*P9-backed companies are 4x more likely to succeed than the industry average. (Dealroom).

Senior Software Engineer - Computational Geometry

Gravity Sketch

Gravity Sketch

Software Engineering
London, UK
Posted 6+ months ago

About us:

Gravity Sketch is the category leader in solving the challenges faced by teams that design 3D products. Our platform enables teams to create and communicate 3D ideas in the quickest and most intuitive way possible - whether they are globally distributed or in the same geography.

The platform is changing the way companies like Adidas and Ford carry out their day-to-day design work, helping to increase creativity, productivity, collaboration and compressing time to market. We take a B2C approach to B2B, nurturing a large community of highly engaged design and engineering professionals using the product to redefine their digital design workflow.

The Gravity Sketch platform is accessible across VR and web-based applications allowing users to integrate GS seamlessly into their workflow.

Our Culture

We’re a lean but ambitious team of 65+ spread across the globe. We may be geographically spread out, but we’re tied by our mission to radically change how teams communicate ideas spatially and expressively from anywhere!
Our focus is on output and getting the work done, not counting the hours you work. We appreciate that everyone has their own optimum setup, so provide flexibility in terms of when and where you get work done.

Our Values

Curiosity

  • Always be in learning mode

  • Go Deep: ask the why/why not

  • Explore and have fun

Empathy

  • Put ourselves in the shoes of our customer

  • Be genuinely caring and respectful

  • Act from a place of understanding/longing to understand

Force Multiplier

  • Make everyone around us/you better

  • Raise the Bar

  • Deliver Results

Resourceful

  • Take calculated risks

  • Use what we have/ deliver the most value

  • Stay Hungry

Act like an owner

  • Hold ourselves and others accountable

  • Make every investment as if it were your own

  • Don't let the egg drop

Our values are at the heart of our culture, we encourage everyone to experiment, bring new ideas to the table, and challenge one another to arrive at the best solutions for our users.

We work hard, and know how to have fun too; with company trips, socials, sports, gaming sessions and more. We welcome you to share your hobbies with the team so we can all try something new!

About the role

As a Senior Software Engineer, focused in Computational Geometry in Gravity Sketch, you will be responsible for improving our existing geometry kernel as well as developing new features that will enable our VR app to become a more fully fledged 3D design tool. This will include architecting code to harness the efficiency of a “data-oriented”, rather than OOP, approach, designing and optimising computational geometry algorithm by leveraging the Burst compiler and Unity’s lower level APIs, as well as building efficient interactions between user input and the geometry kernel.

You will be using C# and Unity, and more specifically Unity’s Job System, the high performance subset of C# (HPC#) and the Burst Compiler. Whilst having experience with this particular stack would be ideal, we don’t expect you to, as long as you understand how to write efficient, multi-threaded, vectorialised code.


You will be working alongside our current maths specialist, by leading architectural decisions, and assisting in the algorithms designs and implementations. Together, you will own the deeply mathematical parts of our product, covering areas such as tesselation, mesh optimisation and topology, mesh subdivision and surface parametrisation. You will also collaborate with the VR engineers, designers and product managers, to leverage this geometry kernel with features that solve our users' issues and enable them to be more creative more easily in Gravity Sketch.

Requirements

  • Bachelor’s degree in fields related to Computer Science, Physics, Mathematics

  • Extensive knowledge of linear algebra concepts (vector and matrix math, numerical solvers) and 3D computational geometry

  • Strong hands-on experience in writing, testing, and maintaining efficient C/C++ or C# code

  • Working knowledge of advanced data structures and algorithms design

  • 3+ years of experience with low-level optimization techniques related to 3D game engine or real-time graphics/geometry application design and performance profiling

  • Strong knowledge of vectorization

  • Strong experience in software development and software engineering. understanding of the full software development cycle.

  • Can well balance quick prototyping and quick iteration vs production-ready development.

Bonus points for:

  • Understanding of NURBS and SubDivision

  • Experience in C# and Unity Burst compiler and Job system

  • Mesh and Topology Optimization

  • Mesh Adaptation/Refinement/Smoothing

  • Voxelized Digital Geometry

  • 3D Graphics and High-end Gaming

Please note, we have a studio in Brixton, London where the team has the option to work from. It would be great to have someone in this role that is able to work from the London studio regularly, although not essential. We can also consider applications from those who can work remotely from the UK or EU