Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 What exactly defines a software engineer and do you need an engineering degree?
Index -> General Discussion
View previous topic Printable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
deathbow2134




PostPosted: Thu Sep 01, 2011 6:16 am   Post subject: What exactly defines a software engineer and do you need an engineering degree?

Hello!

Just to clear up some confusion that I have about software engineering, am I correct to think that software engineers are just well educated, experienced programmers who use their knowledge to focus on the design of software, rather than just the implementation?

The Canadian Government's website about careers in Canada (workingincanada.gc.ca) says that software engineering/design is a profession regulated by Engineers Canada. This would imply that you need an engineering degree to be a software engineer, since you would need to be a licensed engineer. Yet most job posting that I've seen only require a computer science degree, and never mention a need for licensing.

Is this just the government getting it wrong? How does one become a software engineer?
Sponsor
Sponsor
Sponsor
sponsor
DemonWasp




PostPosted: Thu Sep 01, 2011 7:30 am   Post subject: RE:What exactly defines a software engineer and do you need an engineering degree?

Software Engineering is indeed a government-licensed Engineering profession. As a program at university, it has a subtly different focus than a Computer Science program.

Most job postings just want someone who can write some code (a surprisingly difficult task, it would seem). Being a fully licensed Software Engineer may be helpful in some cases, but in many other cases, someone with domain knowledge or experience writing code may be a "better hire". There are some employers, of course, who will be deliberately looking for licensed engineers -- usually, companies with a lot to lose for every bug in their product: finance firms, NASA, defense contractors, air traffic control systems, etc. Still, the majority of the software development team is not usually engineers, similar to the way that the majority of people involved in constructing a building are not engineers.
ultimatebuster




PostPosted: Thu Sep 01, 2011 10:35 am   Post subject: RE:What exactly defines a software engineer and do you need an engineering degree?

I just do not understand the requirement of chemistry, in addition to the 1 credit of chemistry in university courses.

Especially since everyone out there with a CS degree who worked for a while calls themselves a software engineer.
Tony




PostPosted: Thu Sep 01, 2011 12:07 pm   Post subject: RE:What exactly defines a software engineer and do you need an engineering degree?

a title of "Engineer" is regulated in Canada and means something specific. The same title is not regulated in U.S., so you get "software engineer", "software development engineer", etc.; those sound more "prestigious". Identical positions in Canada would be called something else.

http://www.microsoft.com/canada/learning/quebecmcse/default.mspx
Quote:

On Tuesday, October 4th, 2005 the Quebec Court of Appeal denied Microsoft's motion seeking leave to appeal the decision of the Superior Court which held that only engineers, member of the Ordre d'ingenieurs, can use the designation "Microsoft Certified Systems Engineer" in the Province of Quebec.

Microsoft respects the Court's decision and has met with the Ordre d'ingenieur's to agree to a phase out plan. Non members of the Ordre d'ingenieurs of Quebec may not use the title "Microsoft Certified Systems Engineer" in Quebec without risking legal proceedings being commenced against them by the Ordre d'ingenieurs. In the Province of Quebec,the acronym, "MCSE" is the designated title by Microsoft and this designation cannot be elaborated even by MCSE's of other Canadian provinces, when working in the Province of Quebec.
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
deathbow2134




PostPosted: Thu Sep 01, 2011 6:17 pm   Post subject: Re: What exactly defines a software engineer and do you need an engineering degree?

Does not having an engineering degree limit your pay and advancement as a software professional?
ultimatebuster




PostPosted: Thu Sep 01, 2011 6:27 pm   Post subject: RE:What exactly defines a software engineer and do you need an engineering degree?

I love it, you cannot legally explain that acronym.
Tony




PostPosted: Thu Sep 01, 2011 7:45 pm   Post subject: RE:What exactly defines a software engineer and do you need an engineering degree?

@deathbow2134 -- typically no.

@ultimatebuster -- only in Canada Wink Also, XNA might or might not stand for "XNA Not an Acronym" (on a tangental note of unexplainable Microsoft acronyms).
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
SmokeMonster




PostPosted: Fri Sep 02, 2011 9:09 pm   Post subject: Re: RE:What exactly defines a software engineer and do you need an engineering degree?

Tony @ Thu Sep 01, 2011 7:45 pm wrote:
Also, XNA might or might not stand for "XNA Not an Acronym" (on a tangental note of unexplainable Microsoft acronyms).


That'll cause a stackoverflow Confused
Sponsor
Sponsor
Sponsor
sponsor
Tony




PostPosted: Sat Sep 03, 2011 6:18 am   Post subject: RE:What exactly defines a software engineer and do you need an engineering degree?

Recursive acronyms are a sort of an in-joke for CS, with many examples. Some of the more notables ones are GNU (GNU's Not Unix), PHP (PHP: Hypertext Preprocessor), WINE (Wine Is Not an Emulator), etc http://en.wikipedia.org/wiki/Recursive_acronym#Computer-related_examples
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
deathbow2134




PostPosted: Sun Sep 04, 2011 1:53 pm   Post subject: Re: RE:What exactly defines a software engineer and do you need an engineering degree?

Tony @ Sat Sep 03, 2011 6:18 am wrote:
Recursive acronyms are a sort of an in-joke for CS, with many examples. Some of the more notables ones are GNU (GNU's Not Unix), PHP (PHP: Hypertext Preprocessor), WINE (Wine Is Not an Emulator), etc http://en.wikipedia.org/wiki/Recursive_acronym#Computer-related_examples


Hahahaha.


One more question regarding software engineering. On Working in Canada, they have computer programmer and software engineering/design as two different professions. The software design profession, obviously having a higher salary. They say this about the requirements to become a software engineer/designer:

"Employment requirements are prerequisites generally needed to enter an occupation.

- A bachelor's degree, usually in computer science, computer systems engineering, software engineering or mathematics
or
Completion of a college program in computer science is usually required.
- A master's or doctoral degree in a related discipline may be required.
- Licensing by a provincial or territorial association of professional engineers is required to approve engineering drawings and reports and to practise as a Professional Engineer (P.Eng.).
- Engineers are eligible for registration following graduation from an accredited educational program, three or four years of supervised work experience in engineering and passing a professional practice examination.
- Experience as a computer programmer is usually required."


So it it correct to assume that one can advance to this type of software design position with a computer science degree and a few years of experience as a programmer, without certification as a Professional Engineer?
Tony




PostPosted: Sun Sep 04, 2011 5:16 pm   Post subject: RE:What exactly defines a software engineer and do you need an engineering degree?

Right. Generally you don't need P.Eng for most software. You'll just call that position Software designer/developer/architect/another-synonym. To say that the lines between those titles are blurred is an understatement, as the exact wording is picked seemingly at random; and sometimes is just completely made up.

Just search for job postings for a position of "code ninja" (there are a lot). Do you suppose they make more or less money (on average) than a "programmer" or a "software engineer"?

I hope that thinking about that question answers yours.
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
Display posts from previous:   
   Index -> General Discussion
View previous topic Tell A FriendPrintable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 1  [ 11 Posts ]
Jump to:   


Style:  
Search: