You! Get out of my Industry!

iStock_000012530204XSmallI think that there comes a time in every halfway decent developers’ life when he realizes that he’s halfway decent and the world is full of people who couldn’t program their way out of a wet paper bag. I’m not referring to the noobs who troll forums asking for help and are truly trying to learn what they’re doing. Those guys are ok in my book. After all, everyone had to start somewhere, and we were all like them at one point. Although I don’t think forums actually existed when I started programming. Back then it was called Usenet. But I’m old, so I digress and get distracted easily.

What I’m referring to is that the software industry is going through another purging process of the below average developers in the same way it did back when the dot com bubble burst. Back then, it was difficult to find a job if you didn’t really know what you were doing because times were tough and the competition was fierce. This is exactly the opposite of how things were just a few short years before the bust in 1997-1999. At that time, if you had the letter “C” on your resume, they didn’t really care whether it was in reference to your grade in a programming class, a nickname you had, or an actual programming language. “Oh. You’ve worked with ‘C’ before? Here’s an offer letter. Welcome aboard.”

I think that we’re back to a point when times are tough and people are leaving the technology industry, although not by choice. You know what?

Good riddance.

Yes, I know. I’m going to catch hell for that, but I mean “Good riddance” in the best possible way. This isn’t me having a holier/better than thou attitude about programming. This is about raising the bar for everyone who works in the technology field.

That was a bit blunt, so let me rephrase it with an example. This is one of my favorite quotes that I never thought I’d be able to work into a blog article. It’s from the television show Cheers where Cliff describes the effect of beer on the brain.

“Well, you see, Norm, it’s like this, a herd of buffalo can only move as fast as the slowest buffalo. And when the herd is hunted, it is the slowest and weakest ones at the back that are killed first. This natural selection is good for the herd as a whole, because the general speed and health of the whole group keeps improving by the regular killing of the weakest members.

In much the same way, the human brain can only operate as fast as the slowest brain cells. Now, as we know, excessive intake of alcohol kills brain cells. But naturally, it attacks the slowest and weakest brain cells first. In this way, regular consumption of beer eliminates the weaker brain cells, making the brain a faster and more efficient machine. And that, Norm, is why you always feel smarter after a few beers.”

Well said Cliff. Well said.

Jack Welch, the now semi-famous former CEO of GE heavily advocated a practice that is somewhat common today. At some companies, about 10% of the employees are let go every year, citing poor performance. It is a topic of great debate as to whether this practice is or isn’t beneficial to the company, but the reason the practice is controversial is that it is based on the idea that the rating systems they use are in fact valid. Here’s a hint. They’re probably not for reasons that are best left for another blog post.

What I’m advocating is that the people who are in the technology industry who really aren’t any good AND don’t have an interest in bettering themselves should find something that makes them happy. It’s a subtle, yet very important difference.

Now I certainly don’t consider myself one of the greatest developers of all time, but I do consider myself to be reasonably competent. I’ve had some pretty good successes and done enough dumb things to keep me humble. It’s not enough to be interested in what you are doing for your profession. You have to actually be competent at it, or at least willing to learn how to be competent.

I think this became most apparent to me when I was interviewing people to work at Pedestal Software and ran across someone who claimed to be a SQL Guru. I wrote about this encounter a few years ago, but the basic gist of it was he claimed to be an expert SQL developer (his words, not mine) but had never even heard of cascade deletes or cascade updates within SQL Server. He accomplished this functionality using triggers and apparently very poorly. This certainly wasn’t the only example I came across. Others claimed to have COM expertise, but couldn’t explain the basics of what COM was.

I’ll be honest and say I don’t know anything about COM either, but if you claim to know it really well and can’t explain it to another techie, then something is seriously wrong. Half of the people I interviewed had trouble writing the most basic of code snippets. I’m not talking about building the next PageRank algorithm for Google. I’m talking about simple stuff like sorting, and knowing what ASCII characters are. I mean really basic stuff.

