I would argue that there isn't a **first** software engineer because I don't think that Software development is an [engineering discipline][1] to begin with. The American Engineers' Council for Professional Development (ECPD, the predecessor of ABET) has defined "engineering" as: > The creative application of scientific principles to design or develop > structures, machines, apparatus, or manufacturing processes, or works > utilizing them singly or in combination; or to construct or operate > the same **with full cognizance of their design; or to forecast their > behavior under specific operating conditions; all as respects an > intended function, economics of operation and safety to life and > property**. Engineers work with **materials** that follow **rules of physics** which are deterministic, there are not any **materials** in software development, and software, especially concurrent software is **not deterministic** by nature. The **bold** part of the quote above is where is my emphasis. Material based engineering can prove the behaviors of a design under any conditions because those conditions are finite because of the laws of physics. Even with critical systems software that run nuclear power plants, medical equipment and other control systems, there is no way to prove that the absence of bugs in a system because the behavior of the inputs of a system are not finite and thus the behavior of the system is not deterministic. [1]: http://en.wikipedia.org/wiki/Engineering