About the job
Join a creative engineering team focused on designing and developing the next generation of solutions working with raster and imagery in ArcGIS Pro. We work with professionals to provide tools that support complex real-life workflows in 2D and 3D for raster and image processing and analysis. This is a great opportunity to be part of a fast-paced agile team that works with the latest technologies and patterns, asynchronous programming, and MVVM to design and develop next-gen Esri software.
- Design and develop raster and imagery focused solutions in ArcGIS Pro
- Follow industry-standard design patterns and development methodologies using C#, WPF, and C++ to build software components
- Collaborate on implementation designs with team members and across other teams
- Design, develop, and build software components, frameworks, and SDKs for other teams and external developers consuming our API
- Work with product engineers to diagnose and resolve root causes for incorrect software behavior and failures
- Build and ship quality software by working effectively with members of other software development teams
- Work in an agile environment to deliver software of the highest quality
- Write and maintain unit test cases for C++ core libraries
- Communicate requirements and dependencies of the component within the system
- 2+ years of C++ experience building commercial software
- Experience in asynchronous programming
- Firm understanding of object-oriented design, data structures, and design patterns
- Understanding of scientific algorithm specifications
- Ability to clearly describe and analyze a problem and articulate a solution
- Excellent written and verbal communication skills
- Ability to work effectively in a fast-paced and constantly evolving agile environment; strong time management, prioritization, teamwork, and interpersonal skills
- Bachelor’s in computer science, engineering, mathematics, or related field (master’s preferred)
- Experience designing intuitive user interfaces that allow users to solve problems faster and easier
- Knowledge of MVVM application design pattern
- Experience designing and developing UI/UX that simplify complex workflows, while keeping designs flexible for handling unknown scenarios
- Experience in areas of data analysis, and data visualization – particularly in the realm of communicating analytical results as informative, interactive, charts, etc., would be advantageous
- Experience with C++17 / C++20 and modern C++ style and idioms
- Experience working with large code bases
- Familiarity with ArcObjects (especially the Raster Object Model)
- GIS experience, knowledge of raster and imagery, and knowledge of Esri products or similar GIS or spatial software
- Prior experience with software development and release of commercial software products
- Experience with Agile software development using Scrum
- Experience with writing testable software
Our passion for improving quality of life through geography is at the heart of everything we do. Esri’s geographic information system (GIS) technology inspires and enables governments, universities, and businesses worldwide to save money, lives, and our environment through a deeper understanding of the changing world around them.
Carefully managed growth and zero debt give Esri stability that is uncommon in today’s volatile business world. Privately held, we offer exceptional benefits, competitive salaries, 401(k) and profit-sharing programs, opportunities for personal and professional growth, and much more.
Esri is an equal opportunity employer (EOE) and all qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability status, protected veteran status, or any other characteristic protected by law.