He received the Ph.D. in Computer Science from BYU in 1995. His technical interests include network programming, distributed systems, the Java platform, and the Internet. Before coming to BYU, he spent seven years in Silicon Valley developing Internet applications and technologies for a variety of high-tech companies, including Sun Microsystems, Novell, and two Internet start-up companies. In addition to teaching at BYU, he also works with local software companies as a software development consultant.