C/C++ GUI Software Engineer - Marine Media team

Garmin

  • Cary, NC
  • Permanent
  • Full-time
  • 2 days ago
Job Description:OverviewWe are seeking a full-time Embedded GUI Software Engineer in our Cary, NC location on our Marine Media team. We’re seeking someone who is passionate about creating great media and entertainment experiences using C++ on the GUI layer of the embedded Linux stack. You will be involved in building software applications that deliver high-quality audio, video and other forms of media and entertainment, along with applications that represent weather, fishing recommendations and other visual content, for recreational boaters. These software applications integrate marine chartplotters, stereos, cameras and other video sources, and other devices.Essential Functions
  • Creates and executes designs for small sets of new functionalities as part of a software project using C and C++ on the GUI layer on Linux
  • Collaborates effectively with UX, Quality and other engineering teams
  • Utilizes software engineering tools such as configuration management systems, build processes, and debuggers in the software development process
  • Collaborates and adds value through participation in peer code reviews, providing comments and suggestions
  • Provides reliable solutions to a variety of problems using sound problem solving techniques
  • Performs technical root cause analysis and outlines corrective action for given problems
  • 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)
Basic Qualifications
  • Bachelor’s Degree in Computer Science, Electrical Engineering, Computer Engineering, Software Engineering, Aerospace 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 and experience necessary to develop moderately complex software in C, C++, C#, Java, assembly language, or other selected languages
  • Proficient knowledge, utilization and mastery of relevant software engineering tools (configuration management systems, build processes, debuggers, emulators, simulators and logic analyzers)
Desired Qualifications
  • Outstanding academics (cumulative GPA greater than or equal to 3.5)
  • Linux development experience
  • RTOS experience
  • Passion for boating or other on-the-water activities
  • Passion for audio, video or other entertainment technologies
  • 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 UX design is a plus
  • Familiarity with audio or video encoding, or weather data representations such as GRIB, 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