Mail ExchangeSteve:
I enjoyed reading both your columns in the July/August newsletter (about engineers and the industry). At least they inspired me to write!
I've had some of the same thoughts about people calling themselves engineers who took a short course from Microsoft (or sometimes not even that). In some states you are not allowed to call yourself an engineer unless you are registered; in California you cannot call yourself a few specialties (civil, mechanical, electrical; one or two others) or offer to practice engineering for the public if you are not registered, but "MCSE," "Domestic Engineer," etc. are OK. "Software Engineer" is now a registration available in Texas, though there is no recognized body of knowledge that candidates can be tested to! I'm a little disappointed that you seem to equate Computer Science to Software Engineering to Programming. Though it is true that most ads you see in the paper for "Software Engineers" really want programmers (and for "Software Quality Assurance" usually want testers...but that's another subject), they really are distinct. We can discuss this in more detail if you want, but programming is only a very small part of software engineering, compared to requirements analysis, architecture, design, testing, maintenance, configuration management, and a number of other sub-specialties. And software engineering is either a small part of computer science or completely distinct.
It's gratifying that you recognize how much of aerospace engineering is now information-related. The current issue of the MIT Aero & Astro Alumni newsletter says that MIT is emphasizing information technology much more heavily in the aero/astro program now. BTW when I was Section chairman I added the Information Technology category to the Engineer of the Year awards for the same reasons...that was 12 years ago now.
Your observations about engineers in Britain are right on. The British still divide themselves into classes, and engineering is a "trade" compared to, say, lawyers and doctors, which are "professions." Thus engineers are much less respected and much, much lower paid than professions in Britain, or than engineers in the US. You really have to be dedicated to be an engineer in Britain--which of course is why so many have left to go to the US, Canada, or Australia.
I don't know that the decline in engineering enrollments is due to the commandeering of the title by non-professionals. I think it might have more to do with how much more money stockbrokers, lawyers, etc. make, and with how difficult the engineering curriculum is.
Merlin
Thank you for the excellent reply, Merlin!
I had hoped my article on Engineering would generate some controversy but you are the first to respond. I probably toned it down a bit too much so as not to offend my Software- and Sales Engineer friends.
Actually, I consider Software Engineering to be a legitimate branch of engineering, I just feel that the practice and the education requirements should be better defined. I also feel that if lives are going to depend on software,the engineers should be licensed when appropriate.
My software-writing friends were Computer Science majors in those days. Of course, CS involves more than just software. They also learned computer architecture, machine language and systems engineering. But I agree that software engineering can indeed be distinct from good old fashioned programming, although I suspect (I could be wrong) that Companies, in most cases, are usually looking for people to actually write code. At least that is the impression I have received from my friends in the field. Maybe "software engineering" can be defined as a branch of engineering that includes the sub-specialties you talked about in the same way "aerospace enineering" includes structures, controls, fluids etc.
Steve
Actually, I consider Software Engineering to be a legitimate branch of
engineering, I just feel that the practice and the education requirements
should be better defined. I also feel that if lives are going to depend on
software,the engineers should be licensed when appropriate.
Have you ever jumped into the middle of a minefield here! I can easily argue both sides of this issue, but it "can be shown" that licensing or even certifying software engineers (since few if any offer their services to the public) will serve only to transfer some of the legal liability for damages from the employer to the employee. And why would we want to do that??
Glad to discuss this further (either or both sides of the issue), as well as point you to some web resources, if you like.
Merlin
That's a good point but then that is the essence of being a professional. If I am a licensed Civil Engineer and the hotel walkway I helped designed collapses and kills 110 people I SHOULD be held liable.
Let me clarify the software issue: I bet I could go to Homestead High School in Cupertino, find a pimply-faced 16 year old that can write code in JAVA or C++ better than any EE or CS graduate. I could dress him up in a suit and send him to any number of these new internet startups and, if he was good enough, I bet they would take him for one of their advertised "software Engineer" positions!!
Now contrast that with an "electrical engineer." An electrical engineer is expected to have a 4 year college degree where she is required to learn, among other things, the physics of semiconductors, circuit theory, how to understand and utilize op amps, communications, and antenna design. Further, she also learns mathematics, economics, design and an appreciation for the "profession." Only then would she be considered an electrical engineer and be able to contribute to Lam Research, Hewlitt Packard or Cisco. Now of course that 16 year-old high school student may also be top notch at wiring circuits...but he is NOT an electrical engineer!
Now of course I AM exaggerating! I know that most reputable companies would still expect there computer and software people to be college grads but in this tight labor market I sometimes wonder....
Steve
Let me clarify the software issue: I bet I could go to Homestead High
School in Cupertino, find a pimply-faced 16 year old that can write code in
JAVA or C++ better than any EE or CS graduate. I could dress him up in a
suit and send him to any number of these new internet startups and, if he
was good enough, I bet they would take him for one of their advertised
"software Engineer" positions!!
Who is better situated to decide who is qualified to be an electrical engineer or software engineer--an employer, whose market success and freedom from lawsuits depends on hiring good people, or an arbitrary private or state agency with nothing on the line? Again, if you are offering services to the public, that's different. But Intel or Microsoft can't make too many hiring mistakes or they will be out of business due to either poor sales or lawsuits.
IEEE and ACM are working on various certification schemes, and
I'm part of one of them, so I'm not 100% against it; I can argue
either side of this, and I'm playing Devil's Advocate to some extent.
You might want to have a look at some on-line articles by Tom DeMarco,
well-known software guru:
http://www.atlsysguild.com/GuildSite/TDM/certification.html
http://www.atlsysguild.com/GuildSite/TDM/Professionalism.html
Merlin
Merlin,
Great articles. Tom DeMarco pulls no punches. As a person with libertarian leanings, I TOO am disturbed by the need to government-regulate everything about us, but my experience in England still haunts me.
I also have to confess that I have a slight bias toward writing code. I respect and revere the profession and the those who make a living at it, but it's just not MY sack of snakes. I CAN write software. It is a part of any modern engineer's normal routine. I'm pretty damn good in FORTRAN. I spent three years of grad school writing code for my thesis. Occasionally, when a particularly smart routine cranked out the expected results, I felt extreme jubilation. The rest of the time, however, I was banging my head against the keyboard screaming, "How can anybody LIKE this?"
I think there may be another lingering issue, particular to Silicon Valley: A resentment against the Information Technology engineers on the part of the "hardware" engineers. We all know our ridiculous housing prices have resulted from the incredible employment demands of the new internet and software companies. The high-paid software and EE types argue over which house will be within walking distance of University Avenue. The rest of us are bidding on two-bedroom condos, 45 minutes down 85. We are becoming a two-tiered technology work force with upper-class IT folks in one neighborhood and the rest of the engineers (civil, structural, mechanical, aerospace) somewhere else. (This, of course, says nothing of the teachers, police officers and others who will be pushed out first.)
I believed that going to college and becoming an engineer would set me apart from the crowd. It sounds silly and materialistic, but that is the way 17 year olds think. Certainly my main reason for studying engineering was my love of science and airplanes, but a higher-than-usual salary was also appealing. What I didn't count on, however, was that I would end up in an area where many people, far more gifted, had the same idea. I think when I describe engineers as the new labor force, this is what I am talking about.
When I give tours of NASA to kids, I am excited by the look of awe on their faces as they walk through an immense wind tunnel or inspect an aircraft model. I know what they are thinking, because I used to feel the same way. At least a few of them want to design airplanes, fly space shuttles, build rocket engines. I have to bite my tongue to keep from telling them that it is unlikely they will ever be able to do that sort of thing. The industry drive to emphasize "High Tech Careers" is really about computers and the software that serves them. If the kids are NOT into computers, they are out of luck.
Steve
Great articles. Tom DeMarco pulls no punches. As a person with
libertarian leanings, I TOO am disturbed by the need to government-regulate
everything about us, but my experience in England still haunts me.
I'm not clear how regulation/certification would help that...
I also have to confess that I have a slight bias toward writing code. I
respect and revere the profession and the those who make a living at it,
but it's just not MY sack of snakes. I CAN write software. It is a part of
any modern engineer's normal routine. I'm pretty damn good in FORTRAN. I
spent three years of grad school writing code for my thesis. Occasionally,
when a particularly smart routine cranked out the expected results, I felt
extreme jubilation. The rest of the time, however, I was banging my head
against the keyboard screaming, "How can anybody LIKE this?"
Again I want to emphasize the difference between "writing code" and software engineering. One of my pleasant duties as Section Chair more than 10 years ago was to attend the opening ceremonies for the NAS. There were many papers presented on CFD, on simulation in general, etc., but one I particularly remember on problems with CFD code. As the codes got larger and more complicated, guess what--the same issues that plague embedded systems show up in simulation code as well. Few physicists, engineers, chemists, etc. get any training in how to analyze, design, and test software. As a result, much of the code they write is error-filled, hard to use, unmaintainable, etc. Of course not too many people want to "spend the extra time"--they just want to hack code. However I can tell you that developing software is a lot more fun if you can avoid the problems that come from poor (or no) software engineering. The tragedy is that we know how to do software right, but we don't do it.
I think there may be another lingering issue, particular to Silicon
Valley: A resentment against the Information Technology engineers on the
part of the "hardware" engineers. We all know our ridiculous housing prices
have resulted from the incredible employment demands of the new internet
and software companies. The high-paid software and EE types argue over
which house will be within walking distance of University Avenue. The rest
of us are bidding on two-bedroom condos, 45 minutes down 85. We are
becoming a two-tiered technology work force with upper-class IT folks in
one neighborhood and the rest of the engineers (civil, structural,
mechanical, aerospace) somewhere else. (This, of course, says nothing of
the teachers, police officers and others who will be pushed out first.)
Well we've got quite a few mechanical engineers at Cisco who are doing quite well, thank you...but you are right in general, the supply/ demand equation has been distorted all out of proportion for Electronic and software engineers, while other specialties like aerodynamics, aerospace vehicle design, etc. are going begging. You are probably too young to remember "engineering recessions" when all kinds of engineers, all over the country, found themselves in oversupply and wound up driving taxis or selling pizzas. And we engineers too often forget the non-technical types who can't make enough money to live anywhere in or near Silicon Valley.
I believed that going to college and becoming an engineer would set me
apart from the crowd. It sounds silly and materialistic, but that is the
way 17 year olds think. Certainly my main reason for studying engineering
was my love of science and airplanes, but a higher-than-usual salary was
also appealing. What I didn't count on, however, was that I would end up in
an area where many people, far more gifted, had the same idea. I think when
I describe engineers as the new labor force, this is what I am talking
about.
Can't help wondering why NASA doesn't move all its work force out of the Bay Area. Move them all to Lewis (now Glenn???) or Langley. Pay them less and they can still live very well. Sell the property and add it to the NASA budget.
When I give tours of NASA to kids, I am excited by the look of awe on
their faces as they walk through an immense wind tunnel or inspect an
aircraft model. I know what they are thinking, because I used to feel the
same way. At least a few of them want to design airplanes, fly space
shuttles, build rocket engines. I have to bite my tongue to keep from
telling them that it is unlikely they will ever be able to do that sort of
thing. The industry drive to emphasize "High Tech Careers" is really about
computers and the software that serves them. If the kids are NOT into
computers, they are out of luck.
We are doing more and more of the design and test with computer simulations, but you have to understand the physics before you can do that. This is what the non-technical public doesn't understand when they say we can stop all animal experiments, all nuclear tests, all ABM tests, etc., and do it all on computers; you can't do that unless you understand the math models pretty damn well. So there will always be a place for people who work out the physics more accurately...though that is also done with the help of computers! Engineers will need to be completely comfortable with computers--as they have always had to be with math and used to have to be with slide rules and log tables--but that doesn't mean that the physics and the engineering are going away.
Merlin
Home | Communications
| Section Newsletter |
02/28/00