Is Software Engineering Dead?

  • Comments posted to this topic are about the item Is Software Engineering Dead?

  • Good article, Steve. I believe that you've hit the nail on the head. So many managers think that Hours worked = Hours wisely spent = Good lines of code and it's just not true. I've seen a lot of shops where about half of the work is spent on reworking crap code that was pushed to production to meet a schedule. More experienced managers would have seen the falicy in all of that.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • I haven't yet read the Bloomberg article yet, just the snippets from Steve's editorial. I am a software engineer specialising in Data Warehousing, SSIS & SQL Server (hence I visit here). I have also had a few jobs, Royal Australian Navy, Office of Corrections (Prison Officer), Police, factory worker (Ford) and a couple of dead-end jobs. Thankfully, my boss at Ford saw that I had some qualities and pushed me into a sponsored university Certificate program, where a lecturer saw (again) that I may have had some qualities, and suggested that I opt out of the Cert program and enroll in a full-time bachelor degree in Computer Science. This was at age 34. I completed the degree in record time (I had actually completed the degree in 2.5 years, but had to do the extra semester because they wouldn't grant a degree in less than that), became a member of the Golden Key National Honour society (qualified every year while I was at Uni), and had a full time programming job the day after I completed my final exam (before the exams had been marked). I'd also worked 2 days per week (as a database & web programmer) for Ford while at uni in 2nd & 3rd years.

    Since then, I've had a couple of full time jobs, and 10 years as a contractor running my own company. I'm now working as a consultant - still as a software engineer, and am happy as Larry. I wouldn't change this for the world. I love programming. Oh - I'm also very happily married (2nd time) and have 2 kids & 2 grandkids. I think only once have I ever been asked "would you have any problem working for people who are younger than you" - my answer - "almost every one of my bosses for the last 10 years has been younger than me, so no, I don't have and haven't had, any issues at all".

    My CV states may varied job titles, but at heart, they are all one form or other of Software Engineering. My degree - B.Computing (Applied Computing)

    Is this one of the only industries that seems to knock people as they get older? In other engineering forms, it seems that people respect you more as you gain more experience. As a general rule, I have found that while people are happy to employ me for my experience (and pay me for it as well), they're not so sure about listening to what I have to say sometimes.

    Cliff Notes: I'm old, a software engineer, and very happy.

  • Jeff Moden (5/12/2012)


    Good article, Steve. I believe that you've hit the nail on the head. So many managers think that Hours worked = Hours wisely spent = Good lines of code and it's just not true. I've seen a lot of shops where about half of the work is spent on reworking crap code that was pushed to production to meet a schedule. More experienced managers would have seen the falicy in all of that.

    [font="Verdana"]Jeff, do u been referring to the code written by the Experienced guys? or by the young energetic ones? I am unable to relate your comments with the title of this post..! please 🙂

    Thank you![/font]

  • All I can say is 'this is so true' Thanks for the article. Reading it just made me thinking - hey that applies to me too!

    Rudolf

  • I've been on teams before where people have expressed feeling positive about having a few 'grey-hairs' (trans: older people) along, to keep the young cowboys honest I suppose.

    After many years of cursing the unmitigated disaster that is ASP Webforms, I've come to the conclusion that it was designed by people under 30.

    There seems to be so much of this at Microsoft.

    Some young hotshot comes along with a 'killer idea' and they are able to convince management (who are clearly not much more experienced than them) that it sounds like a good thing. Inevitably it's one of those ideas that we all try when we're young (the push-the-concept-to-the-logical-extreme type idea) and later abandon because we realise that the set of problems it creates is actually a lot worse than the problems it was trying to solve in the first place.

    Hence the staggering number of new products or product features that appear with great fanfare, everyone learns, and then which disappear or stagnate a few years later.

    Is there is no-one at microsoft to provide the moderating experience here and produce products that reflect a mature design philosophy in version 1 ? It's not as if we haven't been there before (despite what marketing would have you believe).

    To be fair, there are many different aspects of development; complex (intensive) versus simple (extensive), low-use versus high-use, end user design versus tool design, and design priorities vary widely based on these factors. I just get the feeling that the relentless pace of change fosters a market that favours young guns who are good at cranking out some code and then moving onto the next gee-whiz technology, rather than at building solid apps.

    In areas such as tool design, where there is a huge advantage in having broad experience, surely there HAS to be a place for older workers.

  • Steve - Thanks for the vote of confidence to us dinosaurs.


    My mantra: No loops! No CURSORs! No RBAR! Hoo-uh![/I]

    My thought question: Have you ever been told that your query runs too fast?

    My advice:
    INDEXing a poor-performing query is like putting sugar on cat food. Yeah, it probably tastes better but are you sure you want to eat it?
    The path of least resistance can be a slippery slope. Take care that fixing your fixes of fixes doesn't snowball and end up costing you more than fixing the root cause would have in the first place.

    Need to UNPIVOT? Why not CROSS APPLY VALUES instead?[/url]
    Since random numbers are too important to be left to chance, let's generate some![/url]
    Learn to understand recursive CTEs by example.[/url]
    [url url=http://www.sqlservercentral.com/articles/St

  • I wish I still was a programmer (what's all this "software engineering" stuff anyway? :-D) sometimes...I don't think my sideways career move into sysadmin was a good choice in the long run. It used to be the case that people were happy to do the same job all their lives, and while that's not always a good thing, if it's something they enjoy and that they're good at, why the heck not?

  • I haven read the Bloomberg article, only Steve's.

    Based on that I wont be reading it either. I'm 44, have no ambition to become a Manager (I have actually done that under a different guise)

    I love my job, I'm good at it (well, at least I like to think so) and I've just joined a new company where the youngest in IT is 39! We had a younger developer here, but he has moved on as he felt there were no promotion prospects for him, so he's gone to a larger company, which is fine for him as thats what he wants.

    If your happy and good at what you do, why would you want to change to do something that doesn't really appeal?

    Why do the older developers get a raw deal when it comes to opinions on why we are still developing?

    I think someone else mentioned comparing a carpenter with 25 years + of experience, so they must be good at their profession to have been in the trade for so long?

    Why doesn't that same scenario work for developers?

    Beats me!

  • Successful delivery of software gets easier with experience, I don't make the level of mistakes I made 15 years ago, I often *know* the answer to a problem now without hacking around during an all-nighter to get there - as per my youth

    Seasoned developers would avoid dynamic languages such as PHP in preference to statically typed languages based on experience - so Mr Zuckerberg - we don't want to work for Facebook anyway - BTW how expensive is your project to compile your site source now that you've learned through experience that the performance and maintenance of dynamic scripted languages suck? 😛

  • This isn't just true in programming, it is true in all businesses. No one is allowed to be contented in their current job. The same mindset which says that companies must keep on growing profits year after year, says that workers must always want another, higher paid, job. If I wanted a different job, I'd be doing it. However I enjoy what I do, and when I stop enjoying it I will do something else.

  • I work in Business Intelligence and move from company to company integrating systems and designing reporting to the customers needs and I'm over 40. Most of the time, I see this as a benefit. You are taken seriously, you have the experience and background to be able to design, specify and implement to a timeline.

    I'd say that most of the time, the integration architecture and design is based on 'experience', not 'state of the art'. When you want to build systems that are bulletproof, you don't want to be debugging errors that noone else has come across yet. Most often, this requires some pragmatism and an ear for the clients issues, not the 'theoretically possible/over engineered' code that often comes out of the minds of over enthusiastic kids. It can also be of value to have been exposed to different technological ages and implementations to know methods around issues rather than 'redesigning the wheel'.

    It is always good to have a mix of ages and specialities in a team so the 'best solution' can be found and I'm always open to better and faster ways of doing things (who isn't) but when it comes to design and architecture, I'll take experience over enthusiasm every time.

  • Abrar Ahmad_ (5/13/2012)


    Jeff Moden (5/12/2012)


    Good article, Steve. I believe that you've hit the nail on the head. So many managers think that Hours worked = Hours wisely spent = Good lines of code and it's just not true. I've seen a lot of shops where about half of the work is spent on reworking crap code that was pushed to production to meet a schedule. More experienced managers would have seen the falicy in all of that.

    [font="Verdana"]Jeff, do u been referring to the code written by the Experienced guys? or by the young energetic ones? I am unable to relate your comments with the title of this post..! please 🙂

    Thank you![/font]

    My point is that a lot of what people call "software engineering" is actually dead because so many managers are more interested in hitting a schedule instead of hitting a product. They don't spend the time on "engineering". Instead, they spend it on expensive rework.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Being a near 15 year experience software developer who turns 40 later this year with a wife and two kids I can see many sides to this debate. Personally I've found that as long as I stay on top of technology, limit myself to a single industry (to become an industry expert), write quality code, and try to be someone people want to work with on a personal level then I don't have issues finding employment. People seek me out. We'll see if I'm singing the same tune in 10 years after my partially gray head is fully gray.

  • Jeff Moden makes a good point. All too frequently the engineering part has been left out. If more software people thought like traditional engineering they would implement better solutions in the first place.

    In my mind there is nothing more pointless than forcing a great developer into a management position. There is a reason they are great developers, and it usually does not include the ability to effectively manage people. It is the Peter Principle and it is useful only in throwing away talent.

    ------------
    Buy the ticket, take the ride. -- Hunter S. Thompson

Viewing 15 posts - 1 through 15 (of 94 total)

You must be logged in to reply to this topic. Login to reply