Hiring great developers is every startup CEO’s biggest problem. It’s the same story at enterprises, where recruiters are frantically devising ways to attract top tech talent with much trial and error. One aspect that’s always overlooked is the kind of technology stack your team uses, and what it tells potential recruits about your organisation. That’s what we’ll look at in this post.
There is a clear supply-demand gap for tech talent. Code.org says that by 2020 we’ll have 1.4 million computing jobs, and only 400,000 computer science students. The gap is only widening.
Beyond the statistic, this is the reality companies face as they recruit tech talent.
In Stack Overflow’s extensive Developer Survey 2016, stats tell the real story of what the developer market looks like today. Developers aren’t looking for you, you need to find them.
Most developers aren’t actively looking for a job change, but they are open to new opportunities that help them progress their careers.
Most of these developers have years of experience under their belt and naturally give careful thought to each move they make. But, how do they decide where to move?
Most developer switch jobs because of a friend’s referral. If you’ve been recruiting developers for a few years, you’ll agree to this stat that referrals is still the most powerful way to recruit developers.
But what do developers look for in a new job?
From the top two points, we see that developers want to learn and build something new. They want to be part of something that’s changing the world. Of course, there’s a whole lot of developers that are cosy in their spacious offices, happy to get by with their fat monthly salary, and don’t care about making their mark. But we’re talking about the very best of the developers that every organisation craves to hire. These developers look to switch from jobs where they feel stagnant or bored, and move to newer pastures in search of the exciting and challenging.
Great developers get frustrated with slow legacy environments and processes. On the other hand, enterprises get caught in a vicious circle where they can't hire the talent they need to go faster, because those developers don't want to work in a slow-moving company.
Great developers get frustrated with slow legacy environments and processes."
The solution to this problem is to embrace modern agile development methodologies. Every enterprise that cares about the kind of talent it acquires should adopt DevOps.
DevOps comes with new processes. It’s about moving from the waterfall approach of building apps to continuous integration and continuous delivery. This requires breaking down the silos that exist between Dev, QA, and Ops teams.
Processes that were internal to one team now span multiple teams. Instead of waiting for handover of code from developers, QA and Ops teams are now involved in the development process from the start.
Keeping with cross-team processes, toolsets also span multiple teams. Docker is the single biggest change that the development process has undergone in recent years. It enables application portability across the development pipeline, and is gaining adoption with startups and enterprises alike. Using Docker will involve shifting workloads from VMs and on-prem servers. But this is a small inconvenience that has ripple effects in making your organisation more attractive to prospective employees.
Serverless computing is emerging as a great way to take the load off Ops teams, and speed up development. It lets DevOps teams focus exclusively on code, and leave the infrastructure provisioning and maintenance to a cloud vendor. Rather than configuring infrastructure to be able to run apps, you can pass your code as functions that are executed by the serverless computing platform. (AWS Lambda is the most popular serverless computing platform today.)
If your stack is built only on proprietary tools developed in-house or by a single vendor, it’s probably not because your needs are unique. Instead, it’s more likely you’ve not kept pace with fast-evolving open source technologies. Every modern development process uses a fair number of open source tools. Companies today actively encourage their developers to contribute to open source projects. For example, Microsoft has grown its open source efforts to such an extent that it was the top contributor on GitHub for 2016 with 16,419 contributors.
Docker itself is one of the most actively developed open source projects. It’s even spawned other highly successful open source projects like Kubernetes. Apart from this, there’s a slew of big data processing tools like Hadoop, Spark, Kafka, and Cassandra, which enable data processing at a scale never possible before.
Developers want to work on the coolest and most difficult technology challenges of our day—whether big data processing, artificial intelligence, IoT, or modern development practices like DevOps. The kind of tools your teams use defines the culture you foster in your organisation. Use legacy tools and you’ll have a culture that stifles innovation. Use modern tools, and you breed a culture of openness, speed, and collaboration that attracts open, collaborative developers! All this leads to more innovation. If referrals are your best chance of recruiting developers, you need to create a tech stack that makes your developers so happy that they will rave about it to their developer friends. This involves replacing proprietary tools with open source, breaking down silos between teams, and adopting DevOps practices. The race to hire the best developers is only going to heat up in the coming years. To ensure you get the best pick of the lot, make sure those developers will love coming to work every day because they’ve never worked in such a functional and modern technology stack before.