Kevin S.
Software Developer at Stages Cycling- Claim this Profile
Click to upgrade to our gold package
for the full feature experience.
Topline Score
Bio
Credentials
-
R Programming
CourseraJul, 2014- Nov, 2024 -
Machine Learning
CourseraMay, 2014- Nov, 2024
Experience
-
Stages Cycling
-
United States
-
Wellness and Fitness Services
-
1 - 100 Employee
-
Software Developer
-
Jan 2017 - Present
Dash bike computer: Embedded C and C++ (as well as some python and Lua) Development for GPS cycling computer with rf-connectivity to Bluetooth and Ant+ peripheral sensors, as well as Wi-Fi. Full-stack development from low-level drivers up to UI. A huge amount of debugging and automated test work as well. Also developed internal apps to speed-up local testing and development. Smart bike: Embedded C and C++ development for an intelligent indoor bicycle, connectivity and control with peripherals. Full-stack, from developing physical and mathematical models to simulate resistance of outdoor riding, to low-level drivers, and connectivity to controllers and displays. Show less
-
-
-
Phase Change Software LLC
-
United States
-
Software Development
-
1 - 100 Employee
-
Mathematical Engineer
-
Jun 2015 - Jan 2017
- Designing and implementing of a conflict driven clausal learning SMT solver as part of a small team. An SMT solver is a program for testing satisfiability of a first-order-logic formula including variables and operations on a variety of domains (integer, real, string, etc.). This also involves combining the satisfiability modulo each domain's theory into the satisfiability of the formula as a whole. I also designed and implemented of heuristics to improve performance in practice (the problem is NP-hard in theory). (Coding in Prolog) - Designing, developing and integrating real number and string decision procedures for SMT Solver. Involves parsing and evaluating equations involving domain-specific operations and finding a satisfying assignment should such exist; proving unsatisfiability otherwise. (Coding in Prolog) - Designing and implementing abstract interpreter (interval and affine space domains) to perform fixed-point analysis of loops in context of a symbolic executor. These modules translate concrete integral values to abstract constraints (closed intervals and affine constraints between variables, respectively). Building an interpreter of a turing-complete language with respect to these abstract domains. (Coding in Clojure) Show less
-
-
Education
-
University of Colorado Boulder
Doctor of Philosophy (Ph.D.), Mathematics -
University of Colorado Boulder
Master’s Degree, Mathematics -
University of Colorado Boulder
Bachelor’s Degree, Mathematics and Computer Science