Garmin International - Cary, NC

posted about 1 month ago

Full-time - Entry Level
Cary, NC
Computer and Electronic Product Manufacturing

About the position

The Embedded Software Engineer 2 will join the Marine embedded software development team in Cary, NC, focusing on developing GUI software for an integrated messaging platform aimed at boaters. The role involves building messaging applications, safety systems, and device-to-device communication capabilities using various communication technologies for marine displays and devices.

Responsibilities

  • Perform software engineering tasks at all phases of the SDLC including developing requirements, code, tests, and documentation for complex embedded display user interface software.
  • Create and execute designs for new functionalities as part of a software project using C and C++.
  • Utilize software engineering tools such as configuration management systems, build processes, and debuggers in the software development process.
  • Design and implement high-quality code that is efficient, maintainable, and performant.
  • Collaborate effectively with User Experience, Quality, and cross-functional engineering teams.
  • Serve as a technical leader on software development projects.
  • Contribute to technical research on new technologies.
  • Estimate level of effort, evaluate new options of similar technology, and provide feedback on electrical design aspects.
  • Mentor less experienced software engineers.

Requirements

  • Bachelor's Degree in Computer Science, Electrical Engineering, Computer Engineering, Software Engineering, Math, Physics or related field.
  • Minimum of 1 year relevant experience or an equivalent combination of education and experience.
  • Demonstrated proficiency in developing moderately complex user interface software in C and C++ for embedded systems.
  • Proficient knowledge and mastery of relevant software engineering tools (configuration management systems, build processes, debuggers, emulators, simulators, and logic analyzers).
  • Proficient knowledge of C/C++ language for embedded applications including OOP concepts, memory management, data/control coupling, data structures, and pointers.

Nice-to-haves

  • 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 with mid-level protocol API development and debugging 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, CAN/NMEA, Bluetooth/BLE, and ANT.

Benefits

  • Health insurance
  • Dental insurance
  • 401k
  • Paid holidays
  • Flexible scheduling
  • Professional development opportunities
Job Description Matching

Match and compare your resume to any job description

Start Matching
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service