Slashdot Mirror


The Life of a Software Engineer

Jonathan Wise writes to share with us an interesting bit of prose describing life as a software engineer. "I am, in the States, known as a Software Engineer. In Canada we're not allowed to call ourselves engineers, although the discipline is no less rigorous than any other kind of engineering. But perhaps its for the best, because 'engineering' describes only a part of what I do. A software developer must be part writer and poet, part salesperson and public speaker, part artist and designer, and always equal parts logic and empathy."

9 of 519 comments (clear)

  1. Huh? by 4D6963 · · Score: 5, Interesting

    I'm obviously going to be modded down for this, but what does this blog post do on the front page of Slashdot? I mean ti's not news, it's just a guy with a job like another telling us his life. Surely that may be relevant to some, but that's just a blog entry about someone's life among others, so what the hell is it doing here? Is that guy pals with ScuttleMonkey?

    --
    You just got troll'd!
  2. Professionalism versus rigor by s20451 · · Score: 4, Interesting

    You are not allowed to call yourself a "software engineer" in Canada, not because the discipline lacks rigor, but because it lacks professionalism.

    A profession is formed for the public good, in order for experts in the field to supervise, regulate, and discipline one another. In Canada this is carried out through non-governmental professional associations, and there is one engineering association per province. It serves public safety well and is an excellent alternative to both "buyer beware" and governmental intervention. Doctors, nurses, lawyers, and teachers are similarly regulated.

    I'm personally sympathetic to the professionalization of software engineering. Basically this would mean that you would need a license to practice, all your code would be signed by its author, and the association would discipline any software author who wrote bad software, either maliciously or accidentally. Although it means hobbyists could no longer tinker, we are at the point where that hobbyist tinkering could have significant implications for the international system of computing infrastructure. Why should unlicensed software authors be any different from unlicensed doctors? Both can cause harm; in the former case, potentially more harm.

    --
    Toronto-area transit rider? Rate your ride.
  3. Re:No less rigourous? by Quasar1999 · · Score: 3, Interesting

    A damned 'Engineer' in all the title's glory developed my car, and yet half the time a warning light comes on, I'm told to turn the car off, wait a minute, turn it back on and hope it doesn't show up again. And the 'Engineer' that designed our local highway, forgot about this thing called 'grade' and why it's important to have water run off the road rather than pooling in the middle of it. Many millions of dollars later in court, it was verified that the Engineer f'ed up the plans and the construction crews were not at fault. So care to tell me about the 'rigours' of this so called Engineer?

    --

    ---
    Programming is like sex... Make one mistake and support it the rest of your life.
  4. Engineering in Canada by RobinH · · Score: 4, Interesting

    To become an accredited engineering program in Canada, there has always been a strong requirement for a scientific background. This first created problems for computer engineering programs in Canada to become accredited, so they added courses on things like the physical properties of silicon, etc. to meet this requirement. Electrical engineering, of course, has thermodynamics, etc.

    Software engineering has this problem of needing to incorporate science courses into the curriculum. Also, the field of software engineering isn't considered to have matured *as much* as more traditional disciplines. I'm pretty sure that there are accredited programs and you can be a software engineer in some provinces now. These things don't happen overnight.

    I would like to have as much confidence in a piece of software as I do in a bridge, but we're not at that point yet. I do think we're getting closer. At this point, very little software is really "engineered" in the rigorous sense. Software that is tends to be much more expensive, and much more reliable. Go figure.

    Most software buyers don't want to pay the extra expense for the extra quality at this point. Of course, if you're purchasing a flight control system for an aircraft, you probably have deeper pockets and more stringent requirements.

    --
    "I have never let my schooling interfere with my education." - Mark Twain
  5. Re:Link timed out....but, this is /. .... by gnick · · Score: 3, Interesting

    I've met software engineers that I'd be happy to refer to as "software engineers". I've also met code-monkeys that will happily claim "software engineer" status. Canada's upholding some standard for the term engineer is spot on. Get a degree and proper accreditation, and then you get your title. This may sound egotistical, but it's unfortunate that, here in the US, describing myself as an "electrical engineer" distinguishes me only slightly from the "sanitation engineer" that hauls off my recyclables once a week.

    --
    He's getting rather old, but he's a good mouse.
  6. Re:No less rigourous? by dmatos · · Score: 4, Interesting

    And the Engineer who stamped the plans before construction began is now personally liable for all the damage caused. That is the difference (in Ontario) between someone who is an Engineer, and someone who just calls themselves one (illegally). That person has probably been stripped of their certification, and can never work as an Engineer again. There are responsibilities associated with being a Professional Engineer, and penalties should those responsibilities not be met.

    --

    It may look like I'm doing nothing, but I'm actively waiting for my problems to go away.
    --Scott Adams
  7. Software is different for a damn good reason by Lost+Found · · Score: 5, Interesting

    But software is different, for some reason.

    Two reasons. 1: the warranty disclaimer. Like it or not, "NO WARRANTY" is stamped on to the licenses of commercial software because software consumers don't want to pay the higher cost that would be demanded if a warranty were provided. SLAs do exist, but SLAs cover services. The market is willing to pay for SLA on services, and the whole system works, even if it's not quite as perfect as we might dream.

    The other big reason is that a blue screen of death doesn't result in actual death. If you're building homes or highways, you have human life in your hands, and holding you accountable for negligence seems a bit more appropriate. If you're building door locks for the home and a burgular manages to pick it, holding you accountable for negligence is ridiculous because you never promised the lock couldn't be broken. If you're building the home's foundation and it cracks, you still aren't held liable unless you warranted that the foundation wouldn't break. And you wouldn't do that unless you could afford to fix it if it did.

    Simple economics. The market has supplied what the consumer has demanded. But some people get these ridiculous ideas about licensing software developers or enacting liability laws when there is NO risk to human life. They try to draw comparisons to disciplines where there are, then gloss over the details. Under even the most brief analysis, the argument doesn't hold water.

  8. Re:Yeah, right! by Reverberant · · Score: 4, Interesting

    engineers take many forms, not all of which are necessarily directly responsible for hundreds of lives (Acoustic engineering for example)

    You'd be surprised what kind of dangers engineers from different disciplines have to face. Remember the ICE high-speed rail crash from a few years back? That crash happened because a resilient wheel came apart, which derailed the train. Resilient wheels are used as a noise control measure for train wheel/rail noise - thet are designed and spec'd by acoustical engineers.

  9. Re:Yeah, right! by pinkstuff · · Score: 3, Interesting

    And some Software Developers/Engineers work on life critical systems...