Building Great Software: Hiring & Retaining Software Developers
2 July 2018 |
Paul Aldred-Bann | About a 7 minute read
In 2015, Microsoft CEO Satya Nadella famously said “every business will be a software business” and given that there is a projected increase of 24% between 2016 and 2026 of software developer positions in the US and 1 in every 10 new job openings in the UK are in tech it’s looking like he’s right. In contrast, it has been suggested that there is a tech talent shortage in the UK which will leave many of these positions unfilled. This blog post takes a look at what companies can do to hire and retain highly skilled developers and explores how AND Digital have taken this challenge head on.
Building your team
So your project needs developers, but where do you start? In some cases, companies outsource the work to a specialist recruiter who will do the leg work and screening for them, usually taking a percentage of the candidate’s projected salary as commission. Others, like us, utilise an existing network such as Stack Overflow, meetups, tech conferences etc. While the latter usually yields the best results, the former is almost always faster. This list is by no means exhaustive, and there are many creative ways companies can find tech talent and there is no right or wrong approach, for example we launched a campaign called Coffee and Code, where we gave free coffee away to those working in tech hubs around London who followed us on LinkedIn. Deciding how you find your candidates usually comes down to some basic questions such as: how well supported is your tech stack; can you afford the time it’ll take building a short-list and do you have the culture to attract experienced developers?
Joel Spolsky, co-creator of Stack Overflow created a very quick smoke test which he calls The Joel Test, that serves as a personal checklist that you as an employer may want to run through before you consider approaching potential hires. The list covers essentials like: Do you use source control?; Do developers have productive working conditions?; Do you have testers? While you don’t have to fulfil all of the 12 steps, they’re a good early indicator of how successful you’ll be in attracting talent. If you’re scoring low on these points, then it might be worth taking a look at your culture and environment.
Interviewing & Hiring
Linux creator Linus Torvalds once said “talk is cheap, show me the code”. While it’s important that the candidate can actually do the job, it’s equally as important that they’ll fit the culture of the existing group. Making bad hiring decisions can have drastic consequences on quality of output, and in more severe cases the morale of the group as a whole.
Interviewing can be hard. Traditionally the employer and the employee are role-playing their best presentation of themselves and are not realistically representative of the whole. AND Digital have rolled out our own interview process and have an extensive training regime for the people conducting the interviews to ensure each prospective developer is evaluated consistently and fairly, making sure the following core criteria gets covered:
- Can the candidate write code? Requesting access to examples of actual code they have worked on is a great idea. In most cases, it can be provided pretty quickly by linking to Github or some other code repository and is a perfect example of their ability to write scalable, high quality code and be consistent with their conventions. In situations where the candidate can’t provide examples, then it’s a good idea to provide some kind of hands-on technical test. Real-time coding katas are a great way to see how a developer thinks and how well they know their tools. AND Digital use Codility which generates a test for the candidate with full test coverage where each submission is quantified and peer reviewed.
- Can the candidate talk about code? Since the concept of DevOps got traction, developers have moved away from just writing code and are now involved in every aspect of a project, from conception to delivery. Being able to communicate your thoughts effectively highlights your ability to solve a problem faster, and as a developer matures, they become more involved in coaching and mentoring others and this ability becomes vital. Overall, it’s a great trait to have in any developer and AND Digital cover this with a face-to-face chat between an internal technical coach and the candidate.
- Will the candidate fit in with the culture? It’s likely there is an existing culture within your organisation that needs to be protected. This culture is the foundation for your success and making bad hiring decisions can sometimes jeopardise this. AND Digital ensures a specific cultural fit interview with any candidate. Furthermore, AND Digital has a 4-week bootcamp for all new hires that gets everyone working together and forming close relationships from day one.
Retaining Your Team
Traditionally, companies reward hard work monetarily, the idea being the more valuable an asset you are to the business, the more you are rewarded (paid). Surprisingly money is no longer the motivating factor for developers, so if it’s all you have to offer, then the chances are that you’re going to have a hard time keeping hold of your team!
So, what do developers want? Stack Overflow conducted a survey in 2015 of their user base which was comprised of 26,086 people from 157 countries and contained some very interesting results. Of this sample, 66.3% were employed full-time but spent on average 6 hours 13 minutes per week of their personal time coding on the side, and more surprisingly 21.9% of the sample spent more than 10 hours per week coding on the side. This could be personal projects, open source work or anything – but the emphasis being on the fact that this sample enjoyed the work, and were likely doing it for free.
Given that, money cannot guarantee your team will stick around, but what will? In short, nothing. There is nothing that you can (reasonably) do as an employer to guarantee your team won’t jump ship to the next big thing when it comes along. The trick is to make things so good that they simply won’t want to leave. Here are some of those things:
- Location is very important and is usually the first thing potential hires notice. Gone are the days where a grey cubicle in a quiet business park and a red Swingline stapler were the only things a developer needed, now it’s a workplace close to a vibrant culture of innovation and creativity where they’ll feel free to explore their ideas and express their opinions and be confident they’ll be seen and heard.
- Creativity is the real enabler of building ground breaking software and developers need lots of it. Being able to decorate your environment with Kanban boards, motivational quotes and thought provoking artwork is a huge plus, and helps to promote and harbour it.
- Aligned values have a huge impact on building great teams, and act as a great starting point on building relationships between people. Companies who work with clients with questionable corporate images or unethical practices, are more unlikely to be successful in hiring and retaining effective development teams.
- Tooling is one of the most appealing perks you could list – modern and fast machines, up-to-date development environments, access to the latest technology are all guaranteed to pique any developer’s interest.
- Investment in their future is another great perk to offer. Giving people access to training resources and high calibre teams, ensuring that their skillset never stagnates is a great way to attract and retain the best. AND Digital has a unique approach to this with our own training and coaching Academy, which ensures that everyone is sharing and delighting in each others achievements and knowledge.
We’ve covered a few things throughout this article on how to find and retain good developers. The same rules apply here as in everything – you’re not going to get everything right all of the time. Failure is inevitable at some point, so it needs to be expected and it needs to have a minimal impact when it happens. AND Digital is a innovative and creative company that addresses all of the issues outlined in this blog in their own, unique way. We are growing every year in both number of people and office locations all over the UK and beyond. Every ANDi at any level feels free to fail and succeed equally, in failure they are supported and learn from the experience and in success they wonder, share and delight with each other.Read More From This Author
Tech Lead (Reading)
Bring your expert tech knowledge to the table to influence the direction of projects, whilst coaching and your team through engineering best practices.I'm Interested
DevOps Lead (Reading)
Bring your delivery expertise to the table, leading the pack as ambassador on operational requirements, influencing and continuous development.I'm Interested
Programme Lead (Edinburgh)
Bring your expert project knowledge to the table to own delivery of all our initiatives being delivered out of our Delivery Engine.I'm Interested