Cook did his undergraduate studies at Rutgers University, graduating in 1979 with a bachelor's degree in mathematics. After earning a master's degree in operations research from Stanford University in 1980, he moved to the University of Waterloo, where he earned a Ph.D. in combinatorics and optimization in 1983 under the supervision of U. S. R. Murty.[2][3] After postdoctoral studies at the University of Bonn, he joined the Cornell University faculty in 1985, moved to Columbia University in 1987, and in 1988 joined the research staff of Bell Communications Research. In 1994 he returned to academia as John von Neumann Professor at the University of Bonn, and in 1996 he moved to Rice University as Noah Harding Professor of Computational and Applied Mathematics. In 2002 he took his position at Georgia Tech.[2] In January 2013, he moved to the University of Pittsburgh as the John Swanson Professor of Industrial Engineering, before returning to the University of Waterloo in June 2013 as a professor in the Department of Combinatorics and Optimization, and subsequently University Professor.[2] From 2018-2020 he worked at Johns Hopkins University as a Professor of Applied Mathematics and Statistics.
He is the founding editor-in-chief of the journal Mathematical Programming Computation (since 2008), and the former editor-in-chief of Mathematical Programming (Series B from 1993 to 2003, and Series A from 2003 to 2007).[2]