Embedded Software Engineer - Marine Communications Applications

Company:  Garmin International, Inc.
Location: Cary
Closing Date: 02/12/2024
Hours: Full Time
Type: Permanent
Job Requirements / Description
Overview:
We are seeking a full-time Embedded Software Engineer 2 on our Marine embedded software development team in our Cary, NC location. We are seeking someone who is passionate about developing GUI software and is excited about creating an amazing integrated messaging platform for boaters.  You will be involved in building messaging applications, safety systems and device-to-device communication capabilities using radio, cellular, satellite and other communications technologies for marine displays and devices.

Responsibilities:
Essential Functions

Performs software engineering tasks at all phases of the SDLC including developing requirements, code, tests, and documentation for complex embedded display user interface software.  

Creates and executes designs for small sets of new functionalities as part of a software project using C and C++

Utilizes software engineering tools such as configuration management systems, build processes, and debuggers in the software development process 

Designs and implements high- quality code that is efficient, maintainable and performant 

Collaborates effectively with User Experience, Quality and cross-functional engineering teams

May serve as a technical leader on software development projects

Contributes to technical research on new technologies 

Estimates level of effort, evaluates new options of similar technology, offers suggestions to improve processes, and provides feedback on some electrical design aspects 

Serves as a mentor to less experienced software engineers (Software Engineer 1) 

Qualifications:
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

Demonstrated proficiency and experience necessary to develop moderately complex user interface software in C and C++ for embedded systems

Proficient knowledge, utilization and mastery of relevant software engineering tools (configuration management systems, build processes, debuggers, emulators, simulators and logic analyzers)

Proficient knowledge of and experience with the C/C++ language for embedded applications including OOP concepts, memory management, data/control coupling, data structures, and pointers.  

Desired Qualifications

 

Linux development experience 

Experience developing embedded software on a preemptive/multi-threaded RTOS  

Passion for boating or other on-the-water activities 

Familiarity with design, development and testing of high-level application and user interface code 

Familiarity and/or proficiency with mid-level protocol API development and debugging, as needed for device-to-device communication 

Experience with git, Gerrit, Microsoft Visual Studio or Visual Studio Code, JIRA and Microsoft Azure ADO 

Familiarity with marine communications technologies such as VHF, AIS or satellite communications  

Familiarity with UX design 

Experience with multi-channel messaging applications 

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

 

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: 

Apply Now
Share this job
  • Similar Jobs

  • Senior Applications DBA

    Raleigh
    View Job
  • Software Engineer

    Cary
    View Job
  • Platform Software Engineer

    Raleigh
    View Job
  • Sr. Software Engineer

    Raleigh
    View Job
  • Software Engineer (Java)

    Cary
    View Job
An error has occurred. This application may no longer respond until reloaded. Reload 🗙