Up or Out: Solving the IT Turnover Crisis

« Return to Article
  • aweofajfjifwa 2008-04-29 12:10
    Yeah, I learned this a long time ago. It's too bad that the IT industry is so far behind in worker management. Like, we're decades behind. We're barely past having whips on our backs while we turn the wheel.

    Thing is, most people in IT don't even realize they're being reamed, until you change careers and then suddenly learn that being ambitious, smart and doing things the right way actually advance your career and make you more money.
  • KludgeQueen 2008-04-29 12:22
    Good article. Another way to look at the "curve" is from the employee's perspective - are you learning or teaching? At the bottom, it's 90% learning, 10% teaching. As you get up to convergence, it approaches 100% teaching, and going over the hump at the top is analogous to getting more and more frustrated having to explain things to people! Sometimes you need to move on to a job where you can learn from others again.
  • Numeromancer 2008-04-29 12:25
    > This growth continues exponentially

    The curve in the picture does not grow exponentially. Looks more like a logarithm to me.

  • boheme 2008-04-29 12:31
    I agree wholeheartedly with you, but I feel as though you may have overlooked that jumping from job to job greatly diminishes your chances of retiring with a comfortable pension. Yeah, I know that it's not our father's job market any more. But when you have consider other benefits as well, such as health care plans that may not carry over from one employer to another, it's a scary place for employees who aren't, or may never will be, putting away the big bucks. I understand your desire for a more stolid approach to employee retention, but I think that at the same time, even employees who are able to find other jobs might want to marry and have kids, and settle down into a position that will afford stability. After all, you home is one of the biggest sources of equity in your old age, and unless you're extremely wealthy, moving around every few years to accommodate that new job isn't easy on your kids, your wife (or husband), or your retirement savings.

    That's my two bits. =)
  • gabba 2008-04-29 12:32
    Nice article -- I agree with it almost entirely. But ...

    'What was once “fresh new ideas that we can’t implement today” become “the same old boring suggestions that we’re never going to do”'

    How about just foster an environment in which both fresh new ideas and suggestions based on experience are respected and considered seriously for implementation?
  • Gamma 2008-04-29 12:34
    This growth continues exponentially while the employee masters the business domain and shares his ideas with coworkers and management.


    FYI, a graph for exponential growth would have a positive curvature, not a negative one like in this pic.

    I am tired of people misusing phrases like exponential growth. Are you trying out for management, Alex?
  • Lev 2008-04-29 12:35
    Very very very good article.
  • loe 2008-04-29 12:39
    Maybe the exponent is -1/2?

    I too hate that "exponential growth" has become colloquially defined as "lots"
  • Kuba 2008-04-29 12:41
    I don't know whether this whole value apex really works that way for every position out there.

    If you're a musician in a reasonable orchestra, for example, there's really no way for you to go up. You can perhaps move to a better orchestra, but that's about it. Or you may start your own group, but that's really more of the same, just a bit more responsibility, but most of the job is the same: you rehearse and perform.

    Same applies to some technical jobs. If the company grows with you and you gather more responsibilities and experience as you go along, you pretty much occupy the same place on the ladder -- somewhere close to the "top".

    Same goes with relatively lowlish jobs -- say that of an assembly technician. Suppose you're an experienced assembly technician, and have dealt for most of your life with production or prototyping of various electronic assemblies. I don't think it's in anyone best interest to really have that person either become a manager or leave. If they are doing their job and are just fine, why the heck let them go?

    Same goes for someone who is content being a good coder. That person may be perfectly OK with a salary of the position, and whatever raises are given for his/her "years in business". If a coder stays on top of technology and is good at whatever coding he's doing, should he automatically be considered for management, or be told to leave? Why the heck? In the place where I work, we have a very experienced guy (2+ decades) who surely is paid commensurately with his experience, but he's a developer and we simply don't need to have anyone "under" him because he does the job we need done, and that's it. We're happy, he's happy -- it'd make no sense whatsoever for us to get rid of him, or to "promote" him because there is simply no need for another developer to be under him (for now, at least). If we hire another developer, most likely we'll want them to have equal experience and be a "horizontal team" to get most of our money.

    This whole "up or out" thing applies to a fairly limited scope of jobs where actually "moving up" is a sensible thing to do. I personally like a horizontal structure where people with essentially managerial-level experience have a day-to-day hands-on experience with the nitty gritty. It kind of keeps you in reality check. Managers too often depend on marketing and fight with the "underlings" simply because they are constantly exposed to flowery picture by the vendors, while the teams in their department are fighting the reality day-in, day-out.

    That sort of a picture prevails in many a WTF posted here. If all those dumb managers had to closely interact in the nitty-gritty of say one team, that team's leader would quickly notice that they are technically inept and should be on their way out, not up. Of course, a way of going around said manager to report problems higher up is needed too, in this case. But with just a few rungs on the ladder that's trivial, and I'd listen very closely to what people under a particular manager say about that manager.

    Cheers, Kuba
  • akatherder 2008-04-29 12:42
    I'm married with a kid. My primary goal is job security and making a living. Anything above and beyond that is nice. I did the rockstar 80 hours/week coder thing, but now I just can't be arsed. I don't live for my job. I'm just here for my paycheck, man. It's an ends to a mean.
  • brettdavis4 2008-04-29 12:44
    This was a very good article.

    I've had an idea on how I would handle employees if I get into management.

    I would try to implement a "high school sports program" mentality.

    The "freshman" level would consist of interns and people right out of college.

    The "JV" level would be people that have around 1-2 years experience and are good, but are not great.

    The "Varsity" level would be the senior level developers.

    The idea behind this mentality is kind of like high school, you come in and you move up and then you get out.
  • Schnapple 2008-04-29 12:45
    Alex:
    But imagine if the justification for documentation was different:

    I need you to document this process in detail so that any yahoo can understand it a year from now after you’ve left.

    I’ve never had a manager or higher-up ever put it that way.


    I would imagine this is for a few reasons other than denial. First, this phrase can easily come across as:

    I need you to document this process in detail so that when we fire you and hire a cheaper replacement you will make our lives easier

    Second, it comes across as borderline insulting

    I need you to document this process in detail since you're an easily replaceable cog and we'll probably use someone from Sales or an Intern to do this once we're done with you

    Really though it comes across as

    I need you to document this process in detail since you will soon tell us to fuck off and so we want you to work harder while you're here so that our jobs, the jobs of people you won't care about later, will be easier.

    I agree with most of your article but I don't think that being honest on this phrase will have the intention you're thinking.
  • Buffled 2008-04-29 12:46
    FYI, a graph for exponential growth would have a positive curvature, not a negative one like in this pic.

    Actually, look closer - he said that there would be exponential growth while the employee masters the business domain and shares his ideas with coworkers and management - and if you look at that point along the tenure line, growth value /is/ shown as exponential. It becomes logarithmic only after the apex
  • ehhh 2008-04-29 12:47
    lol, great stuff, i see many WTF there. Now you should explain why being messy is a good thing.
    I think that work in IT is not for somebody that is getting bored very easily. Plus what do you want to learn? j2ee/c#? its very easy and you will learn that very soon. do you want to learn business side of it? how to count some taxes? that is boring and if you like that maybe its not the programming that you should be doing. Enterprise programming is boring and if you cant understand that you should do something else.

    The truth is that people leave only because of the money, bad working environment or not being appreciated. You try to pretend that there is more, but ... sorry, not here. People stay at the same job for a long time because they are lazy and they know that in next company only money can be better. In the next company they might use flash instead of lets say jsp or asp, but .. it not that different.
  • BobB 2008-04-29 12:50
    The article is very good in my opinion. I saw much of this at my previous place of employment. One person in particular would hoard knowledge about obscure systems like was described here. I did my best to document everything I did and explain it so when I left (as I knew they weren't going to fill my position quickly. It's not that I'm special, it's just that the company is SLOW at that) my friends at the company could read the notes and figure out what they needed to do to make something happen.

    There was one person who would not share knowledge. This was maddening because we suspected her of keeping that knowledge so when she went on leave she would break a small thing in one of the systems and use these bits of knowledge to fix it. I found one by accident the morning of one of her leaves (the expected input delimiters for some data had been changed from a ';' which everything in that system used to a ','. It was an easy fix but maddening if you didn't know what was going on).

    At my current job my official title is 'Business Systems Analyst' (or was it Administrator?) but I am mostly keeping some financial software up and going (babysitting). However, I am learning about other systems in addition to the ones I was hired for and getting to learn from others in my smallish group. I am also teaching others in said group about how my systems function. I really enjoy my job (for now?), as I feel like I'm contributing instead of putting out fires and playing Spy VS Spy like the old job felt. I have more time to sufficiently document things as well as research and learn other areas of the system I was hired for. Of course, I could just be easy to please.

    There were other reasons I left my last job for my current one (things other than the fact I was being paid 30k less than the previous person in my position but with more responsibilities), and I felt hurt that when I handed in my two weeks resignation that I was not scheduled or given an exit interview.
  • FredSaw 2008-04-29 12:50
    This is true to some extent, and would be all the more so in an industry where technology/knowledge did not change much. In IT, everything changes rapidly and the "Value Apex" is a fuzzy and shifting point determined to a great extent by how rapidly the company embraces new technology and how rapidly the "skilled developer" learns it.

    For example, if you hit a Value Apex in the summer of 2001, then you were right on the crest of the wave that swept away VB6, ASP and VBScript and ushered in .Net. You could leave looking for a different place to apply your skills with VB6/ASP, or you could stay and advance with the company into the world of .Net.

    Later on down the road, perhaps the company embraced web services, and eventually BizTalk. Perhaps your original company intranet was retired for a Sharepoint portal. Where's your Value Apex now? Well, that depends... did you learn web services/BizTalk/Sharepoint?
  • Buffled 2008-04-29 12:52
    ehhh:
    do you want to learn business side of it? how to count some taxes? that is boring and if you like that maybe its not the programming that you should be doing. Enterprise programming is boring and if you cant understand that you should do something else.

    The truth is that people leave only because of the money, bad working environment or not being appreciated. You try to pretend that there is more, but ... sorry, not here.


    Spoken like the young 80-hour-a-week rockstar ;)
  • mark 2008-04-29 12:53
    great idea with graphs, it really makes you look like you know what you are talking about. however i think every kid could understand those graphs, so maybe you are not so smart?
  • Sa 2008-04-29 12:54
    Ah yes. the ADHD approach to IT. Make me a partner or I'm out of here.

    Thank goodness there are a few of us non-ADHD IT people left to come in and clean up the messes that you leave behind.

    We get a real kick out of submitting the funniest pieces of your baggage to TheDailyWTF for the whole world to see.

    It is interesting, however, how you define skilled -vs- unskilled in terms of how (un)committed one is to one's job. Maybe effort, quality, and commitment don't count any more.
  • Barf 4eva 2008-04-29 13:02
    Well, glad I read the rest of the article. Nonetheless, the theme that only good programmers quit and look for other work is not always true, and this attitude was sort of bothering me because of experiences I've had in the past with a few coworkers. There are some programmers who seem to find new work regularly and still write shit code. Perhaps all they need is a break, a different learning environment? Some on here will instead say "no, they need to find a new career". I honestly would rather not say.

    I do think it is important to recognize the value of staying at a company for a long time. For me, personally, I can learn a lot about the business, how it operates, and how to best implement systems to fit those operations. When the employees are excited about learning new technologies, implementing those technologies with an ever-growing knowledge of the business that they support, and actually has half a brain to do the basic research themselves, the ones who can't keep up DO GET TOSSED OUT.

    The proposed culture of quitting is a very good one.. I always hated the "what if you got hit by a bus tommorrow?" analogy, whereas I think the "well, you'll quit in a couple years in all likelihood, so we need you to document this" attitude is definitely more proactive.

    See, I never got hit by a bus, but I did quit... Had I understood they'd want the documentation regardless of whether I was hit by a bus...

  • Jfruh 2008-04-29 13:04
    I do not think that word means what you think it means.
  • WhiskeyJack 2008-04-29 13:05
    Schnapple:

    Really though it comes across as

    I need you to document this process in detail since you will soon tell us to **** off and so we want you to work harder while you're here so that our jobs, the jobs of people you won't care about later, will be easier.

    I agree with most of your article but I don't think that being honest on this phrase will have the intention you're thinking.


    When I started at my current job, one of the guys on my team took it upon himself to mentor me, both in technical skills and the domain knowledge, and in career development. He was the one who helped me read between the lines, interpret company politics, do what I needed to do to get noticed, etc. We got along well because we are both fans of clean, well-documented, "do it right the first time" code.

    He would repeat the above statements, paraphrased of course, many times. Do it well, now, so that in 3 or 4 years when you've moved on to bigger and better things, the next guy can take it on easily. And we both saw that this was true, as I worked on all kinds of legacy code that were written by the Paula Beans of the company, code that made me go to him and say "WTF?" and he'd say "Yeah, that was Joe. Joe doesn't work here anymore..."

    Ironically (or not), this coworker of mine has recently moved on to another company, leaving me with (I feel) fairly big shoes to fill, but having left me with invaluable advice for a new grad straight out of school.
  • Jay 2008-04-29 13:17
    I'm thinking about whether or not I agree with this. I'll certainly grant it's an interesting idea. But some obvious rebuttals come to mind.

    My biggest objection is the "up or out" philosophy. For someone in management, this might make sense. If you're good at managing one store, maybe as your skill grows the next logical step is to manage a region with ten stores. As you learn more, you move up to manage a division with a hundred stores. Etc. To at least some extent, each step up the ladder is a similar job but with more responsibility. If you were good at managing ten stores, it sounds plausible to suppose that you would also be good at managing a hundred.

    But in software development, there's no such obvious progression. Moving from "programmer" to "team leader" to "manager of software development" is not a series of steps up in responsibility, but an entirely different job. Being a good programmer requires technical skills; being a good department manager requires people skills and budgeting and negotiation. That's like saying that now that you have proven yourself has a violinist, you are ready to be promoted to diesel mechanic. The most likely result of such a promotion is that we would lose a good violinist and gain an incompetent diesel mechanic. It's possible, of course, that the violinist just happens to also be a good diesel mechanic, but if so it's a complete coincidence.

    Every job I've ever had, I've always started as a flunky programmer and eventually become some sort of team leader. And that's the highest I have any desire to go at this point in my life. Maybe someday I'll decide that the technical stuff is getting boring and I want to pursue a completely diffrerent career as a manager. But if so, it would be a completely different career.

    Another objection: Maybe others have worked for better-managed companies, but I've routinely found in my jobs -- present employer always excluded of course! -- that people leave because management has policies in place that punish people for staying. Like, one place I worked we had a meeting where the boss said they were starting some exciting new projects using new technologies that would have high visibility etc etc and just generally made them sound like great projects to be on. So I naturally asked what I had to do to get transferred to one of these projects. He calmly replied that they would be hiring new people for these projects, because the existing employees didn't have the skills and were needed where they were. So ... I'm being penalized because I'm doing too good a job where I am, and because you have deliberately stuck me in a rut and won't let me out. Gee, thanks.

    Or: Try getting a substantial raise at your current job. If you want a raise, you either have to move to a new job or at least get an offer and ask your current employer for a counter-offer. If retaining good employees is such a goal, why do you tell them that the only way to get a pay raise is to quit?

    One thing that impressed me about my current employer is that when they realized that their employee's skills were getting seriously out of date -- many have been doing COBOL since, well, since I used to do COBOL -- they offered them training in newer technologies and opportunities to work on new projects. I've only been here a few months and I was brought in as a "Java expert" to help with the transition, so it doesn't apply directly to me, but I see it as a good sign for the future. They're already talking about giving me an opportunity to work on a dot-net project, despite the fact that I've never done any dot-net.
  • Otto 2008-04-29 13:18
    Nice article overall, but you completely lost me at the end when you said we should become like lawyers and accountants. There's a reason I'm not a lawyer or an accountant, and it's not because I make more money as a programmer!
  • tezoatlipoca 2008-04-29 13:21
    This article was very good - it put a name to what I've been feeling in my current job.

    I started at my previous employer 10 years ago as an intern. I moved from peon to team lead to project manager, but with a relatively flat, large company org chart, and banks of 'tenured' old-timers the opportunities for upward advancement just weren't there (and I had several managers apologize for the lack of promotion due to this, several times.)

    Then, two years ago we received notice that our whole engineering organization would be overseas'd. The six months heads-up caused a few to jump ship immediately; they were the super-skilled who already had standing offers - a few of us opted to stick it out to document and train our (overseas) replacements. I stayed for a few reasons; I wanted to put off the job search having not gone through it in over 7 years; a (still) stable well paying position helped with the new baby that had just arrived. Also, I have an unusually high sense of completion; I hate leaving loose ends. The impending downsize (and the fact that we weren't being given any _new_ work) was a good motivator to finally start cleaning up 7 years of loose ends and unfinished "we'll get to it eventually" tasks.

    I found my new job relatively quickly - it was actually a freakish "experience with long dead legacy system mentioned in passing on my resume" that provided me with a cold call to administer the same system. IT systems administration wasn't really on my career path but the pay was better for less work.

    I just passed my 1 year mark at my new job and my attitude is remarkeably different. Im continually planning for the eventuality of leaving - how long I stay depends on what, if any, role I can find here, after I've finished cleaning up the mess I inherited when I started. I've almost finished, and now Im starting to actively seek out new work from other teams and departments. But from day one I've been maintaining a suite of documents that describes essentially what I do and how I do it, and all the undocumented things that I've encountered that a newbie shouldn't have to figure out for themselves. One of the documents actually starts with "If you're reading this, then.."

    So should the day come that I get 'hit by a bus', I would have no hesitation to give my notice. Everything's documented, itemized, alphabeticized and ready for the new guy.
  • Bruce W 2008-04-29 13:23
    Having spent the first 7 years out of college working in IT for a global accounting firm I saw the "up or out" mentality first hand. And the alumni from my firm was a very powerful network (in fact, that network was helpful when I was laid off later on). In one office an HR person was responsible to maintain a small-scale alumni network particularly with the "rock stars".

    Personally, this article strikes home since I just gave my two weeks notice and I am watching those on my team scurry to fill the hole I will leave.
  • some1 2008-04-29 13:32
    excellent article i have know some of the things you wrote about and i thank you for opening my eyes further more. I have nothing to add.
  • Michael L. Gooch, SPHR 2008-04-29 13:36
    “The human spirit can endure a sick body, but who can bear a crushed spirit?” Proverbs 18:14 All managers know that turnover is expensive. However, as managers, we have not done our jobs very well. Ask any managers if they believe turnover is costly, and they will get to sputtering and slinging words yet not be able to quantify the estimated costs. Don’t believe me? Go out and survey your top managers. If you research this area, you’ll find a wide array of answers ranging from the ridiculously low to the outrageously high. The cost of turnover can vary greatly—estimates of turnover costs range from ten percent to two hundred percent of annual compensation. The hidden costs are more difficult to estimate and include customer service disruption, emotional costs, loss of morale, burnout/absenteeism among remaining employees, loss of experience, continuity, loss of “corporate memory,” workers’ compensation expenses, relocation costs, interview time, advertising, recruitment fees, lowered quality standards, poor community image, etc. Indeed, I don’t believe you can ever capture all of the true costs of turnover. At best, it is only going to be an educated guesstimate. I personally like the one-third rule, that is, turnover costs about a third of the annual salary of the person you are replacing. This is probably too low, but we have to start somewhere. Michael L. Gooch, SPHR Author of Wingtips with Spurs. www.michaellgooch.com

  • Kyle Butt 2008-04-29 13:40
    I think one of the things that has been underplayed in the above comments is the alumni network. I got my current job because of an alumnus from my current workplace. The alumni network that you build is useful not only for helping people afterword, but it can help channel talented new hires back to your company.
  • Brooks 2008-04-29 13:45
    Well, there's a third option to explain the reason why documentation is needed, beyond "if you get hit by a bus" and "if you quit" -- "when you move on to something different".

    And that encompasses both the possibility of quitting, and the possibility of moving up, and the possibility of moving to doing something different in the same company. Even if it's doing sysadmin on the email boxes -- what if the company grows to need two sysadmins? What if we roll out a Web 3.0 project and you're seriously involved in that because you know our systems, and it's easier to hire an email admin to do the well-defined stuff? And so on and so forth....
  • Alan Shutko 2008-04-29 13:48
    Schnapple:

    Really though it comes across as

    I need you to document this process in detail since you will soon tell us to fuck off and so we want you to work harder while you're here so that our jobs, the jobs of people you won't care about later, will be easier.

    I agree with most of your article but I don't think that being honest on this phrase will have the intention you're thinking.


    Why do you assume "being honest" means that management hates their staff and wants to get rid of them?

    My job is all about documenting so someone else can take things over and I can move on to something else. I like doing new things all the time, and I really don't want to get stuck doing some standardized process just because I can't be bothered to tell someone else how to do it. I'm good at figuring out new things, and other people are better at polishing and refining a production process. I want to stick where I'm having the most fun and adding the most value, and my bosses want me doing the same thing.

    Just remember: "Never be irreplaceable. If you cannot be replaced, you cannot be promoted."
  • Steve 2008-04-29 13:56
    What about those of us who don't want to move "up"?

    It's not that I'm complacent and I don't think I'm incompetent but moving "up" would mean moving out of a job that I love -- working with bright young people on challenging projects -- and into management. I've looked elsewhere on occasion and for all the faults and failings in this environment, I wouldn't want to go elsewhere -- certainly not some ratty cube farm with insane development schedules for products of dubious utility or social value.

    I certainly don't want to manage -- at least not full time. I've done a bit of it on and off over the years and would rather not deal with the hassle, thank you very much.

    I've had the same job, more or less, for the last 18 years and hope to continue for at least the next five or maybe ten, if health and the knees hold out.

    Of course, I'm not in the corporate world, I'm in a quasi-research position at a University (but not an academic), so that may make the difference.

    There are times when I walk into the building and start giggling with glee, thinking "they let me work here. . . and I even get paid!".
  • Matt 2008-04-29 13:57
    Otto:
    Nice article overall, but you completely lost me at the end when you said we should become like lawyers and accountants. There's a reason I'm not a lawyer or an accountant, and it's not because I make more money as a programmer!


    You sure don't. Most lawyers I know earn multiple six-figure salaries.
  • talking pie 2008-04-29 14:00
    Has anyone else noticed this is effectively the system universities have been using for... quite some time now?

    Undergrad student->postgrad student->postdoc research fellow->professor->alcoholic.

    You can quit at any point during this, and come out with a formally recognised qualification, and your value goes up until you snuff it after spending a week straight in the lab.
  • Stewie 2008-04-29 14:07
    Amen to that!
  • Iago 2008-04-29 14:10
    "Ambition and skill go hand in hand"? Nonsense. The two are both useful to have, but they're completely orthogonal. How else do you explain why so many clowns end up in politics and upper management, while so many brilliant programmers are content to give away work worth a fortune for free?
  • Farmie 2008-04-29 14:11
    Normally I don't like the preachy soapbox articles, but this one is good and relevant
  • TunnelPound 2008-04-29 14:13
    FredSaw:
    This is true to some extent, and would be all the more so in an industry where technology/knowledge did not change much. In IT, everything changes rapidly and the "Value Apex" is a fuzzy and shifting point determined to a great extent by how rapidly the company embraces new technology and how rapidly the "skilled developer" learns it.
    (...)


    You fail at reading. I find it obvious that the "Value Apex" discussed here is *local* to the company.
  • Question... 2008-04-29 14:13
    On the first minute of the first day, an employee’s value is effectively zero.

    However, once an employee shares all of his external knowledge, learns all that there is to know about the business, and applies all of his past experiences, the growth stops.

    If that employee continues to work in the same job, his value will start to decline.


    Is there any basis for this (particularly the last quote) other than anecdotal evidence?

    Someone's value declines... compared to what? Compared to someone who has been there less time and knows less about the domain? Compared to someone with less experience with the requisite technology?
  • Question... 2008-04-29 14:15
    "Ambition and skill go hand in hand"? Nonsense. The two are both useful to have, but they're completely orthogonal. How else do you explain why so many clowns end up in politics and upper management, while so many brilliant programmers are content to give away work worth a fortune for free?


    Agreed. How many of us know someone who is brilliant (non-Paula style), but would rather spend all his/her days playing video games?

    How many of us know someone who has zero technical skills, but has ambitions on being company president/CEO?
  • Valacosa 2008-04-29 14:18
    I took something else entirely away from the article; a reflection of recent events on the University of Waterloo campus.

    We have both a student newspaper and a campus/community radio station. They are both technically external organizations, but both were started by students roughly 30 years ago. They were also both supported by student fees.

    Also, they both are supposed to have a revolving door when it comes to leadership: the editor-in-chief and the station manager are supposed to change every year. For the newspaper editor-in-chief this has been the case. However, seven years ago the manager of the radio station finagled the Board of Directors into letting her keep her job on a permanent basis.

    Last term one of these organizations lost the majority of their funding in a referendum, in a 2-to-1 decision to axe the student fee. Guess which one.

    Alex's article doesn't just apply to low-rung employees. It also applies to to the leadership, too - from time to time organizations need a fresh infusion of new vision and ideas from the top.
  • lookaround 2008-04-29 14:18
    I do see some sense in the article but there are some things I disagree with. I work for a small company and do mostly web programming on very small sites so things might be different at a larger company. My experience with large companies is too short and disorganized for me to get a good feel. Here are some of my problems.

    Paula Bean changed jobs all the time.

    I have stayed at my company for 10 years because they have been changing tech and advancing (VB6 and Access, then cold fusion, then sql server, then asp, then asp.net with c#) and I have no interest in anything but programming. I have been offered manager roles and turned them down. I have the opportunity to learn. They provide training and books.

    I am not entrenched. The stuff we write where isn't around long enough for anyone to master it. It lives for a few years and is taken down and gone.

    I stay because I have variety, I can help create change and advancement so things don't become stale and I can work my 8 hours a day and go home to my family. I thought I would have switched my now but they give me reasons to stay. I know there are people better than me but my code is organized, maintainable, commented, and runs fast enough to do what it needs to do. (Others have taken my projects without too much pain so I assume it's not just my delusions)

    I also know people who were forced from jobs they were very good at and liked very much because management thought that if you don't advance, you aren't ambitious and therefore not as good. They quit.

    Oddly enough, my company has actually told me they know I'm likely to quit and move on so this might actually all be an arguement for this article.
  • wre 2008-04-29 14:24
    I'm confused - you're solving the IT Turnover Crisis by ensuring constant turnover? Also, some of the worst code I've seen has been written by people who didn't plan on supporting it. And having good documentation helps but it certainly doesn't fully replace the person who originally wrote it.
  • dlikhten 2008-04-29 14:25
    The article forgot to mention:
    In a culture of quitting, companies can begin a "employee exchange" program, where companies create opportunities for employees to move around and be productive and they know the employees are good because they come recommended from a company they know and trust.

    This way the transition is beneficial to employees in that they don't need to spend time and secrecy searching for work, and employers don't need to spend time and money looking for talent.

    I wonder if that will work out.
  • CygnusTX 2008-04-29 14:44

    After ten years of programming, I got a wild hair and decided to go to law school. After graduating, I spent a few years at one of the largest firms in the nation.

    Regardless of what one thinks of the merits from the outside, a model based upon Cravath or any other large law firm will be fatally flawed.

    There is a reason why attorneys are some of the least happy people in the nation. It is not the work; it is the environment.

    Tread carefully.
  • Gamma 2008-04-29 14:50
    Buffled:
    - and if you look at that point along the tenure line, growth value /is/ shown as exponential. It becomes logarithmic only after the apex


    No, the curvature is negative throughout. It is never exponential.

    loe:
    Maybe the exponent is -1/2?


    An exponential growth curve has a*x as the exponent, where x is the independent variable, and a is a positive constant.
  • SomeCoder 2008-04-29 15:01
    There are definitely arguments for and against this article. However, this article rang particularly true at a previous employer. I spent time working and learning and eventually hit the apex. Then I found a new job.

    But I agree with some other people in this thread. While I have no problem moving around a lot now, when my wife and I have children that is a different story. I'm going to want to find a nice stable job and stay there for a LONG time. It doesn't mean I'm unskilled, it just means that at some point, you have to settle down (at least if you share the same goals I do).
  • Mike 2008-04-29 15:02
    Nice job on using "myriad" correctly. You don't see that often. Good article too.
  • Cooksey 2008-04-29 15:02
    I was a longtime manager in the video game industry and we called this process "Brightsizing".

    Upper management would make stupid decisions or expect excessive kickbacks (free overtime) and everyone who was bright and employable would roll the dice and leave the organization.

    I used mentoring as a standard practice and my employees tended to follow me from job to job as I brightsized my way across the industry.

    Finally I got sick of it all and am hiding in my garage near Silicon valley slinging code for myself. Its nice and quiet and I dont have to deal with legacy code written by folks who need more help before getting near a project.

    heh!


  • FredSaw 2008-04-29 15:08
    TunnelPound:
    FredSaw:
    This is true to some extent, and would be all the more so in an industry where technology/knowledge did not change much. In IT, everything changes rapidly and the "Value Apex" is a fuzzy and shifting point determined to a great extent by how rapidly the company embraces new technology and how rapidly the "skilled developer" learns it.
    (...)
    You fail at reading. I find it obvious that the "Value Apex" discussed here is *local* to the company.
    You fail at something--either reading, or comprehension, or visualization, or communication. Whatever the case, your comment has no connection with what I said.

    No doubt you'll feel obligated to argue the point. Knock your lights out. I, however, have no interest in pursuing it further. What I said is clear enough and needs no elaboration. So you'll be able to gleefully have the last word and shore up your sagging ego by throwing more derogatory remarks at me.
  • Mike N 2008-04-29 15:09
    Good article, but for those of us in certain countries you forgot one word that throws a spanner in the works ...

    Unions!

    Bane of my bloody life and I've had to put up with them protecting the morons here in Sweden and while I was working down in Oz ...
  • Tom Woolf 2008-04-29 15:13
    One method sometimes used to ensure turnover is the practice of forcing each department to get rid of the bottom 10% of their group. Sounds great in theory (just like Alex's does), but in reality can leave to ineffective and inefficient cliques...

    The company I used to work for was getting ready to implement the 10% plan. Problem was, the bottom 10% in my department was the manager. Does anybody really think that he'd look at his group, see himself in the mirror, and say "wow - I really suck!" Come on now. In reality, he would have gotten rid of the person who stood up to him the most. That would have led to other skilled workers quitting or transferring out to other departments (keep in mind those other departments just had openings in 10% of their positions!), so after a year or two all that would have been left in that department would have been the incompetent manager and his subjects/sycophants.

    As is - he did not have to worry about that. He was so bad that within a year of his taking over he lost every worker who had over 1 1/2 years in that department.

  • mister 2008-04-29 15:15
    TRWTF is that there is no WTF!
  • VGR 2008-04-29 15:20
    Excellent article. I've been in that "value apex" curve more times than I care to remember.

    But the "culture of quitting" is just a solution to the larger software management problem. Genuinely talented people find their value falling off, as the apex curve indicates, because the company places little or no value on excellent software. So it's no wonder the engineer is of decreasing value once the software reaches a "good enough" state.

    I'm betting there isn't much of a turnover or "culture of quitting" at a place like Google.
  • Steve 2008-04-29 15:25
    Great article. You have very effectively described the US military. As a 17-year member of the Air Force, I find that "culture of quitting" describes us perfectly. Even though a member may spend 20 years "in the Air Force", part of the culture is that we never spend more than a few years in a single job or place. Because we are always aware that we'll be leaving our current assignment eventually, we are encouraged to "document" our job so that the next shmuck can take over after we leave.

    Of course, such a culture has its own problems. For us, "up or out" applies, but not in terms of technical knowledge. Generally, an Air Force member is encouraged to learn more about "leadership" and "management skills" than the technical aspects of their current job, because it is assumed that if they stay in that they'll move into a management position. "Up" in this context is equivalent to "supervising more people".
  • Otto 2008-04-29 15:27
    Matt:
    Otto:
    Nice article overall, but you completely lost me at the end when you said we should become like lawyers and accountants. There's a reason I'm not a lawyer or an accountant, and it's not because I make more money as a programmer!


    You sure don't. Most lawyers I know earn multiple six-figure salaries.


    That's precisely my point. If I were only in it for the money I would be a lawyer. But my desire not to be a lawyer is far greater than my desire to make an enormous amount of money.
  • Zdonick 2008-04-29 15:32
    Oh wow, this is formal
    VERY interesting!
  • Pope 2008-04-29 15:32
    Jfruh:
    I do not think that word means what you think it means.


    Anyone want a peanut?
  • Schnapple 2008-04-29 15:33
    Alan Shutko:
    Schnapple:

    Really though it comes across as

    I need you to document this process in detail since you will soon tell us to fuck off and so we want you to work harder while you're here so that our jobs, the jobs of people you won't care about later, will be easier.

    I agree with most of your article but I don't think that being honest on this phrase will have the intention you're thinking.


    Why do you assume "being honest" means that management hates their staff and wants to get rid of them?

    My job is all about documenting so someone else can take things over and I can move on to something else. I like doing new things all the time, and I really don't want to get stuck doing some standardized process just because I can't be bothered to tell someone else how to do it. I'm good at figuring out new things, and other people are better at polishing and refining a production process. I want to stick where I'm having the most fun and adding the most value, and my bosses want me doing the same thing.

    Just remember: "Never be irreplaceable. If you cannot be replaced, you cannot be promoted."


    Well that particular snippet you quoted is more aimed at management's fears that you'll be the one to leave. Regardless, sometimes management does hate their staff and want to get rid of them - they're a whiny bunch of geeks in a cost center and that TV report they saw the other night says there's tons of people in this country or others willing to do their job for much less money. Yes, these are the poorly managed companies with very flawed logic but it does happen, and probably more often than you think.

    But yeah I agree with the irreplaceable=unpromotable bit.
  • Robert 2008-04-29 15:39
    @Iago

    You may want to consider reading "Putt's Law and the Successful Technocrat." Every technological infrastructure eventually gets to a competence inversion. All the people that know how to get things done are on the bottom keeping the business alive while the management ranks are filled with...you know.
  • Gamma 2008-04-29 15:41
    The Dilbert Principle:

    Companies tend to promote the least competent employees to management, in order to reduce the amount of damage they can do.

    http://en.wikipedia.org/wiki/The_Dilbert_Principle
  • Renan "C#" Sousa 2008-04-29 15:52
    Best article ever on this site.

    I misread Value Apex for Value Alex when I first read it.
  • Anon Fred 2008-04-29 15:54
    talking pie:
    Undergrad student->postgrad student->postdoc research fellow->professor->alcoholic.

    You can quit at any point during this, and come out with a formally recognised qualification, and your value goes up until you snuff it after spending a week straight in the lab.


    Actually, Ph.D's in Computer Science are often seen as damaged goods by industry.

    (The best compsci folks I know are Ph.D's, but you have to vet them carefully.)
  • mtan 2008-04-29 15:58
    This article has some good things to say, but it's relevance isn't universal in our industry.

    New roles within a company can push the value ceiling up. In other words there is no apex, since there is no decline.

    Now, I realize that not all companies aren't like this (I know, I've worked for some) but moving from short-term job to short-term job isn't necessarily a walk in the park either. I mean, how much self-actualization do you get from building a Shopping Cart Application, or a Corporate Intranet, or an internal CMS over and over and over...

    I won't address the "Mercenary vs. Citizen Soldier" mentality. Machiavelli and others have written better about it than I could ever write. Different strokes for different folks.
  • jtl 2008-04-29 16:02
    Why I don't want to leave my job...explained in a wayne's world quote...


    (Benjamin and Garth are in some kind of lab away from the set of the show, with lots of wires, and a hand on the table.)

    Benjamin : Garth, you and I, we've never really talked.

    Garth : (Stares blankly)

    Benjamin : We're thinking about giving Vanderhoff a weekly spot on the show, how do you feel about the change?

    Garth : We fear change... (the hand starts to move its fingers, so Garth picks up a hammer and starts smashing it in until it stops.)

    (They both stare at each other)
  • FredSaw 2008-04-29 16:10
    jtl:
    Benjamin : We're thinking about giving Vanderhoff a weekly spot on the show, how do you feel about the change?

    Garth : We fear change... (the hand starts to move its fingers, so Garth picks up a hammer and starts smashing it in until it stops.)

    Pointy-haired boss: "This is our new Creativity Director."
    Dilbert: "I've got some ideas."
    Creativity Director: "Whoa... loose cannon."
  • George Weller 2008-04-29 16:15
    Save for one small problem - those companies that are *not* the "good guy, focused on what is good for the employees and themselves" types. These are the "users" that hire skilled talent, push them to their limit and smile happily when they depart in disgust. The hallmarks are poor pay, extreme lack of management within the team as well as without, no documentation in the code, poorly written code, tolerance of truly obnoxious personnel (One company comes to mind where the "top individual" is a lousy coder, has no respect for himself or his coworkers (his cube actually stinks from the trash) and is kept on mainly because he has been there the longest and has cowed his manager into believing that the company will collapse without him. I have to give credit to the manager however, he promised a great deal and I was inexperienced enough with lousy bosses that when the offer letter that spelled out all those promises didn't come, I just blew it off as a "too much going on right now" incident and went to work there anyway. BAD IDEA! The company delivered on none of the promises and I left as soon as I was able to garner other, suitable employment.
    The upshot of all this is that the proposed system is fine so long as everyone plays by the rules and doesn't LIE to its employees!
  • Asiago Chow 2008-04-29 16:17
    Cravath and similar systems are intended as filters. The design goal is to weed out people who are not suited to the type of work by imposing a set of rules that most benefit the types of people who are most suited to the work environment. Those systems are specifically adapted to competitive steady-state jobs... in other words, industries that keep doing the same thing over and over again (like lawyering... there is no real difference between a lawyer 100 years ago and a lawer today) in competition with very similar people (there are always lawyers). They are not adapted to developing industries where there are new challenges every year. They are not adapted to attrition industries (entertainment, wartime soldiers, etc) where external factors or natural ability will cause a constant loss of tallent.

    To take it a step further, Cravath and similar most benefit employers with workers whose goals and methods are innately (by the nature of the work) aligned with the employer. Where the employee is a microcosm of the employer. A lawyer does the same work as a law firm... the law firm just does more. In other words a situation where self-interest and corporate interest are, by the nature of the work, parallel. Look at a salesperson. Their personal goals (make money by selling) and work goals (make money by selling) are parallel. Consider a lawyer.... their personal goals (make money, gain respect and influence, by winning) are convergent with their employer's. The individual worker's goals are just a smaller version of the employer's goals.

    Are those conditions true in IT? Is IT steady-state? Do the goals of IT workers and IT employers naturally converge?

    No and NO.

    The IT industry is constantly evolving. Skills I learned 15 years ago are, for the most part, laughably obsolete today. That's true for a lot of engineering... the joke about the teacher saying, "I don't change the test because every year the answers are different," really holds true. While it is possible to attach yourself to some technology and ride it for a while, eventually it will go away and there is never a guarantee you'll be able to ride it to retirement or even to the end of a normal car loan. This isn't even like doctoring where an old doctor may not be up on the latest treatments but can still do some good... an old IT person used to dealing with delay line memories and so on simply cannot get a job without retraining... it's like being a doctor in a world where humans can fundementally change how they work from year to year. Not steady state.

    Workers in the IT field rarely have a true interest alignment with their employers. This isn't bad... it's just the reality of IT. IT departments exist to serve the needs of others. The IT department is always and only there to fulfil the business needs of the larger entitity (or customer) and success for the larger entity/customer is often bad for the worker. The trivial example is that a truly successful IT roll-out reduces the employer's need for IT workers... so IT workers who do a really good job are courting unemployment an reduced income. The larger example is that many IT workers get into IT for personal reasons... they want to play with technology, they enjoy writing code, and so on. A worker who enjoys writing code will tend to encourage code-based solutions even when the company is best served by some other approach. A worker who enjoys managing big iron will encourage the company to buy enterprisey hardware even when the employer doesn't need the extra overhead. These conflicts of interest are innate and you really don't want to eliminate them... often the best coders are the guys who love to code, the best sysadmins are the guys who love to tinker with big computers, and so on... but they affect the viability of an "up or out" model.

    We've all seen it... the guys who spec technologies based on how they'll look on their resumes, the guys who spec hardware based on the fact that it gives them jollies to be in command of such a huge machine... the guys who write convoluted and buggy code because they think it will give them job security... what drives them to do those things? The FACT that their interests are divergent from their employers. Personal ambition and corporate goals don't align... but the results, when everything works, can be spectacular. The guy who really loves to design a good UI can single-handedly push a company foreward, the guy who wants big iron can save the day when an unexpected load comes up. Can doesn't mean will though... and on average what you have in inefficiency.

    Can the goals align? Yes. Some IT workers do understand and gain satisfaction from furthering the business needs of their employers. However, those employees are often the ones that propose more modest solutions. They use the tried and true methods, the modest hardware, the sensible technologies... and at the end of the day they have a string of unexceptional successes on their resume.

    A Cravath type system is most likely to push out the "mediocre" people who deliver acceptable but non-flashy
    (non-enterprisey) solutions and elevate the people who build flashy high-risk solutions that aren't in the best interests of the company as a whole. That doesn't seem like such a good long term plan to me.

    I understand the desire to solve some of the real problems that have developed with the IT workforce... but this solution isn't really going to cut it. Why don't we just use some common sense and fire the people who are leaching, encourage the people who are helping, and accept that not everyone has the same goals or mindset? It is less radical but it might just work.
  • sim 2008-04-29 16:33
    Awesome article. This explains an awful lot :)
  • Pat H 2008-04-29 16:51
    Great article!
  • A.. Coder 2008-04-29 16:53
    I recently(within the last 8 months) took a job at "a large security contractor" as a rock watcher. Within two months my bosses approached me to help with a transition as the lead web developer was leaving the company. I was then promoted to the tech/communications side of the business and now maintain several code bases and have a better salary.
    All of this wouldn't have been possible if the company I work for hadn't had the Up or Out mentality and took the time to document even 'non-relevant' skills to the original job I was hired for. I think each job is subjective but most larger jobs are advantaged by using some version of this system at least with many of us Younger workers
  • igftw 2008-04-29 17:08
  • Grubsnik 2008-04-29 17:31
    It's been estimated that "generalists" lose about 20% of their relative worth every year, if they aren't recieving any training or supplemental education. For "specialists" the value can be up to 40%.

    The point is, once you get past your apex, you will slowly start to approach the convergence point, where your value is no longer based on your individual skills, but on your knowledge of existing systems.

    It's true that updating your skillset with new training, once you are already settled in, can slow the decline past the apex point, but in reality, you are still approaching the point of convergence.

    As some have mentioned, you don't necessarily have to change which company you work for, as long as you change which project/team/division you are in. This is the reason Google is so good at retaining their employees.

    If you are arguing that stability is more important to you than professional development, then chances are you are in the lower curve already. Another thing worth noting is that "up" doesn't have to mean higher in the management hierarchy, it could also mean more challenging/demanding tasks.
  • jbinaz 2008-04-29 17:31
    Sa:
    Ah yes. the ADHD approach to IT. Make me a partner or I'm out of here.

    Thank goodness there are a few of us non-ADHD IT people left to come in and clean up the messes that you leave behind.


    Just because someone comes in and learns something and then moves on doesn't mean they have no commitment. You can still learn and not produce crap; it just takes you longer. And that time is usually done at nights and on weekends.

    Since you sound so arrogant and condescending to those who change jobs often, I'll throw it back at you: the non-ADHD types are just slow learners who can't pick things up quick enough...that's why you stay there for years. And you're also control freaks who have to hoard your knowledge to feel good about yourselves.
  • Edward Royce 2008-04-29 17:36
    Hmmmm.

    So. The best way to run an IT department is to hire recent college graduates, work'em hard and be really jolly when they leave?

    Isn't that Microsoft? Isn't that how we ended up with Vista?
  • Bob 2008-04-29 17:36
    I could not disagree more. Self actuation? BRAHAHAH!!! How about paycheck actuation. Bring back Mandatory Fun Day!
  • DeltaDeltaDelta 2008-04-29 17:41
    Agreed. But hey - the derivative in the beginning looks high enough, doesn't it?
  • SomeCoder 2008-04-29 17:43
    Grubsnik:
    I
    If you are arguing that stability is more important to you than professional development, then chances are you are in the lower curve already. Another thing worth noting is that "up" doesn't have to mean higher in the management hierarchy, it could also mean more challenging/demanding tasks.



    Stability is an awfully broad term. As you alluded to, professional development doesn't necessarily mean moving from company to company (see: Google) but stability also doesn't necessarily mean that you have no professional development.

    Sitting in one job and hoarding knowledge is the kind of stability that stunts development.
  • Matt 2008-04-29 17:57
    Alex, is this your way of saying you're getting tired of maintaining this site?
  • slamb 2008-04-29 18:03
    Buffled:
    FYI, a graph for exponential growth would have a positive curvature, not a negative one like in this pic.

    Actually, look closer - he said that there would be exponential growth while the employee masters the business domain and shares his ideas with coworkers and management - and if you look at that point along the tenure line, growth value /is/ shown as exponential. It becomes logarithmic only after the apex


    What are you talking about? It's concave down throughout the entire function, so it's clearly never growing exponentially. Something like "ax - bx^2" fits just fine left or right of the apex. The constants would differ, so it does seem to be two different functions, but I see no reason to believe the left is exponential or the right is logarithmic.
  • dmaclay 2008-04-29 18:14
    Actually, in many industries the final step is for the experienced staff to spin-off their own businesses (often on good terms with their old company) becoming the next generation of senior partners at the top of a little money-making engine.
  • dmaclay 2008-04-29 18:19
    boheme:

    I agree wholeheartedly with you, but I feel as though you may have overlooked that jumping from job to job greatly diminishes your chances of retiring with a comfortable pension. Yeah, I know that it's not our father's job market any more. But when you have consider other benefits as well, such as health care plans that may not carry over from one employer to another, it's a scary place for employees who aren't, or may never will be, putting away the big bucks. I understand your desire for a more stolid approach to employee retention, but I think that at the same time, even employees who are able to find other jobs might want to marry and have kids, and settle down into a position that will afford stability. After all, you home is one of the biggest sources of equity in your old age, and unless you're extremely wealthy, moving around every few years to accommodate that new job isn't easy on your kids, your wife (or husband), or your retirement savings.

    That's my two bits. =)

    Actually, in many industries the final step is for the experienced staff to spin-off their own businesses (often on good terms with their old company) becoming the next generation of senior partners at the top of a little money-making engine.
  • Ravi Wallau 2008-04-29 18:25
    That's something I always felt and now I see that it's something that happens with everyone, not just me.

    That was a good reading.
  • Jon 2008-04-29 18:33
    This article is the biggest load of nonsense I've ever seen posted here. Thanks for the laugh; keep up the good work.
  • swordfishBob 2008-04-29 18:35
    I think Asiago Chow (above) has a good point, though again it's painted in broad strokes. I'd counter it's possible to have well-aligned values at the same time as the drive to be innovative.

    Re the value curve, should that really apply when we're talking IT? The text describes value as a combination of learning the company, and bringing external ideas (implied as a fixed quantity learned from previous employers). With just a little reading and training, and a rapidly evolving field of expertise, we of all people should be able to step up the value every few years.
    Company size likely is an issue, re-inforced by the comment on the US Air Force, but Alex still described it as the length of the curve rather than shape.

    I'm in my 12th year at an manufacturing company with agriculturally seasonal business and ~120 permanent staff. In that time, our management has flattened somewhat, a few departments were spun off and outsourced (to themselves) including all of IT apart from myself; leaving me answering to CEO. Some of the outsourced work has been brought back in, including half of IT. I still answer to CEO but could easily be under the current IT mgr. Doesn't matter. I'm still in the same role as when I started; but have earned more trust from management over the years. I'm still adding value to the company, innovating, involving newer technologies to improve overall efficiency and flexibility in a changing market.
    I guess if my employer was in a more stagnant market I wouldn't have the same opportunities, and would have moved on, but how many markets really are that stagnant? How often is it the company directors choosing whether to evolve or just sit still and hope for the best?
    Last year we started using web services to integrate on-site and central systems. Now I'm rapidly learning about RFID. Every few years we've had a significant change in WAN technologies, as telcos deliver new services and speeds and as our requirements grow. (We're not city-based, so have only recently got above 64kbps at most locations). My knowledge of the company is still increasing, as is my technical experience, and I see plenty of scope to continue.

    Regarding documentation, I've been through that one on both sides. Some years ago the IT manager got on my case to "start documenting some of that immense knowledge" (he was also an HR type so knew how language can be used positively, though he did mention the proverbial bus). Thing is, mostly it was general technical training plus familiarity with the environment. It seemed I was being asked to write a textbook on TCP/IP, SQL, and a few off-the-shelf products, in addition to more relevant site notes, internal standards etc. Documentation in our department has improved quite usefully. It did, however, take a while to make the point that documentation!=understanding, and there are some jobs that just cannot be done by monkeys with documents. I haven't been hit by a bus yet, nor left. Our turnover of juniors seems to have vanished too.

    Company-wide, we have lost a lot of people with corporate knowledge through regular turnover. The productivity loss depends on how many longer-standing staff remain, and which specific people they are, so the indirect cost of turnover can't be a fixed figure.

    I agree that turnover should be managed in the knowledge it will continue to happen, but that doesn't mean every position is compulsorily short-term, nor should IT staff be bound to the "value curve" presented.
  • fountainier 2008-04-29 18:43
    This is why I love Microsoft. Every two years you can "quit" and change to any other team in the company (there's a LOT to choose from), while maintaining the seniority you have.
  • aliquam 2008-04-29 18:49
    The "beachheads of bad code" statement is the best line I've read in a LONG time. It just brightened my day that little extra that I need to be happy :)
  • The 'Other' guy 2008-04-29 18:52
    Alex:
    But imagine if the justification for documentation was different:

    I need you to document this process in detail so that any yahoo can understand it a year from now after you’ve left.

    I’ve never had a manager or higher-up ever put it that way.


    Then consider yourself lucky. In a long-ago job, the "Director of IT" required us to document every maintenence task in mind-numbingly concise detail. We're talking "cookbooking" how to do everything.

    The reason why this idiot needed the level of detail was because his actual knowledge level was nil. He could only do things by rote, so he needed scripts in order to get anything done when one of the skilled people (i.e., everyone else) was not available. Yes, you're right: the only reason he got the position was by virtue of being related to the president of the company.

    The rest of us eventually revolted against his idiotic requirements. My breaking point came when he told me to cookbook how to check out a prior release, build and deploy it. I provided a document that had every other branch as "contact the developer."
    -----------------------
    57) Compile the program: type the word make and press the enter key.

    58) If you see any output that starts with WARNING: or ERROR:,
    Contact the developer. --- STOP ---

    59) (etc)
    -----------------------

    The server guy's came when he was asked to cookbook how to solve MX record (mail) issues with the company's ISP.

    Eventually all the skilled IT workers (i.e., everyone else) left, and the company outsourced all their development and server management, paying easily 5x the cost of staff as a result.
  • wesley0042 2008-04-29 19:28
    Alan Shutko:
    Schnapple:

    Really though it comes across as

    I need you to document this process in detail since you will soon tell us to fuck off and so we want you to work harder while you're here so that our jobs, the jobs of people you won't care about later, will be easier.

    I agree with most of your article but I don't think that being honest on this phrase will have the intention you're thinking.


    Why do you assume "being honest" means that management hates their staff and wants to get rid of them?


    Actually, I took that statement to mean, "This company and its management and policies are such utter crap, you'll be scrambling for the exit within a year."
  • Sa 2008-04-29 19:41
    jbinaz:
    Sa:
    Ah yes. the ADHD approach to IT. Make me a partner or I'm out of here.

    Thank goodness there are a few of us non-ADHD IT people left to come in and clean up the messes that you leave behind.


    Since you sound so arrogant and condescending to those who change jobs often, I'll throw it back at you: the non-ADHD types are just slow learners who can't pick things up quick enough...

    On the contrary. I'm the guy who mentored the new hire, taught him the business, and moved him up Alex's curve in the first place. It's a shame that his only interest is in padding his resume and moving on. The company needs his skill and is willing to reward him for it. Instead, he plays along until he get bored and then jack rabbits out of the place. Us "slow learners" then have to clean up his mess and concentrate on making the business work.

    And you want to label this guy a super high skilled developer. Not because he develops quality programs but because he is able to convince a competitor to pay him more and grease the way for him to bolt from them next year.
  • Herby 2008-04-29 19:41
    While it is a good thing to say "Document the procedure so the next guy can do it", the actual thing you should do is to document the procedure (program, etc...) so that YOU understand it. In my work, I have found that if I'm away from code for about 6 months, it starts looking funny. Those comments I wrote a while ago that explain the (then current) thought process were the only way I could continue. Now I make it a habit to "document for self" as if I can write the information on how to do it given my own skill level, than I consider it a success. If others aren't up to my level, then they need to be infused with the "base knowledge". I can't provide that!
  • Peter 2008-04-29 19:50
    Someone doesn't remember their calculus. That's definitely not an exponential curve.
    If anything, the red one is logistic.
  • Quinnum 2008-04-29 20:05
    Iago:
    "Ambition and skill go hand in hand"? Nonsense. The two are both useful to have, but they're completely orthogonal. How else do you explain why so many clowns end up in politics and upper management, while so many brilliant programmers are content to give away work worth a fortune for free?


    QFT.

    In addition, I find the whole premise of "Why the skilled quit first" is flawed. Bruce is full of crap. He doesn't take into account many of the other psychological factors that drive a person.

    The unskilled often don't know they are unskilled. They muddle through the day and think they are good. Some will loudly proclaim so.

    It's more about self-confidence and how you sell yourself, not skill. How often on this very site do we here about utter morons who managed to pass the interview? Yet, the poor guy with Asperger's could be turned down because he's 'odd' - even though his skills may be better.

    So, just whacking it down to 'skilled people leave, unskilled stay' is plain wrong.
  • Jim Jones 2008-04-29 20:41
    Schnapple:
    Alex:
    But imagine if the justification for documentation was different:

    I need you to document this process in detail so that any yahoo can understand it a year from now after you’ve left.

    I’ve never had a manager or higher-up ever put it that way.


    I would imagine this is for a few reasons other than denial. First, this phrase can easily come across as:

    I need you to document this process in detail so that when we fire you and hire a cheaper replacement you will make our lives easier

    Second, it comes across as borderline insulting

    I need you to document this process in detail since you're an easily replaceable cog and we'll probably use someone from Sales or an Intern to do this once we're done with you

    Really though it comes across as

    I need you to document this process in detail since you will soon tell us to fuck off and so we want you to work harder while you're here so that our jobs, the jobs of people you won't care about later, will be easier.

    I agree with most of your article but I don't think that being honest on this phrase will have the intention you're thinking.


    Amen!
    And I'd like to add that this whole "Up or Out" bullshit is not more than "Hire & Fire" with some pretty lipstick smeared on.

    "Value Apex", my ass!
    Must be from the same book where terms like "Human Capital" are coined, right?

    This article proves yet again that there's indeed a whole industry dedicated solely to researching how the last bit of "performance" (read: lifeblood) can be squeezed out of a worker in the shortest time possible.

    What annoys me most is the premise of these suggestions and so-called "best practices". They have long given up even trying to pretend an intention of forming a longterm relationship with you or *god forbid* offering a fair reward.

    So, you have a "Dead Sea" Problem?
    Two words: Revenue Share.

    I happen to be one of these high profile workers and am in the process of quitting my job for precisely this reason: You want me to spend 60hrs a week building and maintaining "your" product?
    That's cool, then give me n% (in relation to my contribution) just like the "boss" gets and don't try to fuck me over with bullshit like "Agile" or "Up or Out" philosophies.

    Good people get stuff done. Better yet, good people naturally find the process that helps them to get stuff done. They don't need to read books about processes that were only written so that the consultant breed has something to talk about.

    Hire top notch and you'll be google. Hire bottom barrel (because "how hard can it be") and you get what you deserve.

    Fortunately no artificial process will change this fact of life.
    Unfortunately the "process book-writers" will never die out either
    so we'll keep reading about the latest new "optimization in leveraging your human capital" every year...
  • Mark Dennehy 2008-04-29 20:42
    The thing about the problem of the dross staying in while the skilled move on, is that most companies are prefiltering out the good developers with bad job ads, which have basic elemental mistakes. If they fixed those, you'd see a higher intake of good people, and there's your key factor in having more skill at the top - because the more good people feeding in, the higher the quality of those who remain, even if you change nothing else.
  • Uh Huh 2008-04-29 20:45
    I left a 80K job for exactly the reasons you describe; I hoarded my knowledge of the company and am now making 150K, doing the same thing except as a consultant. Your analysis sounds moral and sweet but, bottom line, make yourself irreplaceable and then quit. You will be happy you did.
  • Patrick 2008-04-29 20:49
    Personally, I prefer "I need you to document this in the way that you wish it was documented before you started"

    I have both started and finished but one project in my current job. Every component built with the idea that it will probably be replaced with a better one at a later point, or expanded, without breaking the rest of it [much].

    Other projects I've worked on were started before my time and will probably never be 'complete'. Yet I find in these ones haphazard spaghetti code, hacks, patches, and general bad stuff. I spend more time cleaning up and rewriting than actually building. Who the heck puts a try/catch around Application.Run()?? And what little documentation there is, has either expired or is relevant to the function three declarations down because some auto-generated code cut in and no-one cared to move it back. I found a labour-saving function that would have saved on hundreds of lines of code had it been used wherever it was needed rather than once. Yes, just once. Where was the documentation that said that function existed?

    Case in point, when I write documentation, I write it as I wish it had been written before I started working on it. That way the next guy doesn't have to say "where the hell did this come from? I could've used that".
    [/rant]
  • yourname 2008-04-29 21:05
    well this seems to be true in every industry not just programmers.
    most people if they do make and save up enough money go out then start fun business's or do what they want to do in life.
    my personal goal is to open a tanning salon but that just me (and im sure 1000's of other programmers).
    take the Norton Antivirus guy...he sold his business and started a art collecting/selling business.
    a friend of mine made millions when his startup sold and now makes documentaries.
    programming for must of us is a ways to a means and surely is not our life.
  • Douglas 2008-04-29 22:30
    Buffled:
    if you look at that point along the tenure line, growth value /is/ shown as exponential. It becomes logarithmic only after the apex


    An exponential doesn't have an apex, this function looks more like t*exp(-t)... but that's really pessimistic, as it tends towards 0 as t -> infinity!
  • robbak 2008-04-29 22:48
    Jay:
    I'm thinking about whether or not I agree with this. I'll certainly grant it's an interesting idea. But some obvious rebuttals come to mind.

    My biggest objection is the "up or out" philosophy. For someone in management, this might make sense. If you're good at managing one store, maybe as your skill grows the next logical step is to manage a region with ten stores. As you learn more, you move up to manage a division with a hundred stores. Etc. To at least some extent, each step up the ladder is a similar job but with more responsibility. If you were good at managing ten stores, it sounds plausible to suppose that you would also be good at managing a hundred.


    What you are describing is the Peter Principle - The tendency to promote people beyond or outside of their skill set.
    This happens in education too: when a good teacher is recognized, they tend to be promoted into management. But a good teacher is not always a good manager, and they probably would prefer to be a teacher. So they quit and find a job where they can do what they like to do - teach.

    Alex is pointing out that a good technician will, after a few years, get bored of the same old thing, and will probably quit. Promoting him to a management position will only guarantee that he will quit sooner: he wants to code, damnit! So, we have to see how to use this inevitable turnover to our advantage. Tricky, but doable.
  • Top Performer 2008-04-29 23:20
    You nailed buddy! thanks for the post.
  • pyro789x 2008-04-29 23:43
    Sorry, but this is the kind of post I just don't want to read here. Honestly, I don't care about your opinions on the matter, and I think that you are dead wrong about them anyway. Let's get back to laughing at poorly designed code and the curious behavior it causes, along with the personal stories from those in IT that have to deal with the severe WTF.
  • fennec 2008-04-29 23:53
    boheme:
    I agree wholeheartedly with you, but I feel as though you may have overlooked that jumping from job to job greatly diminishes your chances of retiring with a comfortable pension.


    It's called a 401(k). (Or sometimes an IRA). Assuming for a moment that you do the smart thing and manage to look around for the better job before leaving the original one, there's no reason you can't contribute plenty.<p>
    Your present is already very much dependent on your company. Why put all your eggs in one basket and make your future dependent too?
  • if the boss reads this ill get shot 2008-04-30 00:15
    heh its funny how the company I work for is nearly the polar opposite of this article. Even the idea of me leaving is skated around and ignored, i got told once that the company was like the Hotel California - "You can checkout any time you like, But you can never leave!"

    Every time i suggest certain things like better documentation in the event that I do leave, which also gets skated around and ignored.

    Pay rises are nill, promised benefits are never delivered.

    This has lead to me becoming less and less motivated with my job, I only learn new technology's so i can do my job in a fraction of the time and read sites like this in the rest rather than doubling my productivity.

    I feel just like the guy from office space, "I only do enough work to not get fired" but im too lazy to do anything about it because i dont see much hope in any other company around.

    Needless to say, looking at changing carrers.
  • david 2008-04-30 00:49
    Up or Out is also a common strategy in the Army. One part of the justification is that it provides a large reserve officer core, who can be recalled to officer a civilian army in time of conflict. It also means that junior officers are young and fit, and solves the succession problem.

    But it has the effect that normally all officers are inexperienced at the level at which they are serving.
  • ajk 2008-04-30 02:26

    If you’ve worked at enough companies in the IT industry, you’ve probably noticed that the most talented software developers tend to not stick around at one place for too long. The least talented folks, on the other hand, entrench themselves deep within the organization, often building beachheads of bad code that no sane developer would dare go near, all the while ensuring their own job security and screwing up just enough times not to get fired.


    Rubbish, there are all kinds of people staying or leaving and have absolutely nothing to do with talent.
  • Someone (how original) 2008-04-30 02:37
    I like how the article says "This growth continues exponentially", while the graph is obviously far from exponential.
  • b0x0rz 2008-04-30 03:54
    a REALLY good article

    two points:

    #1 often, there are not enough skilled workers to go around - as in: employees leave, but it is very difficult to find others with even minimal skill - so retention is MUCH MORE IMPORTANT in these circumstances

    #2 "no one will miss him when he’s inevitably let go" is the sad truth of todays world where making money is more important than social responsibility - while at the same time we are facing a 80%-20% distribution of talent in people. what are the 80% of common/typical people with no exceptional talents to do? i think it is acceptable for companies (except the small and the startups - in the begining only) to retain some of these people and help make world a better place for all, for a small share of the profit.

    again, a really WICKED article. we need (expect) more like these, from now on :)
  • Greg van Paassen 2008-04-30 04:20
    The article is provocative. But...

    Minor point: "On the first minute of the first day, an employee’s value is effectively zero." Uhhh... no.

    It's negative, because the new hire is taking others' time, while contributing nothing.

    It seems to be generally accepted that break-even (contributing as much as you cost) occurs between six months and two years into the job.

    Corrective: Shift the curve down, and then integrate. Conclusion: it's worth spending *a lot* to retain able employees until their value descends back to break-even (which it may never do).

    Major point: If I were working in this regime I would feel no desire whatever to write clear code, or to document properly -- in fact, the reverse. I'm unlikely to see the code again. I'm not going to help potential competitors. Let them figure eveything out the hard way. I had to. Applied nationally, this is a recipe for a huge loss of productivity. (That's good for us here in I***a, though.)

    And finally, WTF?! This site is for real people, not management drones. Begone, guest-posting jellybrain! If you want to post again, it'd better be another clbuttic, like "The Brillant Paula Bean".
  • joutsa 2008-04-30 04:23
    Wow. This is a perfect explanation of my workplace, why people are quitting and why I want to get away as soon as I can.

    I have now been working three years on the same monstrosity of application. I have removed some major WTFs programmed by very senior people and written some parts that suck a bit less myself. There are still many parts of the application and our development processes that suck. I know how to fix them. Instead I am busy adding new features (no, not writing any real functionality but writing wrappers around awful third party modules). Now, the "up" Alex has been describing would not be a raise to management but instead a position where I could fix the suckiness.

    The application itself is written in a restricted subset of C. Any skills I learn here have no direct application in the real world. Of course, any real world programming is also useless here. Now the product is being slowly phased out so there is no space for any newcomers to prove their skills or learn anything useful.

    Of course the pay is poor, too, but I do not think any amount of money would make me want to stay (except if my time would be so expensive that the company could not afford me going through pointless processes and bureaucracy).
  • Greg van Paassen 2008-04-30 04:40
    Meta-comment: Well, advice, really. Peer-reviewed psychological experiments have established that, as a rule, under-performers significantly overestimate their own performance, while top performers significantly underestimate theirs.

    Think long and hard before claiming membership of the latter group. What's your score on SPOJ?
  • Not Dorothy 2008-04-30 05:01
    pyro789x:
    Sorry, but this is the kind of post I just don't want to read here. Honestly, I don't care about your opinions on the matter, and I think that you are dead wrong about them anyway. Let's get back to laughing at poorly designed code and the curious behavior it causes, along with the personal stories from those in IT that have to deal with the severe WTF.


    Sorry, but this is the kind of comment I just don't want to read here. Honestly, I don't care about your opinions on the matter, and I think that you are dead wrong about them anyway. Let's get back to laughing at poorly designed code and the curious behavior it causes, along with the personal stories from those in IT that have to deal with the severe WTF.
  • biziclop 2008-04-30 05:13
    The greater the skill, the shorter the curve. Ambition and skill go hand-in-hand, and ambitious individuals tend to want swift changes, and quickly lose motivation when these don’t happen.


    While this sounds all nice and trendy and resonates with the fast-paced 21st century blah-blah you know the story, it is simply not true.

    Ambition to improve your skills does not necessarily imply "institutional ambition". People who set out to improve their skills every day are often labelled complacent if they are not loud enough. On the other hand, loud people with no talent and knowledge whatsoever will be recognized as ambitious if they expose themselves often enough.

    In the context of the theory this means that while skilled people do tend to move on quicker, the reverse is not true, perceived ambition and skill don't go hand in hand.

    Shame, because otherwise it would be a well thought-out post.
  • Erick 2008-04-30 05:15
    There are essentially within IT two groups: those that build things and move on (good code or shitty code doesn't matter) and those that implement and maintain stuff so businesses are able to use the app during it's lifecycle.

    I'm now about 15 years in IT as an IT Infra designer/architect and I'm working for a DataCenter which enables a lot of Financial Institutions. Thus second category: keeping everything controlled, stable and secure so everybody get's their salary every month or week.

    I can tell you: the least thing we want is a high turnover. Why? Because it takes relatively a lot of time to be able to entrust a novice with the responsibility for handling Business Critical systems (they usually start in a Development environment, and then move up the ladder when they have shown they have matured and can handle the responsibility for Production).

    It's quite simple: we care less if a developer stays or moves on. There is always a new developer somewhere to be found. If he/she produces lousy code we'll make 'em move on otherwise they will get bored and move on by themselves. Fine by us.

    However, running a business critical system and staying calm and collected while the world is shouting because there is a salary run for a big firm going awry: that simply takes another mentality.

    Both kinds of people (developers and steady-state) are necessary during the business cycle of an app. The first do their thing and move on and here the Cravath business model could be successful if implemented correctly.

    The other kind should be kept on board for as long as possible since for the second kind institutional and customer knowledge is key to be successful and here the Cravath model won't be successful since the high turnover would be detrimental to building and maintaining institutional and customer relationships.

    In short: think before you leap in implementing the Cravath model and assess your organisational maturity before you do. If steady state is the most important thing: don't implement Cravath. If time-to-market is (even with shoddy software) then Cravath can add business value to your organisation.
  • L O L 2008-04-30 05:18
    logs are another way of writing exponents...
  • biziclop 2008-04-30 05:24
    Oh, and just one more thing: if you fail to define "up" correctly, "up or out" is all you need to implement the Peter principle.

    What you'll end up with is a set of mediocre managers who had once been good coders/analysts/architects and a bunch of undergraduate kids writing your code.
  • Paolo G 2008-04-30 06:02
    L O L:
    logs are another way of writing exponents...


    Logs are useful for transforming expressions that contain exponents into expressions that are easier to work with. If the y-axis on the graph were logarithmic then it might be valid, but clearly it is not intended to be anything other than arithmetic.
  • Paolo G 2008-04-30 06:09
    So, Alex Papadimoulis, given that "exponentially" is the wrong word to use, any chance you could replace it with less likely to inflame mathematicians' ire? Alternatively, you could just remove it, because it adds nothing useful to the meaning: "the growth continues" is just fine as it is. We don't need to know how the growth continues, just that it does.
  • JimM 2008-04-30 06:14
    pyro789x:
    Sorry, but this is the kind of post I just don't want to read here.
    Then don't read it. There plenty to choose from in the archives... or did someone tape your eyelids open and prod you with sticks until you read it?
    L O L:
    logs are another way of writing exponents...
    Erm... wtf? Technically, yes, they are, but what has that got to do with the discussion of exponential vs. logarithmic curves?
  • donniel 2008-04-30 06:54
    Steve:

    ...

    There are times when I walk into the building and start giggling with glee, thinking "they let me work here. . . and I even get paid!".


    I envy you!

    I've always wanted to be an entrepreneur, but next to that, you've just described my dream job :)
  • Paul D. Waite 2008-04-30 08:12
    They’ve already aced the first four rungs of Maslow’s hierarchy


    We were talking about that at my old job; we reckoned some of the worst developers we had would benefit from having the first couple of rungs taken away. If we could just remove their sense of contentment based on physical well-being (via the use of a small, sound-proofed room, a chair and some rope), they might be more motivated to write good code.

    I think we were ahead of our time.
  • the real wtf fool 2008-04-30 08:59
    Sa:

    The company needs his skill and is willing to reward him for it.
    [...] he is able to convince a competitor to pay him more.


    don't you see the contradiction?
    The company does not value him sufficiently to pay him what he can get on the open market. They are not willing to reward him for his skill.

    If he's not worth that much money to your company then so be it, but don't get all bitter that he doesn't want to hang around and treat the company as a charity case.

    Sa:
    jbinaz:
    Sa:
    Thank goodness there are a few of us non-ADHD IT people left to come in and clean up the messes that you leave behind.


    On the contrary. I'm the guy who mentored the new hire, taught him the business, and moved him up Alex's curve in the first place.


    And if he really did create a mess then the company doesn't need his skill. Alternatively his mentor did a poor job teaching him how to produce quality code.
  • KenW 2008-04-30 09:11
    Gamma:
    I am tired of people misusing phrases like exponential growth. Are you trying out for management, Alex?


    I'm tired of pedantic jackasses who feel the need to correct everyone all the time. Are you trying out for "Pedantic Jackass Guru", Gamma?
  • Joel 2008-04-30 09:35
    Of course, that justification would never even need to be given if a company embraced a culture of quitting. If they were upfront with their employees and said something to the effect of, “we know that you’re not going to retire here; in fact, after two to three years, we know you’ll be ready to move on to a different job. But before that happens, we want to make sure that you feel that you’ve done an excellent job here and are leaving with some solid experience under your belt. Of course, there are a handful of architect and management positions available, but you’ll really need to demonstrate commitment before even being considered for those. Obviously, that path isn’t for everyone.”

    Imagine how much different things would be if you were told that on your first day. Just about every task you do would be in consideration of your successor. Not only would you take pride in solving problems – and, of course, getting strong ROR (Return on Resume) for those solutions– but you’d also take pride in knowing that the guy who comes after you will have an easy time picking up your work. Just as your predecessor did for you.


    You know, this is exactly how it is at my current job. And there is a lot of turnover, but it's designed to have a lot of turnover. We also have a lot of interns, many of whom become full time staff members (I was such a person). All of the staff are competent, so far as I can tell, almost half of them were former interns, and at least as many won't be working there by the end of the year, myself included.
  • TheSasquatch 2008-04-30 09:36
    I'm a quitter! Who would like to embrace me? :)
  • Zack 2008-04-30 09:46
    "Employee value peaks and then begins to decline" Bullocks! Only true if the employee never learns anything at the job.

    If the company help train employees they would not find the workforce stagnating. But then again any company that buys into this theory is probably not capable of understanding long term growth and the benefit of a stable employee base of top tier talent.

    Basically value-apex is a theory fit around the fact that most companies use mediocre talent and underpay current employees by giving below average raises. Employees are forced to move to get paid what they are worth. If the company pays well, gives good raises, and helps employees to continue develop the company gets both the long term stability and keeps all the rock-stars that "value-apex" shops lose in droves.

    True story. I have had friends double salaries by quitting and then re-applying for their current positions at "value-apex" shops. Because when the company has to take an honest look at the employee they realize that with the experience the employee has gotten at the job they are worth a lot more then they were being paid. But giving everyone raises is expensive so they only give it to the employees who quit. I have also had friends whose salaries jumped 50% after hiring "assistants" because their company realize that starting salary for peers at their skill level was twice what their corporate formula allowed. And hiring an assistant for more than the senior developer is just asking to lose both.

    Value-apex - a strategy for companies who don't value employees. If a company gives employees sufficient challenge and variation while paying an honest salary there is no reason to leave. I have several standing offers the moment I walk out the door. But I don't do that because my company doesn't treat me like crap. You can keep your value apex. I will keep the job I am doing for 8 years now and at which I am one of the best in my field.
  • Faramir214 2008-04-30 10:24
    fountainier:
    This is why I love Microsoft.


    It's so rare I hear or read these words without sarcasm being involved.
  • joutsa 2008-04-30 10:49
    "Employee value peaks and then begins to decline" Bullocks! Only true if the employee never learns anything at the job.


    You are now assuming that the company actually wants employees to learn something. This is not true, because a) The time employees spend new things is time away from productive work, b) Employees with any marketable skills could find other work and leave the company. If people with new skills are required, the project is outsourced to someone who claims to have them. This of course not a good strategy for everyone, but for certain kind of companies it works too well to be changed.

    Value-apex - a strategy for companies who don't value employees. If a company gives employees sufficient challenge and variation while paying an honest salary there is no reason to leave.


    Alex spends some time describing how the apex can be shifted (the parts called Shaping the Value Apex and Bringing Home Change). "Sufficient challenge and variation" and "honest salary" are among them. It is certain that you are still on the upward part of the curve and if you are lucky you can keep there until retirement.

    For me, it is either low paid boredom or quitting. Guess which one I choose.
  • jetcitywoman 2008-04-30 12:32
    Whether you liked the article or not, it's certainly provoked a wonderful discussion.

    I think what interferes with most IT staffing, no matter the management style, is company politics. I've noticed that in all the companies I've worked for the brightest minds tend to "rock the boat" by making suggestions, trying to fix problems, trying to change things. In the places I've worked, those people were hated by management and vilified and driven out if they didn't get disgusted and quit first. I even witnessed this at places that claimed to hire only the best. Until we solve the problem of politics first, I don't think we'll solve the problem of managing IT staffing.
  • Mr. ADHD 2008-04-30 12:44
    TRWTF is that I read almost that whole thing
  • Ben 2008-04-30 12:49
    Thanks for this article--I have been considering my professional career direction over the last couple of weeks and many points in this article describe my situation perfectly. I think I'm going to have to bite the bullet and move on.
  • Jason 2008-04-30 12:51
    it seems startups are more like this - Based on people I've met in my current (and first) job, is that people who left their old companies on good terms, just know so many more people.

    The notion of not staying forever is there too. I'm sure a 4-year vest makes deciding when to quit pretty easy.
  • Nathan 2008-04-30 12:58
    The author meant that statement not to imply similarity between the knowledge or tasks of the industries, but rather that those others -- being around longer -- are more mature and have many of the hiring & retention practices he outlines in the article already in place. So he's saying, "let's be more like these industries, so we can enjoy some better workplace treatment and experiences."
  • not german 2008-04-30 13:29
    So that's why countries have a foreign exchange program
  • Bitter Like Quinine 2008-04-30 14:54
    If all the skilled people quit first, why are the majority of my projects "pick the pieces of program X" where the developer of said piece of shit has recently left the company?

    And if they were the company's brightest stars, why is my whole department tied up migrating undocumented sales tools written in VBA on Access and Excel to something at least quarter-way supportable?

    Sorry, but "the best leave early" just sounds like the excuse you come up with when you quit your last five jobs just prior to the chickens coming home to roost.
  • GrumpyFan 2008-04-30 15:32
    From my personal perspective it does seem to help. I spent almost 9 years with a software developer and in that time worked in 3 different departments each with different development opportunities. Had I not, I probably would've left after about 3 years.
  • TadGhostal 2008-04-30 17:35
    I agree with the general gist of what you're saying, but you include just enough untrue absolutisms and blanket statements to discredit the entire piece:

    Alex:
    Employees – especially the most talented ones – are not “dating around” and moving from place to place in search of the Perfect Company at which they can grow old and retire at.


    When I was hired at my current company, I was precisely dating around, moving from place to place in search of the "Perfect Company" at which to grow old and retire from. Now, I would infer from your above quote that either (a) I am not considered to be one of the most talented developers, (b)you meant to have the word "Most" or "Some" at the start of the quoted sentence above, or (c) that the quote is just plain false.

    As to possibility (a), I'm fairly certain that the company I work for, including the folks holding positions both above and below me would say otherwise. Also, there are a couple of things I've accomplished over the last 6 years that might make 1 or 2 other people (whom I've never met) consider me "talented".

    As to option (b), well, it could be a simple mistake. Option (c) would be enough to discredit the entire article, in my opinion.

    Alex:
    This point bears repeating. Indefinite retention is impossible; employees always quit. The key part is understanding why, and how to leverage this inevitability towards everyone’s advantage.


    As with most statements that contain such absolute terms as "always" and "never", they are almost always never true :)

    Indefinite retention is extremely difficult, but not impossible, unless you're counting death as a form of "quitting". I think you mean "100% retention is impossible; there will always be employees who quit.". After all, if indefinite retention was impossible, there'd be no such thing as retirement.

    Alex:
    The reason that I (and many of you) have had these similar quitting experiences is because many employers – despite having been employees themselves – don’t want to accept the fact that employees quit.


    While there may be employers who have a hard time accepting that employees quit, I think most employers just don't like employees who are performing well (and who have had a significant investment placed on their training) to quit. We have a fairly high turnover here (in fact, a really high turnover right after bonuses are given out). It's talked about and dealt with as an inescapable (and undesirable) fact, but I don't think any one here has difficulty accepting that it happens.

    I could go on, but I will give that this is, in fact, your soapbox, and by definition you get to rant at will. I'm also guessing that by the intensity of this particular rant, I may be missing the more important issue that you might have a direct, personal reason to be ranting on this particular topic. If that's the case, I doubt seriously that you really want folks pointing out what they consider weaknesses in your argument/rant/choice of words.
  • andymurd 2008-04-30 18:46
    Great point by Grubsnik, the generalists that actually make stuff happen are first to go.

    The article missed the primary reason why I've left firms in the past - takeovers. I hate it when a successful, profitable company is bought out by a larger concern to prevent true competition.

    After every takeover a bunch of shiny new managers arrive eager to disrupt the status quo. All that ends up happening is design by committee, outsourcing of sysadmins, a huge increase in bureaucracy which results in a change from a small, agile, profitable competitor into an inefficient cost-center. I always leave after a takeover, the only question is how long?
  • gorobei 2008-04-30 21:45
    Very very very good article.

    No, it's a terrible article. It completely misses the point of what "up or out" is, and why it exists, and then draws incorrect conclusions wrt programming jobs.

    1. What is it? Every year, you either go up (get paid more, get a better title, get more responsibility, etc) or are fired. After five or so years at the firm, you automatically get fired if you haven't advanced to a senior (partner) rank, even if you are a net gain for the firm at your current compensation level!

    2. Why does this insane model exist (firing good/productive employees with 5 years of experience?) Because employees beyond that level (e.g w/ 7 years experience) could quit and take your clients with them - so you have to make them partner (riches!) or fire them before they make serious client relationships. This is why up or out only exists in fields with high individual skills/training: lawyers, investment banking, some doctors, management consulting, artistic agency, etc.

    3. Extra credit: if specialized talent is so important, why form partnerships rather than go it alone and get all the benefits from your talent? Answer available on request.

    In programming, with little client interaction, the up-or-out model is a complete red-herring.
  • matt 2008-05-01 07:00
    The value apex curve can be modeled by

    = LOG(t) - kt + n
  • abhinav 2008-05-01 09:55
    It was a fascinating article. However, the urge to quit is not that inevitable. Many intelligent and successful people in have stayed in their company for almost their entire career (Steve Balmer from Microsoft, Jeff Emult of GE etc.).

    http://www.abhinav.sonaliagrawal.com/
  • steamer25 2008-05-01 15:39
    loe:
    Maybe the exponent is -1/2?

    I too hate that "exponential growth" has become colloquially defined as "lots"


    It is exponential: x = 0 < y^? < 1.
    I usually just take 'exponential' to mean non-linear. You could also say, 'order of magnitude'
  • LordVan 2008-05-02 03:00
    Maybe not directly related but .. still an example of sort of 'bad' HR management ..

    At my previous Job I used to do some development and support/installations of the hardware and software on site. Which to me was ok, because i could at least do some development ... I always made it quite clear that I'd like to move more into development again.
    We got a new development manager after a while. He was ok most of the time even though we didn't agree on everything (particularly how great M$ products were ;)) - which in some way was good cuz it leaded to some interesting discussions ...

    After the company was acquired by a larger one the development manager moved back to Pakistan ... and they then decided it would be cheaper to move all the development there as the salaries are lower there .. This was pretty much when i reached the apex as i'd been pretty much completely moved to support - which in the end i was only doing cuz i had to mostly ... Then we got some - rather crappy and buggy - CRM software which was .. well crap really ...
    So when it turned out i might not be able to renew my current tenancy and I was quite fed up with the UK in general already I didn't really hesitate to give in my months notice and move back to Austria.
    I offered them to help them out remotely for a while in regards to support and training,.. since 1 month was quite short to find a replacement and train him/her .. -- and there was only 1 other person who could do the support to start with ;)) ..

    They more or less didn't answer / declined and didn't really start looking for a replacement until I was gone .. so in the end they were in a rather .. tight spot i guess cuz they had 1 support person who prolly wasn't able to go on holiday for like a few months ;) after a while they did contact me after all and we agreed that I'd help them out with some remote stuff and email support while the (still only) other support guy was on holiday .. after that I got a new job... I'm definitely not sorry that I left .. both the job and the UK in general ..
  • Grubsnik 2008-05-02 04:05
    Well, a lot of people are nitpicking about absolutes here.

    Lets review it again, with a pair of 80/20 googles on.

    Personal development, and the dreaded apex
    80% of the "unique" stuff a talented individual brings to a new company, is done on the way to the value apex. We are not talking about "grunt programming" here. We are talking about delivering knowledge of different ways of doing things, new processes, work habits, design patterns or just having the really good solution to problems the company is facing.

    Once past the apex, your good ideas will become "old news" and be much harder to implement. Meaning you will at most accomplish another 20% difference.

    Same goes for your personal learning. When you start at new place your learning curve is steep, the have new systems to learn, new ways of doing it, and a whole lot of other stuff. Once you've reached the apex, everything is routine. You've learned 80% of what you can learn from the job. The remaining 20% is what you get from staying there.

    It's important to remember that regular training and education is not something that is centric to your current workplace. If you think the only reason you know c# or ruby or whatever, is because you got training on the job you are missing the fact that you could have learned it all by yourself or at any other job.

    Staying or going
    80% of the people who are leaving are highly talented people, 20% are "just the crowd".

    80% of the people who are in their jobs for life, are the persons you would rather get rid of in a hurry. The remaining 20% are solid workers who keeps the company afloat.

    Up or out
    The whole idea of doing a culture a of quitting, is manyfold.

    The talented quitters
    [list]
    [*] By making it acceptable to quit, the talented guys you want to keep for the longest possible time are actually more interested in staying on for a bit longer. Just finishing a major project or making sure they get a proper exit.
    [*] Good exits are usually less costly than bad exits.
    [*] People with fond memories of a former employee are generally beacons of recruitment. Friends looking for a job are generally pointed in your direction.
    [*] Talented quitters who had a good time at your company and a nice exit, might be coming back for a second or third tour of duty.
    [*] Having an alumni network will also allow you to get "unique references" on applicants. This goes both ways (more below)
    [/list]

    Overhead reduction
    [list]
    [*] When people accept that they won't be the ones maintaining or doing the next round of development on a project, they actually take it serious when asked to write some proper documentation.
    [*] People who leave your team on good terms, make much better trainers, when training their replacement
    [*] Focus will be more on getting people to become productive in a hurry, instead of doing the regular "expect people to be profitable after 6 months-2 years employment".
    [/list]

    The Scrubs
    [list]
    [*] If you have an alumni network spread out through the entire local industry, people won't just do a crappy job for 2 years and then quit, since they know it will follow them around for years to come, when applying for future jobs.
    [*] People who know they will be let go in 2-3 years, won't try to make themselves in-expendable, or if they do, will be much easier to spot and stop, before it happens, which leads to the above point.
    [*] This also helps to make sure you keep the "ballast" to a minimum.
    [/list]

    The keepers
    "Going up", doesn't mean, "going into management". If you spend 2 years just being a "developer", you can go on to do 3 years as "Senior developer" or "Architect" or "Team lead" which in turn lets you go to another job, which more responsibility. Not necessarily over other people. Keep this in mind when discussing "up or out". If you've spent 7 years being "developer", chances are that both you and the company would be better off with a change of pace.

    Remember this whole treatise deals with the problem of high turnover, if you are not facing those problems (and don't have a huge dead sea, preventing you from hiring anyone new). Then this "solution" doesn't really fit your lack of a problem.

    Addendum (2008-05-02 04:35):
    Bah, Thought they used the full suite of BBCode on TDWTF
  • mahuja 2008-05-02 05:19
    Another way to look at this, is to think of "value" not as value to the company, but to oneself.

    I'd like to know if anyone, using that perspective, find anything wrong about it. Of course, upholding the part that "up" does not mean changing careers into management or something like that.
  • John 2008-05-02 09:53
    I would just like to point out as a senior architect, I would never hire Alex or anyone who thinks this is a great or insightful article.

    It's complete crap. A persons' value to a company only peaks if they let it, by becoming complacent or bitter.


    Life is a learning process. There's more to be learned than can ever be learned on this planet, and there is absolutely no reason an employee cannot still contribute new ideas for the length of his tenure.


    I've seen the "hotshot" programmers that most of you seem to think you're a part of. They come in, think they're gods greatest gift to mankind. They fuck things up beyond belief because they refuse to admit that they could be wrong. They cause more work than they accomplish, and then they skate off because they can spout off the latest buzzwords that impressed the next company down the line, leaving a wake of disaster.


    At my previous company, they adopted a culture like this article endorses after I had been there for 3 years. It turned into a revolving door, average tenure for new employees was less than a year. Once most of the experienced developers left out of frustration, it was a complete disaster. No one knew what was going on, there was no architectural direction, and the quality of the product fell through the basement. They lost over 60% of their customers, and 80% of their sales. They fired the remaining experienced developers due to their high salaries, and the company went from 80 employees when I started, down to 30 today. They dropped all new development and are struggling to keep up with just maintaining the mess left by these so-called rockstar developers. They're not going to survive.

    It's a shame too, because before they started hiring rockstars, it was a really great place to work at. We had a great culture, great atmosphere, great customers, and a great product. Now it's a complete mess.


    When I hire people, I hire people who are looking to stay at their job and make the company a better place. These are the people who put pride and quality into their job. The rockstars don't give a crap, and will ALWAYS leave a disaster when they leave. No thanks.

    My current company has been in business for 35 years, turning a solid profit every year with this attitude.
  • Todd 2008-05-02 14:37
    I have worked for 3 different companies in the past 5 years. I loved all of my jobs for the most part. During the annual reviews they all say how much they loved me. Then they say their standard raise this year is some crappy 3% and then I look at the market for my skill level with one more year under by belt and the raise should be more like 30%. (The first year it was over 100%.) What do you do then?

    I have told them that it wasn't enough during the review. First company, they gave me a bigger raise (30% instead of 10%) on the spot but still not market value. Second time, at a different job, I was offered 3% after a great review and working rock star hours. I was pissed and said during the review I was going to start looking. They came back with a raise after about a month but by that time I already had half a dozen interviews set and a couple of offers on the table. I am not going to work for a company that doesn't know the value of my skill.

    I agree with Alex that the good guys leave early, but probably only at cheap companies. I am making decent wages now, working half as much, and taking vacations now! I'm not going to leave unless I see another company that's going to offer me something better.
  • Max 2008-05-03 17:10
    This is a very insightful article, it really has awoken some thoughts.
  • Iain 2008-05-03 19:12
    Grubsnik: I'm curious where the 20% figure comes from. I don't doubt it, but I'd love to beat management at my previous employer over the head with it...
  • real_aardvark 2008-05-04 13:51
    wre:
    I'm confused - you're solving the IT Turnover Crisis by ensuring constant turnover?

    Yes, I believe this is Alex' thesis. It's only a crisis if it amounts to unplanned churn. Remove the hysteria/inadequate planning, and you have turnover, but no crisis.
    wre:
    Also, some of the worst code I've seen has been written by people who didn't plan on supporting it.

    Correlation does not imply cause and effect.
    wre:
    And having good documentation helps but it certainly doesn't fully replace the person who originally wrote it.
    Good documentation has several other uses.

    It helps testers, technical writers, and new hires to understand the system.

    It helps other programmers and tech groups build on the system.

    It may even help in law, if you're suing the idiot bus driver who ran over your prize programmer for consequential damages.

    Funny how five years ago we were all screaming about outsourcing, and now we're back to that old warhorse of industry turnover, isn't it?
  • real_aardvark 2008-05-04 13:56
    Steve:
    Great article. You have very effectively described the US military. As a 17-year member of the Air Force ... <snip/> ... for us, "up or out" applies, but not in terms of technical knowledge.
    Yes, I imagine that "down," in the context of the Air Force, might frequently have fatal consequences.
  • real_aardvark 2008-05-04 14:13
    Paolo G:
    L O L:
    logs are another way of writing exponents...


    Logs are useful for transforming expressions that contain exponents into expressions that are easier to work with. If the y-axis on the graph were logarithmic then it might be valid, but clearly it is not intended to be anything other than arithmetic.
    Well, making the sane assumption that both axes are arithmetic, the result looks awfully like a conic function to me. I'd hate to think what happens when it dips below the x-axis...
  • Marvin the Martian 2008-05-05 14:21
    dlikhten:
    In a culture of quitting, companies can begin a "employee exchange" program, where companies create opportunities for employees to move around and be productive and they know the employees are good because they come recommended from a company they know and trust.

    Sorry to rain on the self-actualization parade, but the Dilbert Principle shows very effectively, over and over again, how this works *even within one company* where departments try to shuffle their worst losers onto unsuspecting PHBs.

    Between companies there cannot even be the fraction of a second doubt "hey, here I'm damaging the bottom line of my own company".
  • Shawn Wildermuth 2008-05-05 17:51
    This seems like an interesting compliment to my recent post on the state of development:

    http://adoguy.com/2008/04/23/The_Hard_Part_of_Software_Development.aspx
  • mvno_subscriber 2008-05-09 09:51
    Excellent article, I'll be recommending this to everyone. Thankfully, in my workplace it is common for employees to stay at most 4 years, and everyone sees this as normal (including management).
  • Rachna 2008-05-30 13:28
    I thought the main problem with employees quitting was the sheer cost of replacing one. Isn't recruiting the right candidate a costly and time consuming process?
  • Dedicated_Dad 2008-06-22 21:30
    I would first like to thank you for this fantastic article.

    I'm sort of the epitome of what you describe, in many ways.

    In a 19-year+ career, I averaged <12 months per position for the first decade. Lots of 3, 6 or 9-month contracts, mostly, though every one got extended even after all other "contractor" peers had been let go, I was kept on to ease the transition to internal staff.

    I've dealt with AD and Exchange on a level most will never see, architected and led 1000+ domain NT to 2k/2k3 migrations, etc. I've earned the title "Top-tier" in many, many ways.

    I finally found my home in a family-owned IT Services firm. It offered the challenges I crave and the benefits of longevity -- the best of both worlds. I was surrounded by top-tier people - the statistic I often heard was that ~1% of applicants were hired and 2/3 would be gone in 6 months. The standards -- especially for personal and professional integrity -- were stellar and uncompromising. You were "the best" or you were gone -- it was that simple. Work was hard, but rewarding, not necessarily financially-so, as salaries were less than I'd previously commanded, but in being part of an elite team. It was the best job I ever had.

    Then we were "bought." For a while it was "business as usual" then the inevitable "pot-stirring" began. I kept my head down, my mouth shut, and concentrated on taking care of my customers. I won most every award given for "customer sat" "consultant of the (month/quarter/whatever) -- you name it.

    I became the "go-to" guy. I got all the stuff noone else could handle. The customers who wanted out of their contracts -- I turned them around. The tech-problems noone could solve? I solved them. The internal "process" issues? I found ways to make them better. I "rode herd" on some peers, when necessary, to make sure our obligations to our clients were met or exceeded.

    Meanwhile, people left. 60% of our top-tier tech staff in a 6-month period. Meanwhile, my hours continued to grow. Staff in my group was down 80% while obligations increased slightly. Gone was any option to do any proactive work, so problems now had to be fixed instead of prevented.

    One day I woke to the realization that there was noone left in my management chain who had any experience or knowledge of our "line of business" -- noone who understood what I did or how it benefitted the organization.

    I'd suffered a debilitating injury ~6 years before, and needed surgery that would mean a 12-week recovery. I put this off for the past two years, being led-on by my new masters -- "just bear with us a couple more months. We're going to hire some people. Just hang in there a bit longer."

    I finally realized I'd gone as far as I could go, and gave them 60-days notice that I'd planned my surgery, I was very worried about who would take care of my customers. I contacted the benefits department to find out what was required for my disability insurance.

    11 days later I was informed my services were no longer required. By the grace of G*d my surgeon was able to re-arrange his schedule so I could get the surgery I needed before my benefits expired, so I was able to file my disability-insurance claim and have pay for some of the time I needed to recover.

    Now I'm almost back on my feet and have no job and no more income. My recovery was long and hard -- much worse than it needed to be -- because of the run-down condition I'd allowed myself to get into. I should have put my foot down years ago and did what I needed to do.

    I'm not yet well enough to handle the job search, or at least to appear healthy to prospective employers -- but too well to be considered "disabled."

    Sorry for the "life story" but... Hopefully there's an illustration there, perhaps a few of them.

    In hindsight, it's all crystal-clear. I can see clearly where I missed opportunities and inferred things that weren't really there.

    There isn't any loyalty in a big business, and hard work will not be rewarded later. This would never have happened in the business I started working for, but I missed the change in culture that came with the new owners. By the time I awoke, everyone upstream who knew me, what I had done, and could do -- those people were all gone. To those left I was just a name and a salary on a spreadsheet -- nothing else mattered.

    On the bright side, I have numerous admirers, and am confident I will have no problems finding a job. My skills are vast, my reputation impeccable, I'll be OK.

    I post this in the hope that it will help someone else. Take care of yourself first, don't ever let someone else's bottom-line come ahead of your own well-being. Seriously consider every opportunity, and do so IN A VACUUM. You cannot compare the past to the future, you must evaluate THE PRESENT. Had I done so, I'd have been gone long ago.

    If anyone would like to discuss opportunities, I can be reached at my user name at yahoo dot com. Hopefully this helped you in some way...

    DD
  • Rick Yazwinski 2008-07-07 14:52
    I think there's another factor in your value graph.

    I think there's a "pain factor" that works against the desire to meet the peak value.

    I.e. if there are bad hr policies, or a poor work environment, or you're forced to work with other staff who, on a daily basis, remove the joy from trying to hit the value peak, that eventually there comes an inflection point where the "pain endured" is greater than the "delta to peak value" and people jump ship.

  • ogilmor 2008-10-08 19:30
    boheme:
    I agree wholeheartedly with you, but I feel as though you may have overlooked that jumping from job to job greatly diminishes your chances of retiring with a comfortable pension. Yeah, I know that it's not our father's job market any more. But when you have consider other benefits as well, such as health care plans that may not carry over from one employer to another, it's a scary place for employees who aren't, or may never will be, putting away the big bucks. I understand your desire for a more stolid approach to employee retention, but I think that at the same time, even employees who are able to find other jobs might want to marry and have kids, and settle down into a position that will afford stability. After all, you home is one of the biggest sources of equity in your old age, and unless you're extremely wealthy, moving around every few years to accommodate that new job isn't easy on your kids, your wife (or husband), or your retirement savings.

    your point has merit, but could be addressed in several ways:
    1) portability of pensions, kind of like a 401K
    2) portability of benefits, which would probably need to be assisted by legislation as I don't see companies doing this voluntarily
    3) if you're concerned about selling your house or moving, settle in an area with a large job market where you can switch jobs without selling your house.
  • Dan 2008-10-30 03:05
    The company I work for has instituted this type of program and it has been fantastic...

    Employees are "farmed-out" or swapped for a fixed 3 month period, and are set to work in areas that they are familiar with, but lack specialist skills in (almost like an advanced trainee).

    After the 3 month tenure, employees are swapped back and return with new skills, experience in different working environments and a fresh outlook. Many have said it's like "coming home"...

    There have been massive productivity rewards, and closer alliances forged with companies that compliment our own.
  • Derek Smyth 2009-01-24 18:16
    Hi, I'm not completely sure this is true. According to Joel on Software, Joel being a fairly respected recruiter, people who are good at there jobs very rarely move companies.

    "Numerically, great people are pretty rare, and they’re never on the job market, while incompetent people, even though they are just as rare, apply to thousands of jobs throughout their career."

    http://www.joelonsoftware.com/articles/FindingGreatDevelopers.html

    Not to mention a fact that companies will do anything to hold onto a great developer including getting rid of the crap developers.
  • Emily 2009-02-18 14:49
    This concept of an alumni system in professional IT culture is really interesting and compelling. However, it would require major changes to our health care system and other benefits systems in order to work. All of our employer-based benefits would need to be completely portable and independent of employment, and that's simply not the system those of us in the US live in.

    There are entire industries built around employer-based benefits and reforming those industries would be a painful and heavy-handed process that would probably require government interference (which is unlikely to fly any time soon here in the US at least.)
  • Eric Pearson 2009-02-26 13:53
    Love this, going in this new software manager's mental file.


    Eric


  • Sri 2009-03-24 14:40
    I'm not sure I agree with the hypothesis that skilled employees always quit and unskilled employees always stick on.

    There is an age angle to it too. I've seen very skilled people who were hopping jobs, suddenly settle down in a job and act very conservatively the moment they crossed some age barrier, were married and had kids.

    From the organization's perspective, these "mediocre" tenured ones are often the most valuable as they ensure that the company's knowledge is maintained and reused. On the other hand, the "smart" ones typically tend to outsmart themselves and dig themselves into a hole far too often. They would have hopped jobs so much in search of this "self actualization" thingie that they neither develop deep skills nor can provide deeper insights to an organization. In fact, the best way to pursue self actualization is to be an entrepreneur or become independent than work as an employee in the first place.
  • Nuero 2009-08-23 16:43
    “make partner”

    ah so like layers and certain old skool invetsment banks - most companies arnt going to be at all interested in letting the geeks make "partner" A becuase 99.9% of places that employ it people arnt partnerships and B It end engineering has to low a social status
  • Burp 2009-11-15 17:58
    Architecture and management, the natural path for talented developers? Bollocks and nonsense. The worst managers and architects I have met were exactly the developers you are talking about. they were people with (a long lost) talent for coding and absolutely no talent for managing.
  • retro jordans 2011-03-04 21:15
    I've read your essay,I was so amazing ahout your thought.And I suppose you may like sports ,right? I think new jordan shoes is a good choice for us while sporting,Ideem new jordan shoes represents high fashion and comfort!
  • retro jordans 2011-03-04 21:16
    I've read your essay,I was so amazing ahout your thought.And I suppose you may like sports ,right? I think new jordan shoes is a good choice for us while sporting,Ideem new jordan shoes represents high fashion and comfort!
  • ObiWayneKenobi 2013-01-02 10:58
    The problem is many companies don't care a lick about their employee's long-term goals; they just want what they can take. You hire someone who makes it clear they want to move up in rank over time, and the company will either never give the opportunity or, worse, the person's manager will take offense since that means the new employee wants THEIR job, and try to get them to quit or fire them at some later date.

    It's rare to even get a decent raise, to say nothing of a promotion if you want it.
  • Paul Mansfield 2013-01-30 05:05
    A long time ago I worked at a small start-up in the early days of the internet become a commercial proposition. It was clear to me that the company was floundering, and I left. The company did fail and pretty much everyone ended up working in an ecommerce company. I left the place I worked at after some time and went somewhere else, and that place floundered and I ended up at the ecommerce company where most of my former colleagues still worked!
    A big corporate took over and spoiled the company and about six months later I left, but the place I went to also got taken over and spoiled things, and I ended up back at the ecommerce company in a different role.
    When I left there I joined a tiny start-up where I had quite a long stay, but it floundered and I left, made a poor decision, left there, and ended up at a new ecommerce company where a lot of my former colleagues had also gone.

    So I worked with the many of the same group of people four times across three basically difference companies.


    I've always believed on leaving on good terms and not crapping on my former colleagues, and generally we've been quite good at helping each other along the way. This has helped me in that the city where I work is quite well connected so you tend to meet the same people over and over, and if I do go somewhere for an interview it's usually a less formal process and completed fairly quickly.
  • ObiWayneKenobi 2013-05-06 10:21
    I also have to say that I would love to work at a company with this mentality. The idea that you come in and can get solid experience to either move on later or work your way up is tantalizing and, dare I say it, almost utopia-sounding.

    Unfortunately, it seems very few companies adhere to this anymore, at least not for IT workers. If you work at a law firm, I'm sure the lawyers operate on that principle and can "make partner". The tech staff, not so much, it's either do the job you were hired for with miniscule raises (barring VERY rare cases where there's promotion opportunities), or quit after some amount of time and go repeat the same thing elsewhere.

    That's very sad because as someone who aspires to advance I would love the opportunity, but they don't exist for us outside of very few fringe cases. In my experience showing ambition is more likely to get you fired or given boring work until you quit, because your ambition shows your boss that you want his job, nevermind the fact in many companies there's only so far you can go in an IT department. Kind of hard to move up the ranks when you have just one boss above you, and one boss above him, and your boss' boss is co-owner of the company. Where, exactly, can you go?