Job Summary:
Garmin is a leading technology company seeking a full-time Senior Java Software Engineer at their U.S. headquarters in the Greater Kansas City area. In this role, you will provide technical leadership and project planning for software development, working on new products and applications as an individual contributor.
Responsibilities:
• Serves in a leadership capacity as an individual contributor for carrying out software development in Java for new products and/or applications
• May serve as a Lead Software Engineer for 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
• Offers peer technical assessments in areas of expertise, new technologies and software designs
• Assists design engineering as needed with component datasheet review and schematic design review
• 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
• Mentors and provides guidance to less experienced Software Engineers (1 & 2)
• 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 operation
Qualifications:
Required:
• Bachelor’s Degree in Computer Science, Computer Engineering, Software Engineering, Math, Physics or related field AND a minimum of 5 years relevant experience OR an equivalent combination of education and experience
• Demonstrated experience in successful implementation of technology solutions
• Must demonstrate proficiency and possess the experience necessary to design, enhances and develops complex multi-system applications
• Must demonstrate an ability to learn and understand secure coding practices
• Demonstrated proficiency in writing software in developmental languages (Java, SQL, PL/SQL)
• Experience with version control systems (GIT)
• Demonstrated ability to work collaboratively to drive projects to effective/timely completion
• Demonstrated strong and effective verbal, written, and interpersonal communication skills
• 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
Preferred:
• REST API, Microservices architecture with Spring Boot
• Java 11 or higher
• Test Tools including Junit, Mockito and JMeter in implementing unit tests and integration test suites.
• Previous experience working in a team environment
Company:
WHERE DO WE START? How about Kansas City? That’s our home. That’s where Garmin put a stake in the ground in 1989. Founded in 1988, the company is headquartered in Nanterre, FRA, with a team of 10001+ employees. The company is currently Late Stage.