Software Engineer - 3D Visualization

  • Esri
  • Zürich, Zürich, Switzerland
  • 13/08/2019
Full time Data Science Data Analytics Big Data Statistics

Job Description

Are you passionate about 3D computer graphics and creating good software? So are we! Esri is dedicated to making 3D maps and GIS accessible and powerful for consumers and experts alike. At the Esri R&D Center-Zurich, we lead the development of the core 3D web technologies: the ArcGIS API for JavaScript and Scene Viewer. Our team consists of 25 exceptional software engineers, computer graphics professionals, and GIS experts who love to work in a highly social, collaborative, friendly, and fun work environment.Join us on our mission to push the boundaries for visualizing and interacting with 3D geospatial data.

RESPONSIBILITIES

  • Research, design, and implement novel features for our JavaScript API ranging from 3D GIS data visualization, interaction techniques, and interactive analysis tools to low-level real-time rendering improvements in our WebGL engine
  • Help us keep our software on the cutting edge by improving performance, stability, and code quality and by adopting new technologies such as WebGPU, WebAssembly, machine learning, and real-time ray tracing as the opportunity arises
  • Contribute to Esri’s 3D mapping solutions beyond the web platform though company-wide standards and specifications
  • Apply and promote good software engineering practices such as test automation, modularization, and simplification

REQUIREMENTS

  • Excellent programming skills in a modern programming language
  • 2+ years of practical experience in software engineering
  • Strong background in computer graphics and real-time rendering
  • Excellent creative thinking and communication skills
  • Ability to work in a fast-paced team environment with frequent releases and tight schedules
  • Master’s in computer science or a related field (PhD preferred)

RECOMMENDED QUALIFICATIONS

  • Experience with JavaScript, TypeScript, WebGL
  • Experience with agile software development methods (Scrum, etc.)
  • Familiarity with GIS
  • Knowledge of 3D tools such as CityEngine, Maya, Houdini, Blender, etc.
  • Knowledge of common web technologies and 3D formats