Russell C. Hadley
SUMMARY
Compiler backend & language designer with demonstrated experience in implementing and delivering production quality development tools optimized for unique problems and platforms.
PROFESSIONAL ACCOMPLISHMENTS
Microsoft Corporation, Redmond, Washington
9/05 – present Senior Software Development Engineer
Senior individual contributor responsible for design and implementation of new phases and algorithms in the next generation Phoenix compiler. Areas of contribution include:
- Function inlining
- Function alias info merging
- IR idiom pattern matching language and infrastructure
- Post-lower SSA idiom optimizer
- Global Register Allocator
- ARM machine target architecture
- Framework logging infrastructure
Equator Technologies Inc., Campbell, California
11/04 – 7/05 Senior Compiler Engineer
Senior team member working on bringing Equator’s proprietary compiler technology to market; focusing on back end code correctness and performance.
- Developed new alias analysis pass on low level intermediate representation
- Code generation improvements for Equator’s VILW architecture.
- Added intermediate representation legalization pass.
Barcelona Design Corporation, Sunnyvale, California
11/02 – 10/04 Manager Software Development
Chief architect, developer, and project manager for domain specific object oriented programming language and environment.
- Defined domain specific optimization language based on requirements of internal user community. Key features included:
- Object based
- First class functions
- Generics
- Delayed evaluation
- Advanced debugging features
- Recruited team to implement language
- Specified software development and QA methodology
- Individual contributor for interpreter, debugger and command line interface
- Implemented and delivered domain language and libraries on time and budget
BSQUARE Corporation, Bellevue, Washington
9/96 – 9/02 Senior Software Engineer
Key team member on ports of the Microsoft UTC compiler back end to RISC platforms for the WindowsCE OS. Platforms included ARM/Thumb, SH3, SH4, SHmedia(SH5), TriCore, PowerPC, and MIPS.
- Implemented machine dependent optimizations to exploit processor features.
- Developed new approach to capture data dependency in SSA of values in heterogeneous register sets to improve dead code elimination, copy propagation, and register allocation.
- Extended global optimizer to recognize more opportunities to address performance on RISC architectures.
- Improved code generation to exploit SIMD instructions available in WindowsCE RISC architectures.
- Contributor for global expression and loop optimizations, code generation, register allocation, dataflow analysis, scheduling, constant and copy propagation, and flow optimizations.
- Developed and implemented testing tools and tests to verify quality of the compiler back end.
- Mentored and trained new engineers in technology and professional practice.
SKILLS
- Proven leader
- Software Development Methodology
- Programming language design
- ARM/Thumb, SH3, SH4, SHmedia(SH5), TriCore, PowerPC, and MIPS assembly language
- Code generation
- Global compiler optimization
- Instruction set architecture dependent optimization to exploit processor features.
- Code benchmarking.
PROFESSIONAL AWARDS/AFFILIATIONS
- BSQUARE All-Star Award; Awarded August 2001
- Association of Computing Machinery (ACM), ACM SIG Programming Languages (SigPLAN)
PROFESSIONAL INTERESTS
- Optimization techniques
- Programming language design
- Algorithms and data structures
- High quality software
EDUCATION
- Bachelors of Science in Computer Science, Norwich University, Northfield, Vermont 1996
References available upon request.