The typecast developer

Soon after graduating and starting work for my first IT company, I realised that we, as software developers, are typecast. Our future careers are defined by what language we use, development tools we are given, the software we develop and even the type of company we happen to work for. The next job will probably use the same sort of skills, and so on. Before you know it, years have passed and you are stuck in a rut using the same skills as when you started out.

I guess the term “Experience” is the source of all of our woes. As you continue to gain precious experience, you begin to realise that experience is not so much a commodity as a way of branding yourself. Be it as a Senior JEE developer, .NET coder, a hotshot Web developer or mobile hacker.

In many ways you can see why employers look for people with particular skillsets. Less training, fewer interviewees, initially more productive, proven track record and so on. From a developer’s point of view it isn’t so attractive. Less opportunity, repeatedly solving the same problems, tunnel vision and, most worryingly, a higher risk of becoming obsolete.

So. Is there anything we, as professional software developers, can do to prevent ourselves from being typecast. For a start, any graduate developer should look for companies that enable them to do work that interests them. Don’t fall into the ‘Any job will do for experience’ trap. It might do if you get lucky, but it probably won’t.

What about the rest of us? We should learn from our friends in Hollywood and try to reinvent ourselves every now and again. We can look for more forward thinking companies or those with projects in multiple domains. The less scrupulous may embellish the facts of their actual experience. Open Source software provides the opportunity to branch out and use languages and tools that we never would in work. Freelance work may also provide valuable commercial experience. We can also invest in newer technologies and languages that may not yet have an experienced pool of available talent.

4 comments ↓

#1 mj on 03.20.08 at 10:31 am

Don’t underestimate the power of choice here.

You choose the jobs you are qualified for (and can b.s. your way into). If you only learned Java in college then you’re going to stick to Java. If you took the time to learn other languages then you have more choices.

The Freelancer will take on *anything* at the start because, at the end of the day, the rent still needs paid.

Thing is, there’s still people out there using COBOL. Java will likely become the COBOL of choice for the next 30 years. It’s a solid place to be.

Would you be better served going with Silverlight? Too late for Ruby? Ever going to be time for Python? It’s your free time. You decide.

#2 conormcc on 03.20.08 at 2:14 pm

Wow! Someone is actually reading my blogs!! Now I am getting nervous :)

I agree that you choose jobs you are qualified (i.e. experienced) for. The problem is moving to jobs you do not have experience in. I believe a good developer should be able to work on any problem, including ones they haven’t worked on before.

From my experience in college, students are taught the principles of programming, not specifically in C++ or Java but in any language. E.g., Once you learn OOP, you should be able to apply those principles to whatever language OO you happen to use.

There is no doubt that languages like Java/C++ will be around for a long time to come. However, sticking with one or the other may limit the type of work you can get as time goes on.

I fully agree that it is our responsibility to learn a number of languages. The difficultly is in converting that into cold, hard experience (without resorting to b.s :-) )

#3 nallo nallo on 04.10.08 at 8:03 pm

well look at it this way guys, You could have BCS Computer Science and MSC Managementand work in infrastructre. Ive forgotten ALL my development ability. I sort of drifted into this field though and it has perks in ways. But once in network engineering you tend to stay there. Once in Server infrastructere you tend to stay there. Typecasting happens in infrastructre as well – you go where the money is though. There are some atrociously low paid jobs asking for Cisco network engineering experience, data centre design and the like, but when you work for “big company” you go for and stay in network or server roles or whatever,

Still we could be working in production support doing stuff as dull as dishwater and getting grief from traders 24×7

#4 conormcc on 04.10.08 at 10:03 pm

And I always though you were happy with your job ;) Its a fair point though. I guess we are all typecast to some degree and its not necessarily a bad thing if you happen to like what you do.

Leave a Comment