Software
development is different from Professional Engineering. Engineers train so they
qualify to work with well-defined bodies of knowledge. At least where I live, to
be a PE (Professional Engineer) you need a license. That means having proper
academic credentials, four years of ‘engineering work experience’ and passing
an exam on ethics, professional practice, engineering law, and professional
liability.
To
call yourself a PE in Ontario means you have met a body of specific
requirements. You are a known quantity. We call that a Professional Engineer.
I
am a programmer. It is not my intent to denigrate programming. Programming is
hard; taking decades to master but calling yourself a ‘software engineer’ is wrong.
It muddies the waters with respect to genuine PEs. People who could not even
get into an engineering program calling themselves ‘engineers’ is silly. For a
real PE, it could be irritating.
People
who dump the word ‘engineer’ into their titles cheapen the real engineering title.
It is a title for which a real PE studied, worked, and pays an ongoing price in
terms of liability, professional ethics, etcetera.
Developers
and their skills vary a lot. They range from high to low. I have done work with
great developers with doctorates in computer science, and I have done work with
less great developers who have not graduated high school and only have one
trick up their sleeve. They were all employed, hence 'professional '
in that sense. In some places they would have titles like 'software engineer
'
or 'systems engineer '. However, they were hardly equivalent
to a PE. Except for actual engineers I have worked with who were doing programming,
even the best developers would not have the body of education, skills, and
experience of a PE. I do not recall engineers I worked with who did programming
taking on ‘engineer’ as part of their title.
Bottom
line: ‘engineering’ means something and what it means is different from what
people describe as ‘software engineering’.
Again, I am a developer here. I am not trying to denigrate software developers. I can do lots of stuff that an engineer could not do. However, that does not make me an engineer.
No comments:
Post a Comment