We are seeking a full-time Bare Metal Software Engineer 2 in our Olathe, KS location on our Fitness team. In this role, you will work on a small team to bring ideas to life. You will cover all phases of development from initial prototyping to concept development and to mass production.
Essential Functions
Serves as a individual contributor for carrying out software development in C and C++ on bare metal or RTOS
Decomposes functional requirements into well-defined tasks
Researches fundamental problems and implements algorithm solutions that are appropriate
Offers peer technical assessments in areas of expertise, new technologies and software designs
Assists design engineering as needed with component datasheet review and schematic design review
Participates in project 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 and applies good judgment in setting schedules/risk taking
Contributes to advanced technical research on new technologies
Offers process improvement suggestions and authors new procedures as appropriate
Provides reliable solutions to a wide range of difficult problems using sound problem solving techniques
Applies good judgement in setting schedules and risk-taking
Applies knowledge of production and operations issues as they relate to engineering
Serves as a mentor to less experienced software engineers (Software Engineer 1)
Reviews product and/or application information including manuals and brochures for technical accuracy
Basic Qualifications
Bachelor's Degree in Computer Science, Electrical Engineering, Computer Engineering, Software Engineering, Math, Physics or related field AND a minimum of 1 year 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)
Demonstrated proficiency in writing software in C and C++ on bare metal microcontrollers (including driver development and debugging) or RTOS
Demonstrated proficiency with designing well-architected software systems and modules that support new technology or improve capability/performance of existing functionality
Demonstrated competence with researching fundamental problems and implementing appropriate algorithmic solutions
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 be positive, detail oriented, organized, team oriented and a driven problem solver, multi-tasker, and self-starter with the ability to prioritize and lead in a fast paced, deadline-driven environment
Desired Qualifications
Outstanding academics (cumulative GPA greater than or equal to 3.5)
Experience bringing a consumer product from concept to mass production
Hardware design experience including component selection, designing and laying out PCBs
Experience coding in C++ 14
Driven with a desire to learn, overcome challenges, try new things, and innovate
Ability to prioritize and work on multiple projects at once
Grit. Ability to commit to a good idea and develop it even in the face of uncertainty or opposition
Passionate about problem solving and serving the customer
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