Licensing Software Engineers Is in the Works (2012)
theinstitute.ieee.org
theinstitute.ieee.org
Warning: If certification becomes more about permission than proficiency, you'll get corruption instead of competence.
It's also an IEEE money-minting mechanism, a state licensing board revenue-generating mechanism, and a small-company and freelancer screwing mechanism. (Large companies are exempted from the screwing, of course.)
"Most software engineers, including those who work for a government entity or large company, won’t be affected by the licensure requirement"
"I'm only doing what the best practices say I should." Sounds somewhat like a cya mechanism akin to what architects do. Along the lines of sprinklers every N feet, walls have to be buttressed no longer than N feet and with Y giant bolts etc...
Indeed, apparently "four to six of experience" would be required. So suddenly no 20-somethings can work in software which might impact "public health or safety, security, property, or the economy." Say goodbye to half the tech teams at health and fintech startups...
"In 1993 the IEEE and ACM began a joint effort...to explore making software engineering into a profession...The ACM pulled out of SWECC in May 1999...ACM determined that the state of knowledge and practice in software engineering was too immature to warrant licensing"
Granted, that was in 1999. I haven't heard anything since.
The ACM article explaining why they pulled out is here: dl.acm.org/citation.cfm?id=581602 (paywall)
Two states adopted the IEEE's recommendation (against the ACM). Florida and Texas. In Texas, it's illegal to call yourself a "Software Engineer" without 16 years' experience. It's absurd. sce.uhcl.edu/helm/SWEBOK_IEEE/papers/10%20reprint%205.pdf
Things like control software for elevators and pacemakers.
This licensing business seems to be an attempt to cut software engineers out of this peerage for the sake of HR, in addition to being a cash-grab as mentioned by other posters.
If you happen to agree with the State's opinion, then fine. But don't tell me my opinion is incorrect. It's an opinion and presented as such.
If you know anything about Texas government, you'll know that their licensing schemes are another way they soak the little guy while bending over backwards to help out the big guy. Certification by my peers in the form of their acceptance and recommendations are much more important than some arbitrary test.
I'm ok with them forcing me take additional coursework to pass the FE exam as long as they also have to go back to school and take a year of real analysis, a year of abstract algebra, and a semester of complex analysis. I'd prefer to see number theory, with proofs, as well. I'm sure we can come up with a difficult and expensive comprehensive exam as an extra hurdle.
This has about as much to do with software "engineering" as the FE exam.
However, because there is no current requirement for any software to be certified by an engineer, most graduates don't care much to get it, and won't end up working directly under a P. Eng. anyway. So in my experience it hasn't really taken off as a licensed discipline. I have an Iron Ring, but that's as far as my P. Eng. path has progressed.
Certifying software is difficult, even under the best of circumstances.
Edit: Er, I didn't substantiate the first sentence. So here's an example. Apparently the reason that most medical devices run on Windows NT (as opposed to, say, Linux) is that Windows NT is already certified for that use, so it becomes easier to certify your custom MRI scanner because you can just include the pre-certified Windows NT part and only have to get the new code your company wrote certified. Similarly, seL4 is the only OS I can think of that has been formally verified (i.e. proven correct mathematically); I'm quite certain none of {Windows, Darwin, Linux} has been formally proven to be correct.
When I attended a recent talk at my local university, I found out that the shutdown routines for a local nuclear power plant were running on 40-year-old mainframes because those mainframes were certified to survive earthquakes and things. Work was in progress to find new hardware and rewrite those routines, although the Engineer I spoke to was under the impression that none of the hardware made in the last decade was certified to operating under the same level of confidence.
The funny thing is, once you're proven, it doesn't matter what your credentials say. Demand speaks volumes more than paperwork, and it always will. Risk is all about perception, that little license says "the State thinks this guy is less of a risk than another," but let's face it, when it comes down to it, would you hire the guy who started the last Twitter/Facebook/Foursquare that isn't licensed, or the guy that just moved in next door you never heard of that has the license?
Just like the MCSD/MCSE, it'll go out of the window the minute everyone realizes that the piece of paper doesn't actually mean this guy can deliver, it just means that he can pass an exam.
Yep, and thank God America's healthcare is so affordable because of these licensing requirements!
What a horrid idea.
EDIT:
Here's the deal. I'm a mechanical engineer by training, and could've after several years of paying dues gotten my Professional Engineer cert. There are technical fields where I demand that the products I consume (especially those which service thousands of people every day, as is the case with public infrastructure) have a very strong line of qualification.
The fact is that >>99% of software (as it is consumed today) does not require anything near the formal qualifications of civil or structural or chemical engineering.
If you want a really poignant reminder of how having professional engineers with quality control and certification can result in bad progress, go look at what's become of NASA and Armadillo Aerospace.
We are so lucky to be in a field where our ability to ship working code is valued above our ability to get off whoever the current power broker is (and this includes investors).
Let's not willfully throw away that windfall.
EDIT2:
If we expect to conduct business as has become the norm these days--move fast, break things, learn, repeat--and as has done so well for us as an industry, doing anything which artificially limits the supply of potential hands is bad. Doing anything which prevents people from trying new things with minimum investment is bad.
They don't understand us, and they're greedy bastards, so Something Must Be Done (and this is not only for .gov folks--the professional groups have a lot riding on being seen as useful. Jane and Bob the Bad Coders stand a lot to gain by collecting dues for the American Society of Software Engineers).
Actually, that's kind of funny. American Society of Software Engineers. ASSEs. Huh.
I understand your point that you might write software that has few consequences if it fails, but thats not always the case.
There is absolutely no need to license web developers or those who write the usual line of business software etc.
I don't think the people pushing for licensing disagree with you that web developers don't need a license.
There are cases where I need to have software that absolutely cannot fail--and in those cases, I'm going to have a process, and I'm going to have a test suite, and I'm going to have a justification for all the code that makes it into production.
Some bozo with a software engineering license is not somehow magically going to save my ass in that case, and having those things in place let me hire whoever can write code.
This sounds well and good, but again, most of these disasters are the result of bad systems engineering--one of the most famous software errors, the Therac-25 race condition, actually killed people and could have been prevented with hardware failsafes. Having qualified software engineers is at once both overkill and not enough if you're actually serious.
Just look at all the nice folks in IT with Microsoft certs.
To add a point, licensing will shift the blame from corporations and their management to workers. This will mean that the blame won't be placed on management cheaping out on processes to ensure safety, but instead the 'bad apple' developer. This is bad for both consumers and workers.
Licensing in all industries, especially in medicine and law needs to be abolished ASAP. it has devastated many lives (it's too costly to get multiple opinions) and robbed the middle class in every town across America.
Word of mouth from previous clients. In the beginning a company with needs hires you and your reputation builds over time.
As I said above, I think Boeing does a fine job of minimizing errors. The AMA, teaching hospitals and local hospitals don't.
However, it has also been a source of disgust for me that companies would refuse any sort of warranty for their software at all. What sort of company sells you a widget and tells you, "By the way the box may just contain air for all we know, we don't warrant that it does anything!"
The risk of liability was too huge. Nobody wanted to sign up for their operating system crashing when you're rocket took off, or their spreadsheet getting the numbers wrong because binary really wasn't a great system for representing fractional decimal numbers.
I would be all in favor of fixing this total "get out of jail free" card first before we try to figure out who to license software professionals.
It is, nonetheless, a good article. The software engineering exam is offered once a year, in April; the first one was in April, 2013.
I wonder how quickly it's catching on and who requires them.
It's perfectly sensible to introduce this when Software Engineers will be working alongside people who are also licensed and accredited. So, software engineers in safety-critical fields -- writing firmware medical devices, or shutdown routines for nuclear power plants, or pacemaker firmware -- would definitely benefit from this. Whether software engineers working on consumer-grade electronics need something like this is more hazy (Pebble smartwatch firmware? Probably not. But what about the people writing the iOS app for a diabetic's glucose blood monitor? Hmm.)
I'm under the impression that Software Engineering has been licensed by certain local engineering bodies for at least a few years now (Professional Engineers Ontario comes to mind), so this is nothing new. Not going for the accreditation won't harm your chances of being hired by a Google or Facebook, nor will it prevent you from starting your own company.
If you're going to be the next Mark Zuckerburg, I give negative fucks about whether you have an engineering degree. Go take a speech communication course.
I think it may be reasonable because this kind of certificate can be disruptive to the current way of things. The government may not want to take the risk on something so vital to California's economy.
The main question is whats in it for me? what benefits do you get and what since brunell died have the professional bodies done for engineering profession in the UK.
Ps and I already have gone part of the way down the mech eng track
I could do it, but that's not the point. Those examples they provide, they are already controlled. They're already covered by very large corporations that have these sorts of controls in place. If they subcontract out to me, the responsibility lies with them to verify that my work is suitable.
This is just about preventing people like me from doing what we're trying to do: quit our jobs, make some money, bring their friends in and bootstrap a company.
And it's not my side job anymore. It's my full livelihood. It doesn't seem any of this has teeth yet, but when will it? And yearly fees? This is so obviously nothing more than rent seeking.
Fuck it, I'll just move. Oh, wait, I can't. My wife has an electrical engineering job with a branch of the government. They also are not required to license themselves, and they write code that affects more lives than I do.