We are seeking a full time Senior Map Technology Software Engineer specializing in pathfinding and graph search in our Olathe, KS location. At Garmin, we are dedicated to creating innovative mapping solutions for outdoor and fitness enthusiasts. In this role, you will:
Design, develop and optimize graph search/pathfinding algorithms for the creation of cycling, running and automotive routes
Support both online services and offline devices and contribute to a wide range of user experience
Collaborate with cross-functional teams to integrate pathfinding solutions and real-time data, such as traffic and road conditions, into our mapping products
Essential Functions
Serve in a technical capacity for carrying out software development in C++ for new products and/or applications
Provide reliable solutions to a wide range of difficult problems requiring strong research and problem-solving techniques
Design and/or review architected modules and software systems supporting new technology or improving capability/performance of existing functionality
Evaluate new technologies as they apply to existing functions
Participate in project leadership and/or program planning including providing technical input to product development plans and concept documents
Mentor and provide guidance to less experienced Software Engineers
Use and provide feedback on products in development when possible as part of the normal job responsibilities
May serve as a Lead Software Engineer for a complex software development project
May work with software vendors to integrate externally developed deliverables into project
Basic Qualifications
Must possess proficiency in writing software in C++
Previous experience with real-time navigation systems and dynamic pathfinding
Familiarity with pathfinding, graph search and/or optimization techniques
Experience maintaining large codebases
The ability to decompose functional requirements into well-defined tasks while balancing quality, quantity and complexity in work output
Competence with researching fundamental problems and implementing appropriate algorithmic solutions
Proficiency with designing well architectured software systems and modules that support new technology or improve capability/performance of existing functionality
Demonstrated ability to serve as a lead software engineer for a complex software project
Demonstrated capability to offer peer technical assessments in areas of expertise, new technologies and software designs
Strong communication skills and the ability to articulate complex technical concepts to non-technical stakeholders.
Bachelor's Degree in Computer Science, Electrical Engineering, Computer Engineering, Software Engineering, Aerospace Engineering, Math, Physics or related field AND a minimum of 5 years relevant experience OR an equivalent combination of education and experience
Excellent academics (cumulative GPA greater than or equal to 3.0 as a general rule)
Desired Qualifications
Outstanding academics (cumulative GPA greater than or equal to 3.5)
Experience with GIS (Geographic Information Systems) and mapping technologies
Previous experience in the cycling, running or automotive industries
Proficiency writing software in C#, SQL, or Python for new products and/or applications
Garmin International is an equal opportunity employer. Qualified applicants will receive consideration for employment without regard to race, religion, color, national origin, citizenship, sex, sexual orientation, gender identity, veteran's status, age or disability.
This position is eligible for Garmin's benefit program. Details can be found here: Garmin Benefits