He received B.Sc. and M.Sc. degrees from the University of Auckland, and M.S. and Ph.D. degrees from Caltech. He has been actively involved in research on parallel computing for ten years and is currently writing a book on multithreaded programming.