Beware, The Developer Who Isn't Interested In Development!
Posted by pramatr on August 23rd, 2008
When I first started my software engineering degree, there were plenty of people I met who simply didn’t want to be there. After a few months they’d had enough and moved onto something else, and after a couple of years the classes had halved in size. I’ve actually met a few people in the industry who behave like they don’t want to be here either, but I was hoping they were in the minority. After speaking to a former colleague however, I’ve found that the problem might be much worse than I had thought. The contradiction of the developer who isn’t interested in development.
Let me just start by saying, if you’ve got this far you really aren’t one of the people I’m talking about! Hopefully you’ll see this as a good thing
.
A previous project I worked on was mainly composed of short-term contract staff. The project saw large staff turnover and the code quality was generally quite poor. Many of the developers simply weren’t interested in the project and why should they be? Team members that don’t have to take long term ownership of a project don’t really have to worry about it’s quality or longevity. They can stumble through a project putting in the minimum amount of effort required to get the job done. They can move onto a new project and leave behind all the problems for someone else. When working with transient staff, you just have to be pragmatic about this, it’s just life. Some of these staff will be true professionals and give a project their all, others won’t.
Now I know this sounds like an obvious thing to say, but when putting a team together, you need to hire developers who actually take an interest in what they do! Many people involved in the hiring of staff really don’t understand this, and instead focus on finding someone who claims to be buzzword compliant. Having the right skills is an obvious requirement, but this isn’t the only consideration that needs to be made. A large percentage of developers out there, just aren’t interested in the project they are working on and more importantly they aren’t interested in software development in general. The more developers I talk to and the more horror stories I hear from them, the more I’m convinced that these people are on the rise.
Developers that aren’t interested in what they do, don’t invest in themselves and don’t strive to improve not only their skills, but also those of their team mates. They don’t take pride in the code they develop, and a real danger if you work under a developer like this is that you will stop taking pride in yours as well. They will never read technology blogs or articles, they will never be found viewing DZone, TSS, infoQ and they will never pick up a technology book. They have no interest in development outside the hours of 9am-5pm and they probably never will. They are basically happy treading water, just getting by.
They are probably perfectly nice people and outside of work you might have plenty of things in common with them. In a workplace however, teams incorporating individuals like this are always fighting an uphill battle. The knowledge transfer will always be a one-way process. Opinions in important decisions will seem like a diversion from everything else they could be doing. The most reaction you’ll ever get in a discussion is a nod of their head or a shrug of their shoulders. In the past I’ve found this can actually be somewhat infectious and it gradually starts to have a negative effect on the entire team.
You’ve basically got the worst kind of code monkey. One that doesn’t really know what they are doing, doesn’t understand what they should be doing, doesn’t care that this is the case and just isn’t interested!
Now if you are a code monkey who’s happy hacking away for eight hours a day, you aren’t interested in what you do and you really don’t want to learn, that’s absolutely fine and good luck to you! In my experience however, if you want to build a team that’s going to produce a product of quality and longevity, you need to steer well clear of these people! These people will drain your other team members, slow you down and will generally cost you lots of money!
You’ll find these people everywhere. They’ll always be too busy to help, but they won’t be shy in asking other people to help them. They won’t want to develop things the same way everyone else does and instead they’ll develop their own style. They will never want to get their hands dirty and instead want to do the cool R&D jobs. When everyone is too busy to help, instead of rolling up their sleeves they’ll turn to the wealth of free labour on the Internet forums. The majority of posts on forums are from hard working developers, but you’ll also spot the other type as well.
So as a cautionary tale, if you have employees who fit this profile, do a quick search on the Internet for package and class names that match your project. You might find nothing, on the other hand you might find the original author of your code on an Internet forum. Why not contact them and offer them a job, you might as well if they are writing code for you anyway.
If someone really isn’t working out in the team, you need to do something about it. The longer this goes on, the greater the negative impact will be on the team. This can very quickly go from one problem to several. If there is a hint of promise at all in this developer (and as an eternal optimist I’d like to believe there always is), work with them to try and understand what the problems are.
Get them involved in the team: find something they are good at or interested in and try and develop this talent. Encourage them to go off and find out more about this and report this back to the team, make them feel important and make them the subject area expert. You need to do everything you can to make these people integrated and motivated. If nothing interests or motivates your developer you’re in trouble. If it doesn’t work out, in many cases it’s better for these people to do nothing at all, such is their negative impact on team performance. At the end of the day, do you really need people like this in your team?
When you are looking to hire new team members, you need more than just buzzwords. Go for the developer that shows real enthusiasm and interest in what they do. Go for the developer that’s contributed to open source software or forums to help other people out. Go for the developer who is willing to admit they don’t know the answer to your question, but they do know how to find it. Go for the developer that asks questions and has opinions on things that matter. Go for the developer who is excited that you have a library of books for them to read. These are the people you can work with, you can encourage and you can help to become better developers. These are the people that will be an asset to your team and will help you become a better developer as well. One developer who’s passionate and highly motivated, is worth so much more than a bunch that aren’t!
Above all else, avoid the contradiction of the developer who isn’t interested in development.
