DevOps (Embedded) Software Engineer 2 (C++)

  • Olathe, KS
  • Posted 60+ days ago | Updated moments ago

Overview

On Site
Full Time

Skills

DevOps
Continuous Delivery
Functional Requirements
Algorithms
Project Management
Program Management
Product Development
Research
Process Improvement
Problem Solving
Conflict Resolution
Testing
Application Servers
Capacity Management
Backup Administration
Root Cause Analysis
Estimating
Computer Science
Electrical Engineering
Computer Engineering
Aerospace
Mathematics
Physics
Writing
Python
Bash
C
C++
Training
Data Structure
OOD
Software Engineering
Configuration Management
Logic Analyzer
Jenkins
Continuous Integration and Development
Continuous Integration
Docker
Kubernetes
Git
Management
Collaboration
Embedded Software
Microsoft Windows
Linux
OS X
Software Development Methodology
Cloud Computing
OpenStack
Kibana
Grafana
Analytical Skill

Job Details

Overview

We are seeking a full-time DevOps Software Engineer 2 in our Olathe, KS location. This DevOps software engineer will help build and maintain the next generation of Garmin's Continuous Integration / Continuous Delivery (CI/CD) system used to build embedded software for Garmin's award-winning products.

Essential Functions
  • Creates and executes designs for small sets of new functionalities as part of a software project using C, C++, or other selected languages
  • Utilizes software engineering tools such as configuration management systems, build processes, and debuggers in the software development process
  • Decomposes functional requirements into well-defined tasks
  • Researches fundamental problems and implements algorithm solutions that are appropriate
  • Offers peer technical assessments in areas of expertise, new technologies, and software designs
  • Participates in project leadership and/or program planning, including providing technical input to product development plans and concept documents
  • Makes substantial contributions toward determination of project goal/objective feasibility and applies good judgment in setting schedules/risk-taking
  • Contributes to advanced technical research on new technologies
  • Offers process improvement suggestions and authors new procedures as appropriate
  • Provides reliable solutions to a wide range of difficult problems using sound problem-solving techniques
  • Supports working hours as part of a rotating schedule to provide on-call support of Garmin's 24/7 operations
  • Automates routine tasks whenever possible
  • Supports software engineering applications installations and upgrades
  • Collaborates and adds value through participation in peer code reviews, providing comments and suggestions
  • Evaluates, integrates, administers, and supports new applications
  • Supports monitoring and testing of software engineering applications
  • Supports application server capacity planning, backups, and other server-based activities
  • Performs technical root cause analysis and outlines corrective actions for given problems
  • Estimates level of effort, evaluates new options of similar technology, offers suggestions to improve processes, and responds to infrastructure outages

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
  • Must possess proficiency in writing software in Python, Bash, C, C++, or other selected languages, and relevant experience and/or training in data structures or object-oriented design methodology
  • Proficient knowledge, utilization and mastery of relevant software engineering tools (configuration management systems, build processes, debuggers, emulators, simulators and logic analyzers)

Desired Qualifications
  • Administrative experience with Jenkins automation server or Zuul Continuous Integration
  • User-level experience with container/orchestrator technology like Docker or Kubernetes
  • User-level experience with static code analysis tools like SonarQube, CppCheck, or Clang
  • Working knowledge of Git-based source code management
  • Ability to work and collaborate across geographical and organizational barriers
  • Experience with embedded software test or development
  • Experience administering in Windows, Linux, and Mac OS
  • Experience working with the entire SDLC
  • Experience with cloud technology like OpenStack
  • Experience with Kibana, Grafana, or other analytic technology

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
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.