Cary, North Carolina, USA
14 days ago
Software Engineer 2 - Outdoor
Overview We are seeking a full-time Software Engineer 2 in our Outdoor division in our Cary, NC location. In this role, you will be responsible for developing low-level embedded software for various Garmin Consumer Outdoor products. You will be developing C/C++ software that interacts with hardware including initial board bring-up, boot strapping the operating system, developing and integrating device drivers and power/thermal management. Essential Functions Creates and executes designs for small sets of new functionalities as part of a software project using C, C++, assembly language, or other selected languages Read and interpret schematics, hardware vendor datasheets and reference manuals when developing and debugging device drivers Regularly collaborate with hardware engineers and application software engineers to ensure product requirements are met Work with wireless networking technologies, including ANT, Bluetooth/BLE and Wi−Fi, to allow communication with other outdoor products Utilizes software engineering tools such as configuration management systems, build processes, and debuggers in the software development process May perform as a technical leader or Lead Software Engineer for derivative software project 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) Previous work or internship experience in design, particularly for consumer products Linux programming experience Multi-threaded software development Wireless communication experience (Bluetooth/BLE, WI-FI) Familiar with hardware communication interfaces (I2C, SPI, UART, USB) Experience using laboratory equipment (e.g., logic analyzer, digital oscilloscope, In-circuit debuggers) 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
Confirm your E-mail: Send Email