Archive for November, 2009

cynicalman says…

cynicalman says…

I’ve got an idea. Make sure it f**king works!

Keeping developers happy – Up-to-date tech

Keeping software developers happy is hard. However, if done properly, it can decrease turnover and make hiring new talent easier. After all, who wouldn’t want to work for a place where people are genuinely happy to work?

The technology that developers use plays a part in this. I don’t mean hardware (although that is also important) as much as the software platform they work with. This includes programming languages, libraries, web servers, etc. Keeping these up-to-date helps to keep the software feeling fresh to those who work in it.

Technology, like anything else, ages. There is nothing that can be done about it. All the money that is invested in software development will eventually (with a bit of luck and a lot of work) yield a product that will, in turn, age. The good news is that there is a point where the developers know the platform really well. When you first enter this time then you are receiving the most bang for the buck with your team. They will be able to minimize the number of dead ends they explore, and be able to design your software better using the tools at hand.

The bad news is that if there is not a conscious effort to keep it up-to-date then you will try to remain in this stage. While it makes sense in the short term, it has horrible long term effects. Eventually, your products technology will be so old that no one wants to work in anymore (COBOL anyone?). If your software ever reaches this point it will be very hard not only to keep your existing talent, but to get new talent as well.

This is of up most concern if your business revolves around updating the same product, and continually making it better. You do not want to risk losing your most seasoned and talented developers on something like this. While upgrading technology can be expensive, so too is losing your best people.

Good developers are kind of like kids when it comes to technology. They both look forward to getting something new to play with. Tech is the toys that good developers like. When they first get it, they want to play with it and discover its secrets. It provides them with new problems to solve, and can possibly make their lives easier.

This is the behaviour you want to drive. An engaged developer is going to become more energized about their work, and will put more of an effort into their day to day job.

While you may not be able to implement a new tech (or an upgrade of an old one) in every release cycle, it should be something that is considered in every release cycle. Keeping your tech new not only makes keeping your people easier, it also makes recruiting easier. After all, new people are more likely to know new tech than old. Just ask the next person you interview if they know COBOL…

Tags: ,