This topic has been floating around my head the past week. The strange part about it is that my reason for thinking about this happened months ago over the summer. I really didn’t think anything of it at the time.
I was at a large multi-family function. My family was there as my wife is a cousin of a cousin or something along those lines. We were all sitting around a cooler late one night, just talking. One of the gentlemen there makes his living as a Civil Engineer. I brought up the fact that at my job, I am referred to as an Engineer. Systems Engineer, Virtualization Engineer. Whatever you wish to call it, it’s all the same. Now, while he was extremely polite about it, he seemed offended that someone would go around calling them self an Engineer “when they are not.” At the time I really didn’t think anything of it. He stated that he went to school to learn what he knows, and has to keep up his certifications to keep doing what he does. I went to school for Systems Engineering. I have certifications that expire that I have to keep up with. Does that not count?
Let’s look at the definition of Engineering:
The branch of science and technology concerned with the design, building, and use of engines, machines, and structures.
Science and Technology. Technology being a key word there.
Design, building, and use of engines, machines, and structures.
I design, build, and use machines. Are compute / storage / networking / etc not considered machines in a sense?
I have been doing a lot of studying on consulting and design methodology lately. Prepping for the advanced vmware horizon design certification exam that is soon to be relased. I didn’t start revisiting this conversation in my head until I started digging into these topics. I guess realizing what kind of “Engineering” went into designing VMware environments made my wheels start turning again.
Let’s look at how a Civil Engineer might go about widening an existing road. They’re not going to just run in and have at it with heavy machinery, are they? No. They’re going to do a study first. How many cars come through there on a given day? Is there a bad traffic backup during rush hour? Do we need 2 lanes or 3 lanes in each direction? That is the assessment. Do we think traffic will exponentially grow within X number of years? Should we plan the road bigger than we need to accommodate right now? That is capacity planning. How about the existing road. Is there any of it that we can re-use? Can we simply expand the existing road, or do we need to build all new road? Is there a creek that the existing road goes over that a bridge will need to be built for? This is design work. Can I re-use existing compute / networking / storage equipment, or do I need to go with all new hardware? This is also design work. Blueprints? Geographic Surveys? Soil Surveys? How about Pictures of the existing Data Center space? Visio documents of logical and physical design? Detailed information on the existing build? Sounds to me like a lot of the same info, just a little bit different in what they need. Could consulting information such as Requirements, Constraints, Risks, and Assumptions be needed in both the road and the system scenario? Absolutely.
Would a Civil Engineer that designs and builds roads and bridges think that an Aerospace Engineer who designs and builds rockets is not an Engineer? Probably not. So why would a Civil Engineer think that a Systems Engineer who designs and builds complex, highly-available computer systems, is not an Engineer?
Now I know that this 1 person doesn’t think or speak for all “real engineers”. I’m sure plenty of “real” engineers are perfectly fine with Systems Engineers being called as such. But I also believe that there are quite a few that think that simply “playing with computers” all day doesn’t involve any bit of “real” Engineering. Does that come from a simple lack of understanding about how complex technology can be? Or they possibly just think that sitting on a computer all day simply isn’t the same as going outside and getting your hands dirty?
I’d love to hear what everybody’s input is on this topic. Any and all viewpoints are welcome. Thanks for reading!