Senior Algorithms Software Engineer (Data Scientist)

Garmin Ltd
Olathe, United States of America
29 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

Olathe, United States of America

Tech stack

Algorithm Design
Data analysis
C++
Code Review
Collaborative Software
Computer Engineering
Software Debugging
Embedded Software
Global Positioning Systems (GPS)
Inertial Navigation Systems
Python
Linear Regression
Machine Learning
Microsoft Dynamics
Sensor Fusion
Signal Processing
Software Engineering
Reinforcement Learning
Garmin
Deep Learning
Information Technology
GNSS
Programming Languages

Job description

  • Design, develop, and advance innovative algorithms that utilize sensors, including accelerometers, gyroscopes, magnetometers, and barometric pressure sensors.
  • Explore novel and cutting-edge sensors and algorithms technologies and applications.
  • Collaborate with team members and other developers in algorithm development, technical assessments in areas of expertise, peer code reviews, and software design.
  • Participate in project leadership and planning, including aligning with project stakeholders and providing technical input to development plans.
  • Develop embedded software solutions, primarily in C++ and C, to be used throughout Garmin's extensive ecosystem of consumer electronics products, including smartwatches, cycling computers, and more.
  • Coordinate closely with team members and product team engineers across Garmin to integrate and maintain algorithm solutions that serve our customers.
  • Perform significant mathematical, statistical, and data analysis as part of the algorithm development process.
  • Evaluate and understand various design tradeoffs including power consumption, cost, system constraints, reliability, and time to market.
  • Offer process improvement suggestions and author new procedures as appropriate.
  • Mentor less experienced Software Engineers, providing technical expertise and guidance.

Requirements

  • Bachelor's Degree in Computer Science, Electrical Engineering, Computer Engineering, Software Engineering, Aerospace Engineering, Math, Physics or related field AND a minimum of 5 years 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)
  • Experience with real-time signal processing on sensor data.
  • Proficiency in writing software in C and C++ on embedded processors.
  • Use of Python for signal processing, visualization, and statistical analysis.
  • Experience with collaborative software development in a team environment
  • Strong and effective verbal, written, and interpersonal communication skills.
  • Strong quantitative, math, statistics, physics, and dynamics knowledge., * Outstanding academics (cumulative GPA greater than or equal to 3.5)
  • Experience with inertial sensors, magnetic, and/or barometric pressure sensors.
  • Experience with sensor fusion, time series analysis, Kalman filtering, and/or digital signal processing (DSP).
  • Experience with data science, statistics, linear regression, deep learning, reinforcement learning, and/or other machine learning techniques.
  • Experience with attitude and heading reference systems (AHRS), altimeter systems, GPS/GNSS positioning solutions, and/or inertial navigation systems (INS).
  • Experience working on multiple simultaneous development projects.
  • Experience debugging complex problems on embedded systems.
  • Interest and ability to learn other coding languages and relevant algorithm development skills as needed.
  • Excitement to create and deliver algorithms for runners, cyclists, hikers, golfers, athletes, fitness buffs, and any person seeking to beat yesterday.

Apply for this position