Graphics Engineer - Missoula, Bozeman, or Remote

  • onXmaps, Inc.
  • Nov 08, 2021
Full time Design Engineering

Job Description

ABOUT onX

onX is a pioneer in digital outdoor navigation. With offices in Missoula and Bozeman, Montana, we are inspired by the landscapes that surround us. We bring our outdoor passion to work every day with a singular goal–to awaken the adventurer in everyone. We do this by engineering industry-leading technology, and by crafting dynamic outdoor experiences. 

Through multiple years of growth, we haven’t lost our entrepreneurial ethos at onX. We offer a fast-paced, tech-forward environment where ownership and accountability are essential.

WE ARE LOOKING FOR

onX is seeking a Software Engineer with a 3D graphics background to help us take our off-pavement mobile GPS experience to the next level. You’ll be our third hire on this new and exciting team focused on a greenfield, cross-platform 3D map viewer. You will work closely with our lead engineer on this project to create a beautiful and efficient 3D map viewing experience for millions of passionate customers. If you’re a linear algebra wiz, love maps, and can wrangle quaternions in your sleep, then this job might be just what you’re looking for!  This person will report to our VP of Research. 

TECHNOLOGIES YOU'LL USE

In this position, you’ll work in C++, Kotlin, Swift, and Web Assembly. You will leverage WebGL, OpenGL, and Metal to write a high-performance 3D map viewer. We use a cross-platform graphics library called BGFX to build our viewer for Android, iOS, Windows, Mac, and Web. If you love creating purpose-built, lightweight 3D apps that impact millions of loyal customers, this is the perfect opportunity for you.

LOCATION

Missoula, MT; Bozeman, MT; or Remote from the USA only.  We offer generous relocation assistance to qualified hires interested in relocation to Montana. 

Additionally, being authorized to work in the U.S. is a precondition of employment. We do not sponsor work visas (of any kind ) for this position at this time. 

RESPONSIBILITIES

(Essential Job Duties)

  • You will work with our lead Engineer to create a 3D map viewing SDK for mobile and web.
  • Your solution will be super-efficient and performant.
  • Your solution will be 100% native and will not rely on existing game engines like Unreal or Unity. 
  • You will set up our dependency/artifact pipeline to create consumable dependencies for iOS, Android, and web (CocoaPods, Android Libraries).
  • Exemplify onX values and be a collaborative team member.

REQUIRED QUALIFICATIONS

  • Bachelor's degree in computer science or a related field, or equivalent experience. 
  • At least two (2) years experience shipping and maintaining production code;
  • At least one (1) year of experience must be focused on low-level graphics programming (such as WebGL, OpenGL, Vulcan, Metal, and/or DirectX).
  • Experience with mobile development is a plus
  • Fundamental of graphics programming including the Graphics Pipeline
  • Culling, clipping, and spatial partitioning algorithms. Quad- or oct-trees is a plus
  • Concurrency and multithreading for network requests and computation
  • Understanding of linear algebra as applied to 3D graphics
  • You have a strong computer science foundation
  • You want to work with other happy, talented engineers
  • You write great code
  • You get stuff done
  • You take ownership
  • You’re fun to work with and you know how to collaborate