Slashdot Mirror


Ask Slashdot: How To Avoid Becoming a Complacent Software Developer?

An anonymous reader writes: Next year will be the start of my 10th year as a software developer. For the last nice years I've worked for a variety of companies, large and small, on projects of varying sizes. During my career, I have noticed that many of the older software developers are burnt out. They would rather do their 9-5, get paid, and go home. They have little, if any, passion left, and I constantly wonder how they became this way. This contradicts my way of thinking; I consider myself to have some level of passion for what I do, and I enjoy going home knowing I made some kind of difference.

Needless to say, I think I am starting to see the effects of complacency. In my current job, I have a development manager who is difficult to deal with on a technical level. He possesses little technical knowledge of basic JavaEE concepts, nor has kept up on any programming in the last 10 years. There is a push from the upper echelon of the business to develop a new, more scalable system, but they don't realize that my manager is the bottleneck. Our team is constantly trying to get him to agree on software industry standards/best practices, but he doesn't get it and often times won't budge. I'm starting to feel the effects of becoming complacent. What is your advice?

27 of 275 comments (clear)

  1. risk something by bugs2squash · · Score: 5, Insightful

    Design a system or an improvement to a system, argue that it should be used. Defend your ideas. Stop depending on your manager to put your ideas forward. That should solve the problem one way or another. You'll either be up to your eyeballs in responsibility for a project or out on the streets pretty rapidly I should think.

    --
    Nullius in verba
    1. Re:risk something by pspahn · · Score: 5, Insightful

      The last time I did this, I was labeled "toxic".

      Best severance envelope ever.

      --
      Someone flopped a steamer in the gene pool.
  2. Various methods exist... by Bloke+down+the+pub · · Score: 5, Funny

    ... just make sure you have an alibi. Ideally, make it look like an accident - but don't try anything too clever. Otherwise some cop will get a gut feeling or a hunch and the minute he's officially taken off the case you're toast.

    --
    It's true I tell you, feller at work's next door neighbour read it in the paper.
    1. Re:Various methods exist... by Geoffrey.landis · · Score: 4, Funny

      Well, it's a shot in the dark.

      But, take a stab at it.

      --
      http://www.geoffreylandis.com
    2. Re:Various methods exist... by vux984 · · Score: 5, Funny

      but don't try anything too clever. Otherwise some cop will get a gut feeling or a hunch and the minute he's officially taken off the case you're toast.

      You know it. And from watching things like Bones and CSI:Miami I know that not only do they investigate every case like its the only thing they have to do with their time, but that money is also generally no object. And if you are really unlucky, the laws of physics will turn out to be fairly flexible to.

  3. Business by Anonymous Coward · · Score: 5, Insightful

    >Our team is constantly trying to get him to agree on software industry standards/best practices,
    Maybe your team is full of snot-nosed upstarts trying to push the latest fad techniques on him, and he doesn't see things your way.
    Maybe not. But I'm only hearing one side of the story.

    If your way really is better, maybe it's better to have him replaced.

    1. Re:Business by gestalt_n_pepper · · Score: 5, Insightful

      Yeah, here's the thing about being complacent.

      If it ain't broke, don't fix it. Software isn't always better because it's new. Procedures either. I'm not about to have anybody use Ruby, just because some 20-something new hire things it's cool. And while I like Agile, I know that it works only because the team meets every day, forces them to track real progress vs estimates, measures what's happening in real time and basically keeps their eye on the ball. Stuff I was doing about a decade before the word, "agile" existed.

      So, color me unimpressed by Powershell, Agile, objective C, json and Azure. These technologies are neat and sometimes useful, but ONLY if they solve a problem and/or IMPROVE something - a test many new technologies fail, pathetically (e.g. 100 lines of powershell to do what one line of "NET USE xxxx" does).

      --
      Please do not read this sig. Thank you.
    2. Re:Business by dlingman · · Score: 5, Informative

      And since when is Obj-C new? It's been out for 31 years now...

    3. Re:Business by mrchaotica · · Score: 4, Informative

      If it ain't broke, don't fix it. Software isn't always better because it's new.... So, color me unimpressed by Powershell, Agile, objective C, json and Azure.

      What is Objective C doing in that list? Did you forget that it was invented more than 30 years ago (and not by Apple)? It predates both .NET and Java, and is almost as old as C++.

      Objective C isn't the newfangled replacement; it's the thing that ain't broke!

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    4. Re:Business by spaceyhackerlady · · Score: 5, Insightful

      Umm... JSON is a pretty significant force behind modern Web design. Without it, the Web would still be a pretty static place.

      Judging by the number of broken web sites I've seen lately, we could use a bit more staticness and a bit less dynamicness. :-}

      ...laura

    5. Re:Business by serviscope_minor · · Score: 4, Insightful

      Judging by the number of broken web sites I've seen lately, we could use a bit more staticness and a bit less dynamicness

      And a good deal faster too. It seems to be very fashionable now to use heaps of mandatory JS to serve up what in the end amounts to some text with a few images and perhaps a link or two. In other words exactly what HTML was designed to do, except it used 20M of JS libraries, hogs the CPU for a few minutes to render and is otherwise horrid.

      But hey, it uses a different font to the default.

      --
      SJW n. One who posts facts.
    6. Re:Business by Anonymous Coward · · Score: 5, Insightful

      I'm 55, 25yrs experience, I've been the boss and don't want to do it again, I work my contracted 8hrs because my employer is a mega-corp, not a charity. I may look burnt out to a 20-something but I certainly don't feel it. My main gig is looking after the large cvs repository and automated build process I was hired to build ~10yrs ago. I've learned a whole bunch of scripting languages and tools in those 10yrs and forgotten a whole lot more. I make a comfortable living being the grumpy old fart sitting on the code repository, my pay is roughly twice the national full time average but still 10's of thousands less per annum than in the the late 90's.

      Over the years I've observed that workload is like used disk space, it rapidly expands to fill the available hours. If you habitually work 12-16hr days when paid for 8 it becomes an expectation to the point where the boss will sometimes complain if you cut back to the contracted 8. If you work 8 and occasionally stay back to put out a serious fire, you are invariably thanked for the extra effort (and won't burn out so quickly). Doesn't matter who the boss is, this almost universal behaviour seems to be one of those strange social quirks we humans posses. Basically if you act like a "whore" people will (subconsciously) treat you like one.

      Besides, I didn't go to uni so that I could earn the same HOURLY rate as the factory shift work I was leaving behind.

  4. Here's why by jeremylichtman · · Score: 4, Insightful

    To stay on top as a developer, you need to learn new things every single day. As one gets older, that becomes harder - and for many people it eventually becomes more work than its worth. At that point a clock starts ticking. Three years...five years...at some point somebody who doesn't learn something new about software every single day will get out of date. The other thing is something my dad warned me about decades ago - as one gets older, there's a good chance that people problems become more interesting that software problems. If that's the case, then lack of enthusiasm probably equates to boredom - and again, the clock starts ticking.

  5. 2 options by greywire · · Score: 5, Insightful

    Use your passion to either:

    A) Leave.

    B) Or take over.

    Well of course there's a third option: stay and have your soul crushed. But who would choose that?

    --
    -- Senior Software Engineer, Attorney appearance services, locallawyerapp.com.
  6. Truly an unanswerable question by Anonymous Coward · · Score: 5, Insightful

    "I'm young and enthusiastic, and can't understand how older people aren't as young and enthusiastic as me."

  7. Embrace the burnout by Anonymous Coward · · Score: 5, Insightful

    Accept the burnout with open arms. Embrace it. Know it and love it. Take your other 16 hours per day and do things that profit you instead of your task masters.

  8. Not necessary complacent... by ageoffri · · Score: 5, Insightful

    I've got almost 20 years in IT, mostly in various aspects of security. I don't consider myself complacent at all, but at the same time I'd much rather work the 9-5 M-F then put in lots of hours. In my 20's I thought that the more hours you worked, the more it showed the company that you were valuable. Sure I got top ratings but I was only focused on my career. These days I consider it a source of pride that my overtime for last year was less than 10%. I'd rather spend time with my wife, with my friends, doing things that are fun. I stopped working to work and now work to enjoy life. I'm so much happier and the hours I put in our more productive, after about 10 hours pretty much everyone is better off calling it a day.

    --
    -- Slashdot, making the Left look conservative since 1997.
    1. Re:Not necessary complacent... by Jason+Levine · · Score: 5, Insightful

      I grew up watching my father leave for work at 5am, come home at 6pm with a stack of work, do work at nights, and do more work on the weekends. His excuse was that his bosses saw him producing a certain level of output and he needed to keep it up. He's retired now. Do you know what all that extra work got him? Laid off when someone else with better connections wanted his job.

      When I first started my job, I made it clear that I wasn't going to do this. I'm willing to remote in if there's a problem that can't wait until morning, but that's the exception, not the rule. I get into work at 8am, leave at 4:30pm, and stop thinking about work the minute I leave the doors. Granted, I love what I do - web development - so I'll often freelance or work on my own stuff on the side, but that's my choice. I'll also put that stuff on the side to teach my boys how to ride their bikes or to watch Doctor Who with them.

      I enjoy my job, but part of what keeps me enjoying it is that I don't let it take over my life.

      --
      My sci-fi novel, Ghost Thief, is now available from Amazon.com.
    2. Re:Not necessary complacent... by egranlund · · Score: 4, Insightful

      I don't consider myself complacent at all, but at the same time I'd much rather work the 9-5 M-F then put in lots of hours.

      Yeah, I don't think working 9-5 is a sign of "losing your passion", it's a sign that you get your work done and go home to do other things your passionate about.

      If anything, working a ton of hours is just a sign that you're either: going to burn out in a year once it catches up with you, that you're more worried about looking like you're "dedicated", or that you're just screwing around most of the day and need to work long hours to finish the stuff you're getting paid for.

  9. Get a (New) Job by Tau+Neutrino · · Score: 4, Insightful

    Speaking from my personal experience (which is my only qualification to speak at all), keeping a steady stream of new and different jobs does the trick. I've been programming professionally for thirty-five years. I've never had a gig that lasted more than three. Some are "permanent", some contracts, some on-site, some remote. Many of them have great promise at the start ("I could retire with this job"), but something always changes. The project is finished, or cancelled, the company goes broke, or sees a major shift in direction, management changes and has different priorities than before. Some times it just doesn't work out.

    But the end result is that I'm in no danger of becoming complacent. There's always new stuff to learn, new projects to pursue. I'm still having fun.

    --
    Lemmings are silly; dinosaurs are extinct.
  10. Re:Leave by Anrego · · Score: 4, Insightful

    Totally agree.

    If you've got 10 years experience, that puts you in your prime. You've got the experience to be valuable, but are still affordable. I assume you're also at a point in your life where you can afford a little financial risk. It's time to use this to get into a job that you will enjoy and has the kind of work culture you want.

    A lot of people out of school take the first gig that's willing to hire them. Some by random chance end up loving the job, others learn to accept it but gradually burn out. You sound like the second type. Time for a change.

  11. After 15 or 20 years... by QuietLagoon · · Score: 4, Informative
    ... you start to realize that there are other things to life and living than spending more than half your day developing software.

    .
    Don't fight it. Look at it as growing in a different direction.

  12. You _already_ have the answer ... by UnknownSoldier · · Score: 5, Interesting

    > I think I am starting to see the effects of complacency. In my current job, I have a development manager

    Why do you think the Peter Principle and Dilbert Principle got coined? :-)

    Programmers become 9-to-5'ers because of cynicism and pessimism. Why do your best effort when your project is just cancelled in one year because management doesn't understand "what business solution it provides" ??

    Companies constantly fail to learn that it not only important to motivate people, it is extremely important to NOT de-motivate people.

    There are 2 really insightful comments from last year which perfectly explain why older programmers become cynical:

    http://apple.slashdot.org/stor...

    "> What he's saying is that Apple has an actual functional internal milestone systems
    Exactly. Look, Apple designers have to come up with just as many bad ideas ad the Philips designers, but at Apple, they get killed of early. At Philips, they spend resources pulling those bad ideas along until they're almost ready to ship, and then decide which will die. It means most of the development cycle is a farce, and if the engineers/designers know there's a 90% chance that the thing they're working on will never be manufactured, it means you're not going to get their best, most serious effort.

    If you find managers who can actually identify the best ideas when they're in an unfinished, formative state, then you can focus a lot more of your 'make this the best possible widget' energy on the good ideas and waste less time putting round corners on internet-connected razor blades."

    and

    "The big difference between Philips and Apple isn't whether projects are killed earlier or later.

    The difference is how the projects come to be and reach these milestones.

    Philips uses a "technology platform" system, or at least did during the time Tony was there. I don't know what they use now. That means someone in a technology division at the company develops a technology. Then they develop some platforms that use the technology. They then produce reference platforms or designs that use the technology. Then they take those reference designs around the company and try to find a product group in the company that wishes to ship a product like that.

    The problem with this is that it is pushing a rope. You frequently will make up products that show off a technology but that few people would want to use let alone buy. This system was commonplace with companies at the time. You can still see this system if you look at something like dealextreme or meritline. You will see many companies (barely more than entrepreneurs in these cases) who make products simply because the technology lends itself to them, regardless of whether anyone would want to use it.

    The big difference in how Apple did it, and still does it, is that Apple identifies a product people would want to use and doesn't currently exist or at least doesn't broadly exist in an easily usable form. Then Apple goes out and buys, develops or partners with a company to develop technologies that make that product work or work better. The company then evaluates the product before shipping it, deciding if the product is really something people would use. Rarely does the company have a change of heart about the basic product, but sometimes products get killed because the result doesn't really work in a way the customer would like it. For example, if a product doesn't work smoothly, it may be delayed until faster processors come along. The G5 MacBook Pro was fully developed and then killed because (among some other issues) the battery life was so short no one would f

  13. Maybe they have families by dlingman · · Score: 4, Informative

    Having kids can eat up a lot of your spare time. While I realize this isn't a problem for that many slashdotters, it has been known to happen to the occasional software developer. Suddenly coping with family can look a lot like burnout, especially in the early years.

  14. 9-5 isn't always "burnt out" by ErichTheRed · · Score: 4, Insightful

    As the dad of two young kids, just finding time to work, spend a reasonable amount of time being there for them, doing the daily chores around the house and (maybe) sleeping is a miracle some days. Older people who work 9-5 and have families want to keep them. Especially if their spouse/partner also works, there's _never_ enough time to do anything. I used to be able to do whatever crazy crunch project (I'm in systems engineering, not development, but it's not that dissimilar.) Now, I'm finding that there really has to be a justification for spending the extra effort. It is a trade off - even if I wanted to, which I don't, I couldn't go work for a startup and pull back to back 90 hour weeks. Being a dad and doing it right is a massive time commitment. Whenever I hear about anyone who is having a kid soon, I frankly tell them that they need to go and do everything they wanted to do in the next few months...because sometimes it seems like there's zero free time. And when you do have downtime, you're so wiped out that you can't do anything other than crash.

    That said, as one gets older and more experienced, they're less likely to make the mistakes that require the constant 90 hour weeks. And what you may see as burnout may just be people getting wise to the fact that it's not worth slaving over a job. You owe it to the company to work hard while you're there, I grant you that. But people who have lives outside of work really need that work/life split that everyone keeps trying to get rid of. My strategy for dealing with this is as follows -- I know I have to keep my skills at least somewhat fresh in case I'm unexpectedly unemployed. So I try to add myself to just about anything new at work (and usually succeed.) That covers a lot of the skill building. And yes, I do have to spend a fair amount of time reading and tinkering outside of work, but that's been severely curtailed. I think it'll get better once the kiddies can do more things for themselves, but for now it's a real challenge.

  15. Re:For many it's not burnout but disillusion by TapeCutter · · Score: 4, Insightful

    I mostly agree but I would say that a good engineer provides (and meets) a deadline of his own making. Good managers have clear business plans but they can't create them if software systems randomly pop out of the basement shouting "surprise". The most overlooked and underrated skill for a "professional" engineer is business administration skills (and vica-versa with PHB's). Someone who speaks both languages is far more useful than someone who speaks only his native tongue.

    Yeah it's easy to become disillusioned, if you don't have the political clout to organise your own work and "lead by example" to meet their vague goals, then get it or get out. If you do have some influence then vague, numerous, and ever changing management goals are your best weapon against the idiocracy, simply pick the brain farts that give you license to do TheRightThing(tm) and politely deflect the others.

    *you - the royal version.

    --
    And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
  16. Grow up ... and learn about Engineering by golodh · · Score: 4, Informative
    That's my advice. Mainstream engineering isn't about individuals, let alone "stars". It's about reliably delivering commodities, in bulk, standardised, to spec and within budget.

    Maintenance programming is an example. Large development projects under the "waterfall" method (often) is an example. Custom-building standard systems is another. In such cases you're better off with predictable but competent standardised performance from a team of 9-5 programmers that with mob of empassioned risk-takers.

    This "passion" thing is needed when individual performance counts. As in: when the "old" way of doing things no longer suffices (the old machinery has bogged down and needs to be replaced by something new), or when clear efficiency improvements can be realised (this is common engineering practice), or when there is room to experiment (e.g. in Open Source Software), or when your task is to see how far the envelope can be pushed and to come up with something new (e.g. research).

    Of course there's a difference between not keeping up with mainstream engineering (as the opening post suggests) and spending your time "innovating" when there are adequate standard methods available.