C++ Software Development Engineer II - Graph Algorithms

Esri

Redlands, California

JOB DETAILS
SKILLS
Algorithms, Analysis Skills, Application Programming Interface (API), ArcGIS, C++ Programming Language, Cloud Computing, Communication Skills, Complexity Algorithms, Computer Programming, Computer Science, Data Structures, Design Document, Desktop PC, ESRI, Establish Priorities, Geographic Information Systems (GIS), Identify Issues, Interpersonal Skills, Memory Hardware, Network Performance/Analysis, Optimization Algorithm, Performance Management, Performance Tuning/Optimization, Presentation/Verbal Skills, Problem Solving Skills, Product Engineering, Requirements Management, Software Development, Software Development Lifecycle (SDLC), Software Engineering, Team Player, Time Management, Transportation Routing, Transportation and Logistics, Transportation and Traffic Design, Vehicle Fleets, Willing to Travel, Writing Skills
LOCATION
Redlands, California
POSTED
30+ days ago

Overview

Do you ever want to navigate the best way to get to a taco stand; know how many taco stands are within 10 minutes of your current location; or wonder how you can optimize traveling to all of them to savor the ultimate taco? If you love tacos and love graph algorithms and optimization, we’ve got the ideal job for you!

Join the ArcGIS Network Analyst team and build state-of-the-art routing algorithms used by companies all over the world to optimize their delivery fleet, provide driving directions, identify locations to site stores based on travel patterns, and much more. Our work touches millions of users and has a far-reaching impact.

You will work on a team focused on designing and implementing high-performance graph algorithms exposed in mobile, desktop, server, and cloud-based APIs and solutions within ArcGIS. This is a challenging and gratifying opportunity to apply your coding skills and passion for excellence to craft solutions for real-world transportation problems.

Esri has a Relocation Assistance Program and can provide support with relocating to the Redlands, CA area for this position.

Responsibilities

  • Design and implement algorithms and solvers in C++ for transportation routing problems
  • Optimize existing and new C++ code to reduce memory consumption and to increase performance and scalability
  • Analyze computational complexity of algorithms
  • Work with product engineers to diagnose root causes for incorrect software behavior and failures
  • Fix bugs in the existing C++ codebase
  • Write comprehensive technical specifications and design documents
  • Participate throughout the software development life cycle

Requirements

  • 1+ years of experience designing and implementing transportation network graph algorithms
  • Experience with C++11 and modern C++ style and idioms
  • Experience designing, analyzing, and implementing graph algorithms
  • Familiarity with basic data structures
  • Ability to clearly describe and analyze a problem and to articulate a solution
  • Excellent written and verbal communication skills
  • Strong time management, prioritization, teamwork, and interpersonal skills
  • Master degree or Ph.D. in computer science, engineering, or a related field

Recommended Qualifications

  • Experience in code profiling and performance optimization
  • Knowledge of GIS, logistics, and transportation networks

#LI-EL1

About the Company

E

Esri

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.
COMPANY SIZE
1,500 to 1,999 employees
INDUSTRY
Computer/IT Services
FOUNDED
1969
WEBSITE
http://www.esri.com/