Bachelor's Degree in Computer Science, Electrical Engineering, or related field with 5+ years of experience or equivalent education and experience
Strong proficiency in embedded software development using C, C++, and Python
Experience in designing architectural software systems and modules for new technology
Expertise in researching problems and implementing algorithmic solutions
Proven capability to lead complex software projects and decompose requirements into tasks
Strong communication skills, both verbal and written, with an ability to provide peer assessments
Detail-oriented, organized, and a self-starter able to thrive in a fast-paced environment
Responsibilities
Lead the development of embedded software for audio processing in consumer devices
Design and implement audio algorithms for various embedded devices such as wearables and bike computers
Engage with product teams to identify and design new feature integrations
Conduct technical assessments and review designs to improve software performance
Mentor junior engineers and provide guidance on technical challenges
Research and suggest improvements for new technologies and processes
Contribute to planning and objective feasibility assessments for projects
Benefits
Eligibility for Garmin's comprehensive benefits program
Opportunities for professional development and continuous learning
Collaborative and innovative work environment
Flexible work location options in Kansas City or Cary, NC
Participation in advanced technical research and projects
Full Job Description
Overview
We are seeking a full-time Sr C/C++/Python Software Engineer -AudioProcessing on our Core Platform Technology team at Garmin's U.S. headquarters in the Greater Kansas City area OR at our location in Cary, NC. In this role, you will help Garmin shape the way our customers hear our consumer devices across all product segments.
Essential Functions
Serves in a leadership capacity as an individual contributor for carrying out embedded software development in C, C++and Python
Writes audio algorithms and target embedded devices (such as wearables, bike computers, and handhelds)
May serve as a Lead Software Engineer for complex software development project designs and/or reviews architected modules and software systems supporting new technology or improving capability/performance of existing functionality
Engages with product teams to design future integrations and features
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 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 and applies good judgment in setting schedules/risk taking
Mentors and provides guidance to less experienced Software Engineers (1 & 2)
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
Basic Qualifications
Bachelor's Degree in Computer Science, Electrical Engineering, Computer Engineering, Software 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)
Mastered proficiency in writing embedded software in C, C++ and Python and relevant experience in data structures or object-oriented design methodology
Demonstrated proficiency with designing well architectured 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
Demonstrated ability to serve as a lead software engineer for a complex software project
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
Demonstrated strong and effective verbal, written, and interpersonal communication skills
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
Experience with real-time audio processing systems
Experience evaluating and recommending audio solutions for embedded platforms
Familiarity with noise reduction, echo cancellation, mixing, compression, or other audio algorithms
Familiarity with machine learning techniques related to audio processing
This position is eligible for Garmin's benefit program. Details can be found here: Garmin Benefits
About Garmin
Garmin Ltd. is an American multinational technology company founded in 1989 by Gary Burrell and Min Kao in Lenexa, Kansas. The company specializes in GPS technology for automotive, aviation, marine, outdoor, and sport activities. Garmin's products serve aviation, marine, automotive, wireless, outdoor recreation, and fitness markets. The company's goal is to create navigation and communication devices that can enrich customers' lives. Garmin has offices in the United States, Europe, and Asia. The company's products are sold in over 100 countries.