Prepin
Log in
Garmin International, Inc.

engineering opportunity

Senior Software Engineer

You will design and implement efficient embedded software for marine chartplotters and entertainment systems while leading development projects. The role involves collaborating across teams to decompose requirements, mentor junior engineers, and ensure high-quality software performance.

Cary, North Carolina, United StatesonsiteFULL_TIME

Posted

About the role

What will you do at Garmin International, Inc.?

Overview

We are seeking a full-time Senior C/C++ Embedded Software Engineer in our Cary, NC location on our Marine embedded software development team. We’re seeking someone who is passionate about creating great weather awareness and integrated media+entertainment experiences for boaters. You will build applications that help boaters navigate weather and fishing forecasts; coordinate and control stereo, streaming audio, LED lighting and other entertainment devices; and integrate media content across the vessel network.

Your software will run on marine chartplotters and other devices.

Essential Functions

Serves in a leadership capacity as an individual contributor for carrying out software development in C and C++

Designs and implements code that is efficient, maintainable and verifiably correct

Works effectively across multiple software layers, focussing on application logic, data persitencce and network communications

Builds relationships with product managers, quality teams and engineers across Garmin

Reveiws architected modules and software systems supporting new technolgy or improving capability/performance of existing functionality

May serve as a Lead Software Engineer for complex software development projects

Decomposes functional requirements into well-defined tasks

May coordinate work across teams, geographies and technical domains

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, or related field AND a minimum of 5 years relevant experience OR an equivalent combination of education and experience

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

Mastered proficiency in writing software in C, C++ on embedded platforms

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

Outstanding academics (cumulative GPA greater than or equal to 3.5)

Linux development experience

Familiarity with networking protocols and standards, including TCP/IP, Wi-Fi, Controller Area Network (CAN/NMEA, Bluetooth/BLE and ANT, and experience implementing and debugging network applicatoins are a plus

Passion for boating, or other on-the-water activities

Passion for audio, media or other entertainment technologies

Systems thinker

Familiarity with design, development and testimg of reusable application code, including API - oriented designs

Familiarity with REST and HTP is a plus

Experience with git, Gerrit, JIRA and Microsoft Azure ADO

Familiarity with embedded or mobile UI development is a plus

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

Which skills does this role require?

CC++Embedded software developmentSoftware architectureNetwork communicationsAlgorithm designMentoringTechnical leadershipLinuxTCP/IPWi-FiNMEABluetoothAPI designEmbedded SystemsMarine ElectronicsSoftware EngineeringBLEANTHTTPAlgorithm DesignSystem ArchitectureTechnical LeadershipEmbedded SoftwareMarine ChartplottersData PersistenceNetwork ProtocolsSoftware DevelopmentREST APIs

Make your next move

Build a shortlist and prepare

Identify the requirements you can demonstrate, then choose examples from your work to discuss with the hiring team.

Review the responsibilities and requirements before adding an opening to your shortlist.

Role information can change. Confirm current details on the original application page.

Product

AI Candidate AgentCompaniesBrowse JobsDeep ProfileSkill AssessmentOpportunity Matching
Prepin.ai

© 2026 Prepin | All rights reserved.