Esri logo

C++ Software Developer II - ModelBuilder, ArcGIS Pro

Esri

  • Redlands, California
  • 30+ days ago
    Want to know if you’re a fit?
    Upload your resume and let our AI show you.

    Skills

    • Agile Programming Methodologiesunmatched
    • Analysis Skillsunmatched
    • Application Programming Interface (API)unmatched
    • ArcGISunmatched
    • C++ Programming Languageunmatched
    • CPU (Central Processing Unit)unmatched
    • Career Developmentunmatched
    • Computer Programmingunmatched
    • Computer Scienceunmatched
    • Concurrencyunmatched
    • Data Analysisunmatched
    • Debugging Skillsunmatched
    • Dependency Injectionunmatched
    • Design Patterns Programming Methodologiesunmatched
    • Desktop PCunmatched
    • ESRIunmatched
    • Geographic Information System Softwareunmatched
    • Geographic Information Systems (GIS)unmatched
    • GitHubunmatched
    • Identify Issuesunmatched
    • Interoperabilityunmatched
    • Memory Hardwareunmatched
    • Memory Leaksunmatched
    • Memory Managementunmatched
    • Microsoft .NETunmatched
    • Microsoft C# (C Sharp)unmatched
    • Model View ViewModel (MVVM)unmatched
    • Multithreaded Programmingunmatched
    • Object Oriented Design (OOD)unmatched
    • Parallel Computingunmatched
    • Performance Tuning/Optimizationunmatched
    • Problem Solving Skillsunmatched
    • Product Engineeringunmatched
    • Programming Methodologiesunmatched
    • Scrum Project Management and Software Developmentunmatched
    • Software Designunmatched
    • Software Developmentunmatched
    • Software Development Lifecycle (SDLC)unmatched
    • Software Engineeringunmatched
    • Systems Scalabilityunmatched
    • Team Playerunmatched
    • Unit Testunmatched
    • User Interface/Experience (UI/UX)unmatched
    • Windows Presentation Foundation (WPF)unmatched

    Description

    Overview

    We are seeking a talented full stack developer with strong C++ skills that enjoys coding powerful and intuitive desktop software. Join us if you are looking for a fulfilling career in software development where you design and create both user-friendly frontends and robust backend functions and APIs. As a Software Developer on the ModelBuilder team, you will help us develop innovative new capabilities for analytical modeling. This is a great opportunity to join a fast-paced and agile team as we support the work of our large global customer base who are solving critical problems using spatial analysis and ModelBuilder in Esri’s Desktop GIS product, ArcGIS Pro. 

    Responsibilities

    • Build the next generation workflow-based diagramming interface and user experiences for ArcGIS Pro that allows simple or complex sequences of tools to run efficiently
    • Follow design patterns, development methodologies, and deployment techniques using C++, C#, .NET, MVVM, and WPF
    • Find, analyze, and fix bugs and performance problems whenever they occur in the software
    • Build and ship quality software by working effectively in an agile, highly interactive, and creative team environment
    • Work closely with product specialists and software designers to create innovative new ModelBuilder capabilities
    • Become an expert in interaction patterns and use of the third-party diagramming library and supporting backend APIs and framework used by ModelBuilder
    • Contribute to and run unit tests to ensure high quality development free of regressions 

    Requirements

    • 2+ years of experience in C++ with strong understanding of memory management, smart pointers, multithreading and concurrency, performance optimization and profiling and more
    • Strong proficiency in C# (.NET) including object-oriented design principles, asynchronous programming (async/await), parallel processing methods, dependency injection and application lifecycle management and more
    • Strong understanding of API design, component based and layered architectures, interoperability between native (C++) and managed (.NET) code and more
    • Ability to make informed tradeoffs between performance, maintainability, and extensibility
    • Proven experience diagnosing and resolving memory leaks, race conditions, deadlocks, bottlenecks in CPU and memory intensive applications and familiarity with profiling and diagnostics tools for both C++ and .NET and more
    • Experience designing modular, scalable, and maintainable systems
    • Ability to clearly analyze and describe problems, and propose solutions
    • Ability to collaborate in a team environment and work closely with software developers, product engineers, and others to build quality software in a constantly evolving agile environment
    • Bachelor's degree in computer science or a related field
    • GitHub link showcasing your projects and work

    Recommended Qualifications

    • Master’s or PhD in computer science or a related field
    • Familiarity with Esri products or similar GIS or spatial software
    • Experience in areas of data analysis
    • Experience with development and release of commercial software products
    • Experience with Agile software development using Scrum
    • Experience writing testable (or test-driven) software 

    #LI-AL1

    #LI-Onsite

    Numbers & Facts

    LocationRedlands, California
    IndustryComputer/IT Services
    Company Size1,500 to 1,999 employees
    Year Founded1969
    Websitehttp://www.esri.com/

    About Company

    We show people how to make the world work better with maps and apps. We are the best in our fields from all walks of life and all over the world. We come together in small teams to make big ideas happen. With our GIS technology, anything is possible. Come join us.

    Similar Jobs