[NTLUG:Discuss] Re: software engineer? -- the term "Engineer" is overused (it's not practical anyway)

Greg Edwards greg at nas-inet.com
Fri Jul 30 09:39:24 CDT 2004


Bryan J. Smith wrote:
> The term "engineer" is overused.
> 
> - Engineers v. Engineering Technologists v. Technicians
> 
> "Engineers" are not practical.  They study theory.  They design systems
> at the physics or numerical-level.  They do not configure or install
> systems, although they may as a secondary role.
> 
> "Engineering Technologists" or "Technicians" are far more practical. 
> They apply knowledge.  They install and tweak the designs engineers come
> up with.  Many times Technologists or Technicians _know_ more about a
> product that the engineer that designed it.
> 

> -- Bryan J. Smith
>    Son of a licensed Florida Professional Land Surveyor (PLS)
>    Florida Certified Engineering Intern (EI), Computer Engineering
> 

Bryan,

I agree with you about the overuse of the title Software Engineer. 
However, your reasons are way off the reality of what a Software 
Engineer really is.

The business community has used the title Software Engineer as a method 
to promote staff and justify pay grades as opposed to ability and 
knowledge.  A Software Engineer is allot more than a programmer who has 
gained enough time in the job to earn a raise and more responsibility. 
I'm not trying to belittle or take light of anyone that has gained the 
title this way, so don't flame me for the comment.

Try as hard as they might the traditional Engineering bodies do not 
understand or grasp the true breadth of what a Software Engineer is and 
what they bring to the table.  Software Engineering does not fit the 
mold of most Engineering disciplines.

I agree that most Engineering disciplines are trained and experienced in 
applying theory and standard design methods to a static set of blue 
prints and construction plans.  Most Civil Engineers couldn't lay a pipe 
at the designed grade to save their lives.

Unlike other Engineering disciplines a Software Engineer has to 
understand and be able to implement the entire software life cycle. 
Software is allot more than designing it, coding it, and releasing it.

When the whole concept of project teams for all software projects got 
hot and heavy (starting in the late 80's) the use of the title Software 
Engineer vs the Software Engineering discipline muddied the waters. 
Instead of someone that was a Software Engineer using the title, 
programmers that had enough experience and education started being 
called Software Engineers.

Look at the roles on a project team:

Project manager - scheduling, budget, staffing, and oversite

Project designer - analysis, data and process flow, system integration 
analysis, interactive presentation analysis and design

Programmer - coding, data layout and structure, API definitions and 
implementation

Technical writer - product definitions, project specifications, test 
plans, training manuals, user guides, installation guides

System administrator/technician - deployment, upgrade, technology 
installation and configuration, and technology interoperability

Test engineer - unit and integration test planning, regression testing, 
test case analysis

Every one of these  people are a specialist within their own right. 
Where Software Engineering as a discipline differs from other industries 
is that a Software Engineer knows all of these specialities and can 
apply them.  To compare a Software Engineer to a Civil Engineer is the 
wrong analogy.  A Software Engineer would be better compared to the 
differences in the medical profession where the GP is the Software 
Engineer and the Surgeon is the Programmer.  However, the educational 
and experience requirements are reversed because a surgeon needs to know 
general medicine while a programmer does not need to know Full Life 
Cycle Methodology.

To use an analogy from traditional engineering disciplines between 
engineers and technicians is like comparing apples and oranges.

-- 
Greg Edwards

Software Engineering Services - http://consult.nas-inet.com
Custom Hosted Websites        - http://www.nas-inet.com




More information about the Discuss mailing list