Prior to coming to CMU, he was a post-doctoral researcher at U.C. Berkeley working with Pieter Abbeel. He completed his Ph.D. in Computer Science at Stanford University with Sebastian Thrun and Silvio Savarese, where he developed methods for perception for autonomous vehicles. David has also worked as an intern on Google’s self-driving car team, and he has worked at the Weizmann Institute on building a robotic octopus. David has a B.S. and M.S. in Mechanical Engineering at MIT.