Ten reasons to rethink your career as a developer

Daily Newsletters

Sign up to ZDNet UK's daily newsletter.

Topics

Career, Developer

ANALYSIS

People give a variety of reasons for choosing a career as a software developer: they say programmers make big money; they can dress casually every day of the week; and that anyone can teach themselves to be a programmer.

Unfortunately, the job market is littered with people who may have had the raw intelligence or maybe even the knowledge, but not the right attitude or personality to become a good programmer.

Here are a few things to consider when deciding whether you should become a software developer.

1. You'd rather be trained than self-teach
In most development shops, there is rarely any training, even if the company has a training program in place for other employees. At best, the company might reimburse you for a book you buy. Programmers are expected to arrive on their first day with all (or at least most ) of the skills they need.

Even worse, the assumption is that programmers are really smart people who are good at problem solving. That assumption leads upper management to believe that good programmers do not need training.

Add to this the fact that training for developers is extremely expensive, and the result is that, when you change positions, you will need to figure out what is going on in the job yourself, and you will probably need to teach yourself.

2. You like regular working hours
Software-development projects are notorious for being late. Even the projects that are delivered on time always seem to run behind schedule at some point. If you don't like (or can't handle) irregular or fluctuating demands on your time by your employer, development is not for you.

When crunch time comes, your employer is more concerned with getting the product in the hands of a million-pound client than with your child's school play or the new TV programme you wanted to watch.

3. You prefer regular raises to job-hopping
The world of development is one of continual erosion of skill value. Unless you are working in a job that deals with slow-to-change technologies, chances are, your skill set is less valuable every day.

The state of the art is changing rapidly, and the skills that are hot today will be far less relevant tomorrow. As a result, it is difficult to sit at the same desk doing the same work every day and expect a raise that exceeds a cost-of-living increase. You need to keep your skills up to date just to maintain your current value.

In addition, if you want to boost your salary, you need to expand your skill set significantly and either earn an internal promotion or go to another company.

4. You do not get along well with others
It's one thing to be an introverted person or to prefer to work by yourself. It's another thing to be unable to get along with others, and it can sink you as a developer.

Not only that, your manager may well be a non-technical person (or a technical person who has not worked hands-on in some time), so you need to be able to express yourself to non-technical people.

5. You are easily frustrated
Software development is often quite frustrating. Documentation is outdated or wrong, the previous programmer wrote unreadable code, the boss has rules to follow that make no sense… the list is endless.

At the end of the day, no one wants to be working next to someone who is always cursing under his or her breath or screaming at the monitor.

If you are the kind of person who goes insane spending eight hours to do what appears to be 10 minutes' worth of work, this is not a career for you.

6. You are closed to others people's ideas
In programming, there are often problems that have only more than one "right" answer.

If you do not handle criticism well, or do not care to hear the suggestions of others, you might miss something important.

For example, a few weeks ago, one of our junior-level people made a suggestion to me. After considering it for a bit, I decided to try it. It turned out that he was right and I was wrong, and his suggestion brought the time to execute a piece of code from multiple days to a few hours.

Ignoring this person due to the difference in our experience levels would have been foolish.

7. You are not a "details person"
Programming is all about the details. If you get lost in a movie more complex than Conan the Barbarian, you probably won't do very well in the development world.

Sometimes, something as simple as a missing full-stop can mean the difference between random failure and perfect success. If you are the type of person who might not figure out where the missing full-stop is, your career will be limited in range, at best.

8. You do not take personal pride in your work
It's possible to program by the book and do a passable job. The problem is, the book keeps getting rewritten.

Software development is not a factory job where you tighten the same bolt all day long, where a touch too much or too little torque makes no difference. It requires independent thought, which in turn requires the people doing the work to take pride in it.

Furthermore, it's easy to do something the wrong way and have it work just well enough to end up in production. That "little error" you turn a blind eye to since it doesn't seem to cause any problems will cause problems.

Programmers who do not treat each project as something to be proud of turn out poor-quality work, which in turn makes their careers short-lived.

9. You prefer to shoot first and ask questions later
Software developers, at least the good ones, spend a lot more time planning what they're going to type than actually typing.

Usually, when coders just open up their code editor and start banging away at the keyboard, most of what they write gets ripped out later. Programmers who ponder, think, consider and plan write better code in less time with fewer problems.

There's a reason so many programmers barely know how to type properly: the hard part of the job is knowing what to type. People who do not invest the time up front in their zeal to get started with the "real work" are skimping on the "real work".

If you are a doer and not a thinker, software development is probably not a good career choice for you.

10. You do not like the geek type of person
For a variety of reasons (some legitimate), a lot of people just do not enjoy being around the engineer or techie personality. If you have a hard time with the Dilbert personality type, do not even consider going into programming.

Are all developers like that? Of course not. But they comprise a large enough portion of the workforce that you would be miserable in the industry.

Talkback

i knew it. i'm not going to be a software developer. this kind of blood does not run through my veins. i'll just finish the degree for now and do something else.

graceweeh 18 December, 2007 08:44
Reply

Post your comment

