He received both his M.S. and Ph.D. degrees in Computer Science from Cornell University and his Diplom-Informatiker degree from the University of Karlsruhe, Germany. He was a visiting scholar at the Stanford Robotics Lab and Transducer Lab and a postdoctoral researcher at the University of California, Berkeley, before joining the faculty at the University of Washington.