Michael Hind is a Distinguished Research Staff Member and Senior Manager of the Programming Technologies Department at the T.J. Watson Research Center in Yorktown Heights, New York, which is part of IBM's Research Division.
Michael received his Ph.D. from New York University in 1991. From 1991 to 1993 he was a postdoc at IBM Research, working on PTRAN and other projects. From 1992-1998, Michael was an assistant and associate professor of computer science at the State University of New York at New Paltz, as well as holding various positions at IBM Research. In 1998, Michael became a Research Staff Member in the Software Technology Department at the IBM T.J. Watson Research Center, working on the Jalapeno project, the project that produced the open source Jikes RVM. In 2000, he became the manager of the Dynamic Optimization Group at IBM Research, and in 2007, became Senior Manager of the Programming Technologies Department at IBM Research.
Michael is an ACM Distinguished Scientist, an associate editor of ACM TACO, and a member of the IBM Academy of Technology. He has served on over 30 program committees, given talks at top universities and conferences, and co-authored over 40 publications. He received a SIGPLAN Most Influential Paper award (for his OOPSLA 2000 paper) and was part of the Jikes RVM team that received the SIGPLAN Software Award in 2012. His research interests include programming models, programming languages, and their implementations, static and dynamic development tools, and middleware for emerging commercial paradigms, all with a particular focus on cloud technologies.
The Programming Technologies Department performs leading research in the area of programming models and their runtimes, cloud and distributed computing, analytics, workflow, event processing, static and dynamic analysis tools, middleware for in-memory and distributed analytics, and the optimization of analytic applications. A particular focus of the department is to make software development and deployment more efficient and effective, while improving productivity of the organization and quality of the resulting software.
Department members have won several awards (ACM SIGPLAN Software Award; 3 Most Influential Paper Awards); been recognized as ACM Fellows and Distinguished Scientists, held numerous ACM and SIG positions, and served as general chairs, program chairs, and programming committees of major conferences. The department has successfully transferred technology and ideas to numerous IBM products and services, as well as built successful open source projects, such as Jikes RVM, WALA, and X10. The projects in the Programming Technologies Department span these areas:
- Cloud Programming Models and their Implementation
- Middleware for In-Memory Analytics
- Analysis, Tools, and Techniques for Improving the Security, Robustness, and Performance
- API Economy (Contact: Jim Laredo)
- API Harmony (Jim Laredo)
If you are interested in an internship, postdoc, or regular position in the Programming Technologies department, please submit a resume at Jobs at IBM, and contact Michael Hind or any of the contact names listed above.
Awards, Services, and Other Activities
- Co-Program Chair, OOPSLA'16 Artifact Evaluation Committee
- Co-Program Chair, OOPSLA'15 Artifact Evaluation Committee
- Member, ACM Publications Board Committee on Conferences, Jan 2014 - June 2014
- Member at Large, SIGPLAN Executive Committee, July 2012 - June 2015
- Chair, SIGPLAN Research Highlights Committee, July 2012 - June 2015
- Chair, SIGPLAN Software Award Committee, July 2012 - June 2014
- Member, NYU-Poly Enterprise Learning Board of Directors, 2012 - 2013
- SIGPLAN Programming Languages Software Award, 2012 for Jikes RVM
- General Chair, X10 Workshop at PLDI'11
- Most Influential OOPSLA'00 Paper Award
- PLDI Representative to SIGPLAN nominating committee for CACM Research Highlights, 2010 - 2012
- Guest co-Editor, IBM Journal of R&D, special issue on Multicore Software, 54(5), 2010
- ACM Distinguished Scientist, 2009
- General Chair, PLDI'09
- Tutorial Chair, PLDI'08
- Associate Editor, ACM TACO, Jan 2006 - present
- Steering committee, PLDI Conference, June 2008 - May 2012
- Steering committee, VEE Conference, June 2005 - April 2009, (chair June 2005 - August 2007)
- General chair, VEE'05
- General chair, Future of Virtual Execution Environments workshop, Sept 15-17, 2004. Full video available.
- Steering committee, MASPLAS (Mid-Atlantic Student Workshop on Programming Languages and Systems)
- General chair, MASPLAS'96, MASPLAS'01
- Program chair, MRE'03
- Advisory committee member, Computer Science Department, SUNY at New Paltz
- Why isn't the PL/SE Community Working on Cloud Computing?, Institue for Software Research, CMU, October 27, 2015
- Changing the Foundation: How the Multicore Era has Impacted Software and What the Future Holds, Invited Course, ACACES'14 summer school, July 13-19, 2014
- Changing the Foundation: The Impact of Multicore Architectures on Software SUNY New Paltz School of Science and Engineering Colloquium Series February 14, 2013.
- Teaching Programming Language Design and Implementation ... What? To Whom? How?, PLDI'11 Panel, June 8, 2011.
- The Impact of Multicore Architectures on Software: Disaster or Opportunity?, Invited Talk, University of Washington, October 20, 2009 (video). Also presented at Tokyo Tech Workshop (keynote), Ghent University, ICT (Beijing), and University of Illinois at Urbana-Champaign (2012).
- What Role Does Code Generation and Optimization Play for Multi-Core Enablement? CGO'08 Panel, April 8, 2008.
- Dynamic Compilation and Adaptive Optimization in Virtual Machines, Invited Course, ACACES'06 summer school, July 23-29, 2006
- Why Software Optimization Matters and Some Thoughts on How to Improve It, Invited Talk, University of Illinois at Urbana-Champaign, April 27, 2005, (Also presented at University of Colorado and Seoul National University)
- Virtual Machine Learning: Thinking like a Computer Architect, Keynote, CGO'05, March 21, 2005
- The Jikes RVM Story, Invited Talk, Red Hat Free Java Summit, MIT, November 18-19, 2004
- Using Jikes RVM to Understand the Hardware Performance of Java Applications, Keynote, MRE'03, March 23, 2003
- Pointer Analysis: Haven't We Solved This Problem Yet? Invited Talk, PASTE'01, June 18-19, 2001
Tutorials and Courses
- Changing the Foundation: How the Multicore Era has Impacted Software and What the Future Holds
- ACACES'14 4-day course, July 13-19, 2014
- Dynamic Compilation and Adaptive Optimization in Virtual Machines
- The Design and Implementation of the Jikes RVM Optimizing Compiler
- The Design and Implementation of the Jalapeno Research VM for Java PACT'01, September 9, 2001, Slides
- 2016: PLDI'16 EPC, ISMM'16 ERC, ICPP'16
- 2015: LCPC'15, PLDI'15 ERC
- 2014: MUSEPAT'14, CASCON'14
- 2013: SAC'13 (PL Track), ICPE'13, MUSEPAT'13, CASCON'13
- 2012: CASCON'12, SAC'12 (PL Track)
- 2011: X10 Workshop at PLDI, SAC'11 (PL Track)
- 2010: ASPLOS'10, PLDI'10 ERC, IWMSE'10, CASCON'10, SAC'10 (PL Track)
- 2009: HiPEAC'09, PACT'09, IISWC'09, CASCON'09,
- 2008: IISWC''08, CASCON'08, First Workshop on Programming Language Curricula
- 2007: WDDD 2007
- 2006: ASPLOS'06, PACT'06, CGO 2006, STMCS
- 2005: VEE'05, PLDI 2005, CGO 2005, MRE 2005
- 2004: ISSTA 2004, CC 2004, MRE 2004
- 2003: OOPSLA'03, Workshop on Exploring the Trace Space for Dynamic Optimization Techniques
- 2002: 4th Workshop on Binary Translation, JVM'02, ISSTA 2002, ECOOP'02 Workshop on Resource Management for Safe Languages
- 2001: FDDO'01