The clock is ticking, deadlines are looming, and the project isn't moving as fast as it should. In comes the seemingly obvious solution - hiring more software developers.
More people should equal faster work, right?
But let's step back for a moment. This isn't a production line; it's a complex process that involves more than just coding.
Simply inflating your team doesn't guarantee quicker development. Sometimes, it can even slow you down.
So what does speed up software development, if not just headcount?
That's what I’m going to explore. I’ll get into the bones of why more software engineers don't necessarily mean faster progress and what alternatives can genuinely boost your productivity. And trust me, it's not about working harder; it's about working smarter.
It's easy to see why the 'more engineers, faster development' myth is so prevalent. It seems intuitive, doesn't it? The more people working on a task, the quicker it gets done.
But when we look closer, this notion doesn't quite hold up, particularly in software development. Enter Brooks's Law: "Adding manpower to a late software project makes it later."
This principle was born out of Fred Brooks's book "The Mythical Man-Month", a seminal work in software engineering (despite having glaring gender inclusion issues throughout, which readers should be conscious of!).
In short, we increase the communication overhead as we add more people to a project.
More people mean more lines of communication, more chances of miscommunication, and more time spent on coordination rather than productive work. It's not a linear progression. It's exponential.
Now, let's throw new hires into the mix. Getting a new engineer up to speed takes time and effort. It involves time, resources, and often the help of existing team members - which takes them away from their tasks. The ramp-up time is real, and it can be substantial.
And what about the complexities of modern software projects? They are typically interwoven, multi-faceted entities that lend themselves poorly to the divide-and-conquer approach.
We aren't dealing with a pile of tasks that can be handled independently. Everything is interconnected. Changes in one area can have ripple effects, causing the need for adjustments, testing, and quality assurance elsewhere.
So, while the appeal of adding more engineers to speed things up is understandable, it's a short-sighted solution.
So, achieving faster development isn't about simply filling more chairs.
It's about maximising the potential of those already seated.
Here’s how we do it.
Agile methodologies provide the framework for reducing waste and increasing efficiency. However, in software development, it's not just about eliminating redundant tasks or automating repetitive ones.
It goes deeper. It needs to be about understanding your unique "value stream," where the real value is created in your development process, and optimising for it. This could mean different things to different teams – it may lie in design, testing, deployment, or elsewhere.
Fostering effective communication is a known mantra, but let's push it further.
With a seasoned team of engineers, the issue isn't basic communication – it's about creating a shared context.
Each team member should have real-time access to the collective knowledge, changes, and progress.
Achieving this certainly wasn’t trivial before the AI boom, but I’m working on something that will hopefully make it trivial.
CollabGPT is a tool I’ve been developing with my team to solve this. It’s an AI tool that aggregates and analyses data from Slack, Jira and GitHub.
It can be queried in natural language, and provides extremely smart summaries of what activity has happened, and actionable suggestions on what needs to be done.
Find out more about CollabGPT, if you want to level up collaboration in your software team.
My team recently surveyed 200+ people who work in software.
Teams who have adopted AI say, on average, their software development life cycle is 2.5x faster because of adopting AI. Those same teams predict they’ll be 3.5x faster within a year.
But there’s resistance to AI. Leaders worry about data privacy (48%), how green the tech is (48%), and struggle with battling a general resistance to change (38%).
The question is: can non-adopting teams afford to be left behind like this?
More than 7 in 10 companies have no guidelines around AI adoption, which likely contributes to the hesitancy. Without a collective understanding and agreement about what safe and unsafe AI looks like, it’s impossible to make good decisions about how to adopt. These organisations end up with blanket bans.
I wrote a list of AI for engineers that CTOs need to know about, which you can read here.
Adding engineers is not a silver bullet for fast-tracking project timelines.
Sometimes, it might be the answer. More often, it's better processes, streamlined communication, and efficient tools that truly fuel acceleration.
The truth is, our industry's clock is always ticking. But with the right tools and approaches in place, we're not just keeping pace; we're defining the tempo.
For those curious about how AI can impact your teams, I'd love you to consider exploring our AI tool, CollabGPT.
It reduces information overload and enhances collaboration in development teams.
Also published here.