Two types of software engineers
Both Type 1 and Type 2 describe engineers who acknowledge that their software is part of a larger system run by humans for some purpose. Type 1 and Type 2 make a different decision about where to draw the boundary between the software and the people.<p>In my experience there are far, far more Type 3s: Software engineers that completely ignore the system that the software is a part of, and myopically assume that the only solution to any problem is more software.