We are seeking a full-time Senior Software Engineer (Java Services) in our Olathe, KS location. In this role, you will be responsible for providing technical leadership and project planning for software development for products, applications, or systems new to Garmin.
Essential Functions
Serves in a leadership capacity for carrying out software development with high scalability, supportability and reliability. Utilizes Java, Spring Framework, Spring Boot, Spring MVC, Spring Rest, JDBC, SQL Server, Rabbit MQ, Kafka or other selected languages for new products and/or applications
Responsible for performing builds and deployments to various testing and development environments
May serve as a Lead Software Engineer for a complex software development project Designs and/or reviews architected modules and software systems supporting new technology or improving capability/performance of existing functionality
Decomposes functional requirements into well defined tasks
Researches fundamental problems and implements algorithm solutions that are appropriate
Balances quality, quantity and complexity in work output
Comfortable with developing on Mac
Offers peer technical assessments in areas of expertise, new technologies, software designs and code reviews
May work with software vendors to integrate externally developed deliverables into project
Evaluates new technologies as they apply to existing functions
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
Independently determines general approach and specific solutions to technical problems
Offers process improvement suggestions and authors new procedures as appropriate
Supports working hours as part of a rotating schedule to provide on call support of Garmin's 24/7 operations
Basic Qualifications
Bachelor's Degree in Computer Science, Computer Engineering, Software Engineering, Information Technology, Management System Information or related fields AND a minimum of 5 years relevant experience OR an equivalent combination of education and relevant experience
Demonstrates proficiency with designing well architectured software systems and modules that support new technology or improve capability/performance of existing functionality
Must demonstrate competence with researching fundamental problems and implementing appropriate solutions
Demonstrated ability to serve as a lead software engineer for a complex software project
Must possess the ability to decompose functional requirements into well defined tasks while balancing quality, quantity and complexity in work output
Demonstrated capability to offer technical assessments in areas of expertise, new technologies and software designs
Must possess proficiency in writing software in Java, Spring Framework, Spring Boot, Spring MVC, Spring Rest, JDBC, SQL Server, HBase, Elasticsearch, Rabbit MQ, JMS, Redis, Memcached, Docker, FIT SDK, Kafka as appropriate for performing the essential functions of this job description
Must possess relevant experience and/or training in data structures or object oriented design methodology relevant to Garmin's business needs
Must possess relevant education and/or experience in software design, development and maintenance, as required for the successful performance of the essential functions of the position
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