Company Name: Garmin
Job Location: Olathe
Job Type: Full-time
Work Type: On-site
Overview:
We are seeking a full-time Software Engineer 2 in our Outdoor division in our Olathe, KS 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.
Responsibilities:
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
- 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)
Qualifications:
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++, 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)