Just last week, I spoke with a long time friend who relayed to me the story of an acquaintance who had been working in the same job in the IT field for the last 5 years. I don’t know his real name, so we’ll call him John. Now, John is not a developer, but this example will serve to illustrate my point. In addition to not receiving a raise for the last 5 years, John had gone out on disability for about a year through no fault of his own. When John came back, his position had been filled so they offered him a different position at a slightly lower level than where he was, resulting in a net pay decrease over five years. John couldn’t understand why he was essentially demoted and is incredibly frustrated at his position.

iStock_000014558205XSmall-vacationFrogI turns out that there is good reason for the position he is in. John is hellbent on making sure that he works his 8 hours a day because that is what he’s obligated to provide as an obligation to receive his salary. John is neither interested in, nor willing to work a minute past 5pm. So when something breaks at 4:50pm, he’ll work on it for 10 minutes and then leave it for the next day, regardless of who might need it fixed and when they need it fixed by. He doesn’t take any work home, nor does he research anything on his own time or have any interest in doing so because it would eat into his free time.

An argument can certainly be made in his favor to say that his salary is intended to pay him for the house of 8-5pm and that’s it. Thus, by working past 5pm or doing any sort of off-hours training, he’s giving away his own time for nothing. What he fails to realize is that working 8-5pm isn’t even about working from 8-5 or any set hours for that matter. It’s about doing your job and doing it well. When you walk out the door on a problem because “it’s 5pm”, then you’re telling people that you don’t care about your job or the company you work for. So, when the pink slips start to fly, why should they keep you around?

If John were an hourly employee, I could certainly see the rationale, but he’s on salary. Being a salaried employee affords you additional benefits, such as a slightly more flexible schedule and less overall hassle about exactly what hours you are keeping. And more to my real point is this:

If you don’t actually enjoy what you are doing, leave the industry and go get a different job.

John, I know that sounds harsh and I know that it’s mean, but it has to be said. Get out of our industry and go find another job.

After my friend relayed this story to me, he asked me about the programmatically challenged developers I’d interviewed over the years. We discussed what it means to be smart, talented, and excited about technology and whether that translates into being a more productive worker. It didn’t take more than a few minutes before I convinced him that it did, although to be fair I think he was just trying to make sure my arguments were solid. He labeled it as creativity, while I said that it was simply a general interest in technology. He asked me: “Well, if someone likes to play Frisbee after work instead of staying late or reading books about software in their spare time, does that mean they’re not a good programmer in your mind. Is taking work home a prerequisite to being hired by you?”

Absolutely not. In fact, I’d prefer if you didn’t. I’m not a huge fan of taking work home unless you have to although admittedly, I do it far more often than I should. The underlying issue is not about whether you like things other than technology, rather it’s about whether you are passionate about technology in addition to those other things. The people who excel in the technology field do so because they are passionate about it and have a genuine desire to understand it. It fascinates them and if they had the time and money to leisurely learn about it, they would do so. The same can be said for business problems that are technology related. They’re challenging and if the challenge is big enough or the deadline great enough, of course I’m going to take it home.

But for those of you who are complaining about why you didn’t get a raise for the fourth time, or wondering why you were passed over for yet another promotion, stop looking around. The answer might be no further than the nearest mirror. Do yourself and everyone around you a favor… find a new industry. It probably won’t pay as much, but maybe you’ll enjoy it a bit more and find a career where you can actually get ahead. Ever see what Peter Gibbons ends up doing at the end of Office Space? He seemed quite pleased with himself at that point.

Life isn’t about how much money you make. It’s whether you’re happy. Do what makes you happy or take the time to find it. If you can’t do that, then what’s the point?