In order to post a comment you need to be registered and logged in.

You can also log in with Facebook. Log in or create your ZDNet UK account below

  • Login

Will not be displayed with your comment

By signing up for this service, you indicate that you agree to our Terms and Conditions and have read and understood our Privacy Policy. Questions about membership? Find the answers in the Community FAQ

Get ZDNet UK's daily newsletter

Enter your email address to sign up

ZDNet UK Live

Paul Smyth

Is this classic FUD? One thing I would definitely have notice is a Mozilla threat to stop supporting GNU/Linux.

2 hours ago by Paul Smyth via Facebook on Firefox rapid release improves Fedora Linux
UnderINK

I agree with the previous commenter wholeheartedly. I couldn't say it better myself. This is very 'Big Brother'. And while I agree with protecting...

6 hours ago by UnderINK on European e-identity plan to be unveiled this month
Simon Bisson and Mary Branscombe

Nice to see that Turing's idea of a general purpose computer doing once-hardware-powered tasks in software is now universal ;-) Mary

11 hours ago by Simon Bisson and Mary Branscombe on Software with everything
Jason Burchell

seriously now. I've only bothered to read a small bit of the comments. do me and the rest of the world a favour. stop saying it does not work or...

15 hours ago by Jason Burchell via Facebook on Music industry negotiating over 24-bit downloads
Philip Charles Cohen

Read about it and weep, John Donahoe ... In addition to Visa’s V.me, there is now MasterCard’s PayPass digital wallet soon to arrive; another...

19 hours ago by Philip Charles Cohen via Facebook on PayPal takes phone-based payments to the high street
apexwm

Leslie Satenstein : Where have you ever seen Mozilla even mention this? Firefox is the most popular browser in the GNU/Linux OS, so I don't see...

20 hours ago by apexwm on Firefox rapid release improves Fedora Linux
songmaster

SHleG: Do you remember building a clockwork scorpion kit (I'm pretty sure I have a photo of it somewhere) — I think it was called something like...

21 hours ago by songmaster on Software with everything
Chris Wortman

Good I love Yahoo! Their search engine is getting better than Google as of late. I find more of what I want on the first page, and usually within...

22 hours ago by Chris Wortman via Facebook on Linux Mint 13 ramps up for KDE release
PatrickG

openhgs has made the point for Windows 8 multiple monitors without realising it! With Windows 7 you have to switch the mouse and so your focus...

24 hours ago by PatrickG on Windows 8 could speed multi-monitor uptake
Leslie Satenstein

Mozilla has threatened to stop supporting Linux. I guess that UBUNTU is going with another browser. I indicated that if Mozilla stops supporting...

1 day ago by Leslie Satenstein via Facebook on Firefox rapid release improves Fedora Linux
Andy Bolstridge

Much as I abhor Microsoft's licensing practices, this is almost certainly down to purchasing IT equipment via 3rd party consultants - you get the...

1 day ago by Andy Bolstridge via Facebook on 6 million wasted licences and £1,200 PCs: welcome to government IT
Jack Schofield

@openhgs Windows users have had multiple desktops since Linus started writing Linux. They just haven't shipped as standard because not enough...

2 days ago by Jack Schofield on Windows 8 could speed multi-monitor uptake
Jack Schofield

@Phil at Cloud4 What, Microsoft gets £1,200 per PC and £1,622 per server? Gosh, I'm amazed....

2 days ago by Jack Schofield on 6 million wasted licences and £1,200 PCs: welcome to government IT
craigsc

You guys have no idea what is going on at Autonomy. Autonomy could have been a much more profitable organization. The sales operations at Autonomy...

2 days ago by craigsc on HP cuts 27,000 staff as Autonomy chief Lynch leaves
Moley

How does this impact on dual or multi booting? Seems to me to more or less prohibit this, from Windows 8 anyway. Will Grub 2 recognise Windows 8,...

2 days ago by Moley on Windows 8 start-up speed forces USB boot workaround
apexwm

I don't understand why there cannot be a slight pause during the boot process so the user can press a key. Many operating systems do this, even if...

2 days ago by apexwm on Windows 8 start-up speed forces USB boot workaround
Gavin Goodman

You can now buy the Xi3 modular computer in the UK at http://www.ocdistribution.com . This can be bought with the Tand3m software, pricing and...

2 days ago by Gavin Goodman on CES 2012: Xi3 microSERV3R
Phil at Cloud4

I agree: Mike Lynch can clearly build a business and manage strategy. I suspect the exit of Mike is more likely the end of a planned handover...

2 days ago by Phil at Cloud4 on HP cuts 27,000 staff as Autonomy chief Lynch leaves
Phil at Cloud4

This is unbeleivable government wastage with only one winner... Microsoft 1 - Tax payer Nil!

2 days ago by Phil at Cloud4 on 6 million wasted licences and £1,200 PCs: welcome to government IT
Mispam

So what do you do when you can't boot into windows? Why can't I just hold Shift while I power up instead of having to boot into windows and click a...

2 days ago by Mispam on Windows 8 start-up speed forces USB boot workaround