paint-brush
Why More Engineers Don't Mean Faster Development (And What Does)by@alexomeyer
1,551 reads
1,551 reads

Why More Engineers Don't Mean Faster Development (And What Does)

by Alex OmeyerMay 31st, 2023
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

The clock is ticking, deadlines are looming, and the project isn't moving as fast as it should. More people should equal faster work, right?
featured image - Why More Engineers Don't Mean Faster Development (And What Does)
Alex Omeyer HackerNoon profile picture

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.

The Myth of More

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.


Does hiring increase speed and software velocity?


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."

People vs time to completion graph


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.


Chaos in the office


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.

Process and Communication: Efficiency Beyond Headcount

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.

Next-level Agile

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.


Scrum or Agile in an office software team

Collaboration is ready for the AI era

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.


CollabGPT – Slack summaries, Jira summaries and much more


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.

The Software Development Cycle in the AI Era

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.

Paving the Way to Efficient Development

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.


Find out about CollabGPT


Also published here.