19 Comments

  1. Dave on November 9, 2010 at 10:11 am

    re Jack Welch: s/GM/GE/



  2. Boots on November 9, 2010 at 10:14 am

    One minor correction: Jack Welch was the CEO of GE, not GM.

    Otherwise, your message is right on: find what you love and do it. I’ve been reading a lot lately about how poor the programming candidates are at so many jobs, and though the stories are funny, I have trouble actually believing that the vast majority of programmers can’t solve simple problems like a list reversal.

    I think the most likely explanation isn’t that programmers can’t program, but perhaps instead the hire listing, or other factors which attract the type of candidate which is a bad fit for the job.

    Also, experience != expertise, although both have value for different reasons. I am willing to bet the SQL Guru hadn’t been trained on newer versions of the RDBMS software, and perhaps was trained prior to that being a norm. True, he should be interested enough to learn about industry changes on his own – as you say, that’s what sets the shining stars apart from everyone else, but it doesn’t mean he isn’t a SQL wizard and couldn’t be quickly brought up to speed.



  3. _Jon on November 9, 2010 at 10:21 am

    Nice rant and good advice.

    Welch was the head of GE, not GM.



  4. […] This post was mentioned on Twitter by Hacker News YC and steve sanderson, Hacker News. Hacker News said: You Get out of my Industry: http://bit.ly/blSE9e Comments: http://bit.ly/9FkXFN […]



  5. Michael Kelleher on November 9, 2010 at 10:32 am

    Jack Welch was the former CEO of GE not GM.



  6. mike on November 9, 2010 at 10:39 am

    Actually, Cliff said that, unless Norm was talking to himself. Maybe you need a few more beers to smarten yourself up 🙂



  7. yousoundspoiledwhiteandrich on November 9, 2010 at 12:48 pm

    Wildebeasts and brain cells don’t have to worry about discrimination.

    Humans are different. Workplace politics vary.

    I don’t agree with your cruel analysis. Stop worrying about making products and money at all costs. The reason contributors underperform is bad managers and bad working environments.

    I am reporting this blog post to the ACLU.



  8. Jose on November 9, 2010 at 12:59 pm

    Hi

    I will say the same thing to those that don’t go go home at 5pm. In USA you see a lot of “work martyrs” that will stay work till late and do …very little, a lot of social meetings, chat, whatever and then feel than because they stay late they are sacrificing for the company.

    Here in Spain it happens too, I was there too, until I learn from people really good at using their work hours(on center Europe, they work less but get more from their efforts, they expend their hours focused, not chatting).

    It remembers me to the Soviet Russia way of doing things, if you expend more resources, more time, more people, it is better. Kinda funny given that USA was at this time the exponent to a different way of doing things: efficiency, if you have to stay late for doing your work, you are a loser, and someone is going to kick your ass.

    Now it seems that you have to make the commitment to not eat well, not sleep well, no time for your family. The only thing they don’t realize is that when you don’t eat well, or sleep well and need caffeine for working, or you feel miserable because you don’t see your family you are really hurting your work.

    PS.Also, There are lots of good material about how to improve your work productivity made by Americans.



  9. Jose on November 9, 2010 at 1:01 pm

    Sorry about the typo!



  10. Scott on November 9, 2010 at 1:02 pm

    It’s the competent ones who leave corporate life, not the incompetent ones. I couldn’t stand it and finally had to leave and found my own company. Problem solved.

    Saying salary allows the workers a more flexible schedule is not correct for most companies. You don’t get paid for the 96 hr work weeks on a death march, but if you leave at 4pm instead of 5pm, you get your pay docked. Screw that. If I am working for the man, my hours are 8 hrs a day 5 days a week, not a minute more. Working for my self for the last 10 years I don’t mind at all the many 100+ hr work weeks because the fruits of my effort are not squandered by imbecilic management.



  11. Yes on November 9, 2010 at 4:28 pm

    I agree with Scott. Why should employees be flexible with their time if they can’t expect the company to give them the same flexibibility.

    If they need something fixed after working hours, they should have to pay extra (if it’s worth it). If you need to work late, it means that the company has not allocated the right resources to the problem. Why should the employee be responsible for that?



  12. Boots on November 9, 2010 at 5:20 pm

    I happen to work for a big company on salary, and am never asked to stay late except on rare occasions. I don’t think Mike was talking about companies forcing people to stay late. I do excellent in my career doing 8-5, and it is flexible enough that I can work from home, skip out for an hour, whatever, and I tend to make it up on the days I have to work late to complete my goals. the main point is, if you don’t burn the midnight oil, you will be beat by those who do. The best workers go home and then continue their education for personal pleasure, then when they come back to work, they bring that knowledge with them, and that makes the difference.

    As an example, I am working to start my own software company as well, but you had better believe that I leverage the knowledge in my day job to do better as a start up, and on many occasions I bring my start up learning to work with me, it is mutually beneficial.



  13. Mike Taber on November 9, 2010 at 7:29 pm

    Good discussion everyone. I don’t necessarily agree with everything being said, but it’s nice to hear the different viewpoints.

    There are two main points in my article.
    1) Employment is a two way street and is a relationship of sorts. In fact, calling it a relationship puts a lot of things into perspective. If you can’t do a little bit more on occasion to help out, then why should that relationship continue?
    2) The people who are in that relationship solely for the money and don’t actually enjoy what they do should find a “new relationship”, which will be better for both the employee leaving and for the company the employee is leaving.

    Again, this is a two way street. But if you don’t like your job find a new one. Or better yet, start your own business and build a place that you want to work.



  14. Nathan on November 9, 2010 at 7:32 pm

    Boots said it, “if you don’t burn the midnight oil, you will be beat by those who do.”

    This could also diverge into a conversation about training and who should provide it. To use Mike’s example, if the “SQL Guru” learns about triggers and begins applying them to every problem, he/she is not necessarily doing anything wrong. Yet, there is a much easier and safer way to do Cascading Deletes. How is one expected to learn about that without training or a passion to learn about SQL for personal betterment? Since most companies do not provide enough training to employees, those developers who take it on themselves to learn are primarily the only ones who become highly effective.



  15. Paul Cowan on November 10, 2010 at 6:06 am

    The problem is that most developers, including myself think they are absolutely amazing.

    Just under half of us are of course less than average.

    Who can safely say where they are in the food chain or league table of good developers.

    We might be, less than average.



  16. E on November 11, 2010 at 8:38 am

    The problem comes in when the business capitalizes on our passion expecting us to be connected and working 24/7.

    I’ll make sure I hit the deadlines but the deadlines cannot abuse my family.



  17. Bobs Abob on November 11, 2010 at 9:44 am

    I think we need a range of developers in the industry, there are ‘cookie-cutter’ applications out there that need to be built, why waste a good developer’s time on that? They are likely to be bored out of there mind when they could be working on something that the less-experienced developer can’t figure out. If someone doesn’t want to move beyond writing these simple applications, all the power to them. I value these developers because I don’t really want to work on CRUD applications for the rest of my life.

    There was a time about 10 years ago when I would have agreed with this article because I was younger, inexperienced and eager to learn more about technology but I now realize that work isn’t everything. I still love technology but I won’t be pressured into continuously working overtime. That’s not to say that I won’t work the occasional overtime, I do, but when you begin to see a pattern in poor project management then eventually people learn that enough is enough. Fix the problem at the source and refuse to let your family suffer for it.

    I think our industry needs a serious injection of professionalism so that we are accepting of a wide-range of skills, skill-levels and personalities. These macho and over-the-top statements and attitudes of the supposedly ‘elite’ are supporting a negative perception of our industry.



  18. raghava on November 11, 2010 at 9:56 am

    >>Life isn’t about how much money you make. It’s whether you’re happy. Do what makes you happy or take the time to find it. If you can’t do that, then what’s the point?

    Getting out and chasing dreams is not always a possible option for many in few places. Particularly in those places where societal and peer pressure play major roles. Add to it the stigma the society attaches to failures, enough damage is done. The above argument does not hold good for places like India where many just want to make their lives better, and the only way they have to achieve it is by making a lot of money. And since IT/Management pays relatively better there, all of them flock to those sectors. And the result, a lot of “can I haz teh codes” types. As unfortunate and sad it is, it is simply inevitable in such economies where a large portion of the populace just wants to move up the social ladder and keep up with the Joneses.

    Thanks.



  19. fsilber on November 11, 2010 at 10:01 am

    The people who get laid off are not necessarily the incompetent; it’s the people working on projects that get cut or outsourced. And when nobody is hiring, they’re the ones driven from the field.

    Instead of having to be really good to keep a job, wouldn’t it be better if you could keep a job by being mediocre but get really big pay raises for being really good?

    But nobody cares about hiring people who are really good. When was the last job ad you saw that says, “Seeking extremely intelligent computer programmer” rather than “applicant will have experience in XXY, XYY, CZE, APC, GXJL, XJSS and XJSJSJ.”



Leave a Reply