Duncan Macgregor

Principal Software Engineer at GE Energy

Cambridge, England, United Kingdom
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
Duncan Macgregor is a Principal Software Engineer based in Cambridge with over a decade of experience implementing dynamic languages and low-level VM features on the JVM. Now at ServiceNow and formerly with Oracle Labs, he has deep expertise in GraalVM, TruffleRuby, and OpenJDK Loom—contributing performance-critical fixes, intrinsics, and native C-API work that bridge Ruby semantics and JVM internals. He combines hands-on Java and C development with test-driven specification work, improving string/format handling, arithmetic primitives for LLVM, and virtual-thread support. Duncan’s contributions to high-profile open-source projects like TruffleRuby, Graal, and Loom demonstrate a rare mix of language runtime design and practical engineering. Colleagues rely on him to tackle subtle edge cases and optimize cross-language interoperability in production systems.
code10 years of coding experience
job5 years of employment as a software developer
stackoverflow-logo

Stackoverflow

Stats
1reputation
0reached
0answers
0questions
github-logo-circle

Github Skills (38)

postgresql10
jvm10
graalvm10
llvm10
testing10
databases10
capi10
c1110
java10
ruby10
c1710
javas10
truffleruby10
openjdk10
database10

Programming languages (7)

C#JavaCJavaScriptPerlRubyEmacs Lisp

Github contributions (5)

github-logo-circle
oracle/truffleruby

Jan 2017 - Sep 2022

A high performance implementation of the Ruby programming language, built on GraalVM.
Role in this project:
userBack-end Developer & Java Developer
Contributions:1 review, 1819 commits, 154 PRs in 5 years 8 months
Contributions summary:Duncan's commits primarily involve modifications and additions to the TruffleRuby project, specifically focusing on implementing and improving core Ruby functionalities. The user implemented and maintained various native functions, like `rb_tr_sprintf`, and expanded capabilities to handle value comparisons with nil and other edge-cases. The work included refactoring various parts of the codebase and also optimizing string splitting and format processing. These changes required modifying C source files as well as working with Java code.
trufflerubyperformancegraalvmjruby
ruby/spec

Jan 2017 - Aug 2022

The Ruby Spec Suite aka ruby/spec
Role in this project:
userBack-end Developer & Test Automation Engineer
Contributions:153 commits in 5 years 8 months
Contributions summary:Duncan primarily contributed to the ruby/spec repository by adding and modifying specifications for various C-API functions related to string manipulation, numeric conversions, and other core Ruby functionalities. They focused on ensuring the correctness and comprehensive testing of different C-API functions. Their work involved updating existing test suites to cover edge cases and provide proper validation for specific functionalities.
ruby-gemmspecrailsrubyspec
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
Duncan Macgregor - Principal Software Engineer at GE Energy