James Devine is a Principal Software Engineer at Microsoft with 11 years’ experience building embedded systems, IoT security, and developer tooling that serve millions worldwide. He holds a PhD in Physical Computing from Lancaster University and has translated research into production—co-writing the BBC micro:bit runtime used by tens of millions and leading OS and tooling for Azure Sphere. James designed Jacdac, a plug-and-play microcontroller networking protocol now shipping in commercial education products, and champions accessible hardware through projects like MakeAccessible. He blends low-level expertise (I2C, Nordic porting, device daemons) with product leadership, having improved team productivity through an AI-first engineering culture. An awardee of the Queen Elizabeth Prize for Education and an active open-source contributor, he moves ideas from paper to global deployment while keeping a focus on lowering barriers to hardware innovation.
11 years of coding experience
8 years of employment as a software developer
GCSE and A Level, Maths, I.T, RM and Music, GCSE and A Level, Maths, I.T, RM and Music at Ranelagh C of E
Doctor of Philosophy (Ph.D.), Physical Computing, Doctor of Philosophy (Ph.D.), Physical Computing at Lancaster University
Contributions:5 reviews, 8 commits, 19 PRs in 4 months
Contributions summary:James primarily focused on updates and enhancements to the Azure Sphere device API, as demonstrated by the code changes in Python and C#. The contributions include version updates, and improvements to the device API package. Several commits indicate the user's involvement in the testing and validation of the network proxy and certificate functionalities. The work focuses on Azure IoT integration and device management.
Arm Mbed OS is a platform operating system designed for the internet of things
Role in this project:
Embedded Systems Engineer / IoT Developer
Contributions:5 commits, 5 PRs, 16 comments in 3 days
Contributions summary:James primarily contributes to the Nordic-specific implementations within the mbed-os repository. Their work involves fixing I2C bus lockup issues on Nordic nRF51822 platforms, adding support for the BBC micro:bit platform based on NRF51822, and updating I2C definitions for the Wallbot platform. These changes include modifying pin definitions and platform configurations, demonstrating a focus on low-level hardware interaction and target platform integration.
kernelmbed-osoperating-systemlinuxmbed
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
James Devine - Principal Software Engineer at Microsoft