3 ms·
"is there a process by which you can weed out the good Civil Engineers from the bad ones" Yes, this the process of licensing. In those professions you mentione
by dacort 16y ago
"is there a process by which you can weed out the good Civil Engineers from the bad ones"
Yes, this the process of licensing. In those professions you mentioned, all people who (legally) work in the field must undergo a process of training and subsequent certification. This includes both work experience and exam requirements over the course of several years prior to certification. Yes, there are people that cheat the system, but the licensing exists to weed them out and protect the consumer.
Software "engineers" undergo no such process or requirements. I can learn ruby in my basement in a year, call myself a software engineer, and get hired building any number of apps. Is my work critical enough that someone may die if I am not certified? Usually not, so the need for certification isn't as strong. Nor have we had the time to develop such continuously relevant certifications in a field that changes several times a year.
- ojbyrne 16y agoI'd guess most software "engineers" do actually pass such a process. Its called a BSCS. The problem is that the state of the art evolves so rapidly, and the difference between state of the art and good enough 10 years ago isn't that costly in most cases, so there is no real test for that difference.
- dacort 16y ago"most" being the key qualifier there. And there's no requirement that they do, so no means by which to qualify them. Some of the best never do go through that process simply because the state of the art is advancing so fast. I'm not sure any regulatory body could develop a standard and keep it adequately up to date.
- nradov 16y agoMost BSCS programs don't attempt to teach much software engineering (and rightly so because it's really a different discipline).
- reneherse 16y agoAu contraire, licensing does nothing of the sort. It's most always a system that both guarantees a certain minimal level of competence, and by design limits the number of professionals in a field for various political reasons. There are plenty of licensed but only marginally competent (i.e. bad) architects, engineers, doctors, lawyers, and other professionals. I recall a story about a flight instructor who said to a freshly licensed pilot something like, "Now you've got your license to go out and really learn how to fly". The point is that true competence and most certainly brilliance requires individually driven effort and expertise that is unlikely ever to be measured by government or professional organization administered exams. Put it another way: Do you feel that licensing assures us that all drivers on the road are "good"? (Sorry if my argument sounds abrasive; the subject's a pet peeve of mine.)
- dacort 16y agoBut it does ensure a minimum bar for those licensed to practice professionally. So, theoretically (heh), even the worst licensed MD/architect/etc has met the minimum requirements for practicing. I'm not saying they can build an 80-story skyscraper, but in software we have no such means by which to measure potential practitioners. And getting a pilot's license is a little bit different from being licensed to practice medicine. It also depends on whether you're referring to a private or commercial pilot. Private pilots only need 40 hours[1] of time in the air. And even once a commercial pilot is licensed, there are other regulations in place. And a driver's license is an even lower bar, of course. So no, licensing (in any form) does not ensure that the licensee is "good" or "brilliant," but it does allow us to ensure a minimum bar that does not currently exist in the software industry today. (And no worries, it's a pet peeve of mine as well. At least at it relates to the software industry.) 1. http://en.wikipedia.org/wiki/Pilot_certification_in_the_United_States#Private_pilot http://en.wikipedia.org/wiki/Pilot_certification_in_the_Unit...
- reneherse 16y agoRight. What all these different examples of licensing do is provide some level of protection from complete technical incompetence. Which of course is a worthy pursuit, I just don't agree that the best way to do it is necessarily by licensing. (And unfortunately I'm not going to be able to precisely articulate some alternatives at 3am :) The historical pattern in the US seems to be that professional licensing, introduced as protection from incompetency, inevitably evolves into a way of limiting competition in a field by restricting the number of practitioners. At least on architectural exams, to the best of my knowledge, the maximum number of those who "pass" each year is set in advance. It's a slippery slope once you start regulating entry into a field. The regulating body comes under political pressure from anyone with a financial stake, especially practitioners, educators, and major consumers. I'd wager that soon after you need a license to call yourself a software engineer, you'll need an accredited degree and years of internships before you can sit for the licensing exam. It's played out in similar fashion in the other professions. There are other ways of ensuring competency without the use of government or quasi-government institutions. In software development, incompetency generally wastes time and money, not lives. With stakes this low, perhaps something as simple as a standardized testing service that could be used by HR departments to screen applicants would be viable... (Please pardon my designer's ignorance if something like this already exists in the development world :)
- mceachen 16y agoI've been a hiring manager or principle interviewer for a number of companies. I've found that, unfortunately, certifications (at least in the java/enterprisy world) are almost always negatively correlated with competence.
- dacort 16y agoI completely agree with this statement. In the software industry (and other tech industries like InfoSec), these type of certifications are fluff that anybody willing to spend a few hours studying a book can pass.