C++ Software Engineer II - Graph Algorithms


Apply Now

Overview


 

Do you ever wonder want to navigate the best way to get to a taco stand; 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.

 

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


  • 2+ years of experience with C++ with a good understanding of object-oriented techniques and class design; and familiarity with the standard library
  • 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
  • Bachelor’s in computer science, engineering, or a related field, depending on position level

Recommended Qualifications


  • Master's degree preferred
  • Experience with C++11 and modern C++ style and idioms
  • Experience in code profiling and performance optimization
  • Knowledge of GIS, logistics, and transportation networks

About Esri


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. 

  

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. 

  

If you need a reasonable accommodation for any part of the employment process, please email askcareers@esri.com and let us know the nature of your request and your contact information. Please note that only those inquiries concerning a request for reasonable accommodation will be responded to from this e-mail address. 

  

Esri’s competitive total rewards strategy includes industry-leading health and welfare benefits: medical, dental, vision, basic and supplemental life insurance for employees (and their families), 401(k) and profit-sharing programs, minimum accrual of 80 hours of vacation leave, twelve paid holidays throughout the calendar year, and opportunities for personal and professional growth. Base salary is one component of our total rewards strategy. Compensation decisions and the base range for this role take into account many factors including but not limited to skill sets; experience and training; licensure and certifications; and other business and organizational needs. 

  

A reasonable estimate of the base salary range is $93,600 - $156,000

 

#LI-RC2

#LI-Remote

Apply Now