Search jobs > Cary, NC > Embedded software engineer

Sr Embedded Software Engineer - Marine Communications

Garmin
Cary, North Carolina, US
Full-time

Overview We are seeking a full-time Sr C / C++ Embedded Software Engineer in our Cary, NC location on our Marine Communications team.

This role will work at the middle layer and UI layer of the embedded stack. We’re seeking someone who is passionate about creating great integrated messaging and communications experiences for boaters.

You will be involved in building messaging applications, safety systems and device-to-device communication capabilities using radio, cellular, satellite and other technologies, for 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++ on the mid-to-high level of the embedded stack 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 Works effectively across multiple software layers, including UI, application logic, data persistence and network communications Works collaboratively with UX teams to design intuitive and concise user interfaces 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 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++, C# or Java and relevant experience and / or training in data structures or object-oriented design methodology 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 Linux development experience RTOS experience Passion for boating or other on-the-water activities Familiarity with design, development and testing of high-level application code, including user interface Familiarity and / or proficiency with mid-level protocol development and debugging, as needed for device-to-device communication Experience with git, Gerrit, JIRA and Microsoft Azure ADO Familiarity with marine communications technologies such as VHF, AIS or satellite communications is a plus Familiarity with UX design is a plus Experience with multi-channel messaging applications is a plus 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 applications, are 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 BenefitsEssential Functions Serves in a leadership capacity as an individual contributor for carrying out software development in C and C++ on the mid-to-high level of the embedded stack 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 Works effectively across multiple software layers, including UI, application logic, data persistence and network communications Works collaboratively with UX teams to design intuitive and concise user interfaces 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 techniquesBasic 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++, C# or Java and relevant experience and / or training in data structures or object-oriented design methodology 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 Linux development experience RTOS experience Passion for boating or other on-the-water activities Familiarity with design, development and testing of high-level application code, including user interface Familiarity and / or proficiency with mid-level protocol development and debugging, as needed for device-to-device communication Experience with git, Gerrit, JIRA and Microsoft Azure ADO Familiarity with marine communications technologies such as VHF, AIS or satellite communications is a plus Familiarity with UX design is a plus Experience with multi-channel messaging applications is a plus 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 applications, are 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

30+ days ago
Related jobs
Promoted
VirtualVocations
Durham, North Carolina

A company is looking for a Senior Software Engineer specializing in Go and Powershell. ...

Garmin
Cary, North Carolina

Essential Functions Serves in a leadership capacity as an individual contributor for carrying out embedded software development in C and C++ Designs and implements code that is efficient, maintainable and verifiably correct Works effectively across multiple software layers, focusing on application l...

Promoted
VirtualVocations
Durham, North Carolina

A company is looking for a Principal Embedded Software Engineer in Cybersecurity Products. ...

Truist
Raleigh, North Carolina

Develop and execute application strategy in support of short- and long-term business plans as well as application implications and software development requirements. Lead the technical planning & requirements gathering phases including estimate, develop, test, manage Embedded Finance API projects, a...

Reperio Human Capital
North Carolina, USA

This client is looking for a combination of an embedded software and electrical engineering (the primary need is software). Senior Embedded Software Engineer. Experience level of 5-12 Years in the embedded software space. Medical, Embedded, Electrical, C, C++. ...

US Tech Solutions
Cary, North Carolina

Perform embedded software engineering tasking including requirements analysis, operational concept development, software system design/architecture, component integration, design reviews, integration testing and problem solving. Collaborate with fellow engineers within the team on embedded software ...

HNM Systems
Raleigh, North Carolina

We are currently hiring for a direct-hire Embedded Software Engineer (Level III). Analyze software requirements to design an embedded software solution within the given resource constraints. Consult with hardware engineers and other engineering staff to determine functional requirements, to design s...

KYYBA Inc
Cary, North Carolina

Perform embedded software engineering tasking including requirements analysis, operational concept development, software system design/architecture, component integration, design reviews, integration testing and problem solving. Title: Embedded Software Engineer. Collaborate with fellow engineers wi...

Vista Applied Solutions Group Inc
Cary, North Carolina

Collaborate with internal and external stakeholders including through daily user support<br /> Lead innovation efforts to define the next generation of tools used by the entire embedded development community at Deere</div> <div> </div> <div><b>(Required skills/ex...

Northrop Grumman
Morrisville, North Carolina

Supporting systems engineering efforts in system design, solution engineering and software development. We are looking for a Software Engineer experienced in Java (as your primary and most skilled in Object-Orientated programming language) who wants to work on an agile development team using modern ...