Craig has spent extensive time in both academia and industry. He founded four software companies and has served as part of senior management for three others, including taking one company public.
He was a physics and philosophy double major for his undergraduate degree from Bowdoin College and did his doctoral work with Daniel Jackson and Jeanette Wing at Carnegie Mellon University, where he found the CS education group and served as the student representative to the School of Computer Science Doctoral Review Committee, where he helped redefine the requirements for the PhD program. Daniel Jackson has continued working on the research Daniel and Craig started together at CMU, with the current manifestation, Alcoa, winning Software Engineering tool of the year from the International Conference on Software Engineering (ICSE) in 2015.
He has taught at the University of Vermont, where he created the PhD program in Computer Science and added a project based track to their existing MS/CS program. When he left UVM, he founded the CIS program at Vermont Technical College. A decade later, he developed the MS/SE program, the first graduate program in Vermont Tech’s history.