Rahil Shah is an experienced software developer and hardware-savvy engineer with nine years in industry, currently an Advisory Software Developer at IBM Canada. He blends deep expertise in computer architecture, JIT compilers, and hardware verification with hands-on systems work—contributing performance and correctness fixes to high-profile open-source JVM projects like Eclipse OMR and OpenJ9. Prior roles at IBM include JIT and staff developer positions where he delivered low-level optimizations for code generation, garbage collection, and runtime memory management. Rahil also brings practical teaching and mentorship experience from academia, having led student teams and developed embedded systems and robotics projects as a lecturer. His dual master’s background in electrical and computer engineering and a track record across embedded hardware and VM internals make him comfortable straddling silicon-near design and production-grade software. An interesting through-line: he moves seamlessly from lab benches and power-electronics prototypes to upstream open-source performance patches that impact JVM runtimes.
9 years of coding experience
7 years of employment as a software developer
BE, ELECTRICAL, BE, ELECTRICAL at The Maharaja Sayajirao University of Baroda
Master of Engineering (MEng) in Electrical and Computer Engineering, Computer Engineering and Hardware Design, A+, Master of Engineering (MEng) in Electrical and Computer Engineering, Computer Engineering and Hardware Design, A+ at Concordia University
Master’s Degree, Electrical and Computer Engineering, 3.9 out of 4, Master’s Degree, Electrical and Computer Engineering, 3.9 out of 4 at University of Waterloo
Eclipse OMR™ Cross platform components for building reliable, high performance language runtimes
Role in this project:
Back-end Developer
Contributions:201 reviews, 75 commits, 78 PRs in 6 years 3 months
Contributions summary:Rahil primarily worked on optimizing and fixing issues related to the Eclipse OMR runtime environment. Their contributions include addressing platform-specific issues and implementing improvements to memory management and code generation. The user's commits focused on resolving bugs in the Z platform's scratch register manager, handling edge cases in tree traversal functions, and correcting constant handling in code generation. Furthermore, the user increased constant data snippet limits and refactored the float/double remainder helper functions.
Eclipse OpenJ9: A Java Virtual Machine for OpenJDK that's optimized for small footprint, fast start-up, and high throughput. Builds on Eclipse OMR (https://github.com/eclipse/omr) and combines with the Extensions for OpenJDK for OpenJ9 repo.
Role in this project:
Back-end Developer
Contributions:518 reviews, 87 commits, 133 PRs in 5 years 3 months
Contributions summary:Rahil's commits primarily involve modifications and enhancements to the Eclipse OpenJ9 JVM, focusing on low-level aspects such as the Just-In-Time (JIT) compiler and garbage collection (GC). Their contributions include changes to the JIT helper dispatch function for optimized helper calls, implementation of an on-site circular buffer for instanceOf tests, and improvements to the value profiling trees. They have also updated JIT helpers to fix argument orders and enhanced code for Constant Dynamic support. The user's work directly impacts JVM performance and optimization.
runtimecompilerextensionseclipseomr
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
Rahil Shah - Advisory Software Developer at IBM Canada