John Whittington

Staff Research And Development Engineer at Specialized Bicycle Components

Cham, Zug, Switzerland
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts
email-iconphone-icongithub-logolinkedin-logotwitter-logostackoverflow-logofacebook-logo
Join Prog.AI to see contacts

Summary

🤩
Rockstar
🎓
Top School
John Whittington is a multidisciplinary Staff R&D Engineer with 11+ years of experience turning electro-mechanical concepts into market-ready products, currently leading innovation on Specialized’s TURBO e‑bike systems. He blends embedded firmware, Linux/SocketCAN tooling, BLE/Zephyr devices, and app development with hardware design to deliver end-to-end prototyping and production-ready platforms. A pragmatic technical leader, he has built internal CAN bus platforms, low-cost STM32 loggers, and a Rust cybersecurity shim while mentoring teams and overseeing contractor-built hardware/software. An active open-source contributor, his enhancements to widely-used projects like Arduino-Makefile and cantools reflect deep embedded and tooling expertise. Outside work he continuously prototypes personal projects and documents them on his blog and GitHub, combining maker curiosity with product-focused engineering.
code11 years of coding experience
job12 years of employment as a software developer
bookQueen Elizabeth's Hospital Bristol
bookMEng, Mechanical Engineering, 2:1, MEng, Mechanical Engineering, 2:1 at University of Bath
languagesFrench, German
stackoverflow-logo

Stackoverflow

Stats
427reputation
189kreached
12answers
1question
github-logo-circle

Github Skills (24)

c-language10
python10
testing10
makefile10
regular-expression10
log-parser10
parse10
can-bus10
cprogramming-language10
arduino10
gnu-make9
build-automation9
sys9
ctags9
embedded9

Programming languages (16)

C++RustCMakefileGoHTMLTypeScriptShell

Github contributions (5)

github-logo-circle
sudar/Arduino-Makefile

Jun 2017 - Jul 2021

Makefile for Arduino sketches. It defines the workflows for compiling code, flashing it to Arduino and even communicating through Serial.
Role in this project:
userEmbedded Systems Engineer / IoT Developer
Contributions:45 commits, 13 PRs, 114 comments in 4 years 2 months
Contributions summary:John primarily contributed to improving the `arduino-makefile` project by adding functionality to generate and manage tags files, crucial for code navigation and project organization. They extended the Makefile to include tags for various project files, libraries, and the Arduino core, enhancing the development workflow. Furthermore, the user improved the existing codebase by optimizing and refactoring code to reduce code duplication and made various improvements in the build process, along with added platform support.
arduinomakefile
cantools/cantools

Mar 2021 - Sep 2022

CAN bus tools.
Role in this project:
userBack-end Developer & QA Engineer
Contributions:6 commits, 2 PRs, 3 comments in 1 year 5 months
Contributions summary:John focused on enhancing the `cantools` library, primarily by extending its log reading capabilities. They added support for parsing PCAN trace files in various formats, which involved implementing regular expressions to extract data from log entries. Furthermore, the user addressed CLI usage issues and merged upstream changes to keep the project current. They also added tests for the new PCAN trace formats.
can-buspythonkcddbcsym
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial