McIlroy earned his bachelor's degree in engineering physics from Cornell University,[5] and a Ph.D. in applied mathematics from MIT in 1959 for his thesis On the Solution of the Differential Equations of Conical Shells (advisor Eric Reissner).
[5] McIlroy joined Bell Laboratories in 1958; from 1965 to 1986 was head of its Computing Techniques Research Department (the birthplace of the Unix operating system), and thereafter was Distinguished Member of Technical Staff.
[5] In 1997, McIlroy retired from Bell Labs, and took a position as an adjunct professor in the Dartmouth College Computer Science Department.
[13] He also coauthored M6 macro processor in FORTRAN IV,[14] which was used in ALTRAN[15] and later was ported to and included into early versions of Unix.
[4][22] He was a member of the IBM–SHARE committee that designed the language[23] and, together with Robert Morris, wrote the Early PL/I (EPL) compiler in TMG for the Multics project.
[24][25] Around 1965, McIlroy, together with W. Stanley Brown, implemented the original version of ALTRAN programming language for IBM 7094 computers.
[15][10] McIlroy has also made a significant influence on design of the programming language C++ (e.g., he proposed the stream output operator <<).