Senior Software Engineer
Overview
We are seeking a Senior Software Engineer with a passion for designing algorithms and data structures to solve open-ended problems in our Cary, North Carolina location. As a Software Engineer on the Map Technology team, you will play an important role in the lifecycle of key technologies integrated in our Automotive, Outdoor and Fitness products. Your responsibilities will include the design, development and maintenance of the map engine such as 2D/3D rendering, tile architecture, and feature development which includes displaying user data, stylizing map data, information overlays. You will also focus on performance enhancements by creating optimizations and porting to various hardware platforms for all consumer business segments in close cooperation with Garmin's Product teams for integration.
Responsibilities
Essential Functions
- Develops complex software in C, C++, or other selected languages for new products and applications
- Provides reliable solutions using sound problem solving techniques to a wide range of difficult problems
- May serve as a Lead Software Engineer for a complex software development project
- Balances quality, quantity and complexity in work output
- Refactors existing code to follow modern coding standards or design principles
- Collaborates and adds value through participation in peer code reviews, providing comments and suggestions
- Independently determines general approaches and specific solutions to technical problems
- Designs and/or reviews architected modules and software systems supporting new technology or improving capability/performance of existing functionality
- Tests products in development, reports bugs, and provides usability feedback
- Contributes to advanced technical research on new technologies
- Participates in project leadership and/or program planning including providing technical input to product development plans and concept documents
- Makes substantial contributions toward determination of project goal/objective feasibility
- Mentors and/or supervises less experienced Software Engineers
- Exemplifies Garmin's Mission Statement and Quality Policy and proactively works to improve Garmin's image and culture
Qualifications
Basic Qualifications
- Bachelors of Science Degree in Computer Science, Electrical Engineering, Computer Engineering, Software Engineering, Aerospace Engineering, Math or Physics or another relevant engineering/technical field AND a minimum of 5 year of relevant experience OR an equivalent combination of education and relevant experience
- Excellent academics (cumulative GPA greater than or equal to 3.0 as a general rule)
- Demonstrates proficiency with designing well architectured software systems and modules that support new technology or improve capability/performance of existing functionality
- Must demonstrate competence with researching fundamental problems and implementing appropriate algorithmic solutions
- Must demonstrate competence with researching fundamental problems and implementing appropriate algorithmic solutions
- Demonstrated ability to serve as a lead software engineer for a complex software project
- Must possess the ability to decompose functional requirements into well defined tasks while balancing quality, quantity and complexity in work output
- Demonstrated capability to offer peer technical assessments in areas of expertise, new technologies and software designs
- Must possess proficiency in writing software in C and C++, including modern C++ design patterns.
- Must possess relevant experience and/or training in algorithms and data structures relevant to Garmin's business needs
- Must possess relevant education and/or experience in software design, development and maintenance, as required for the successful performance of the essential functions of the position
Desirable Qualifications
- Superior academics (cumulative GPA greater than or equal to 3.5)
- Previous experience working in a team environment
- Experience with functional programming languages and/or design patterns
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.