Software startups: how to avoid growing pains
We live in a time where information is everywhere.
Information about everything. How to make perfect pasta. When to plant potatoes. Which exercises build muscle the fastest. Even how to start a company, and how to run it.
This is all truly great stuff that blurs the lines between education and entertainment. You can learn how to do something, from an experienced practitioner, and usually for free.
But the reality of software startups is almost always shielded from you.
The hard work and the failures of tech startups are rarely shouted from the rooftops, and when they are, it all seems so inevitable and obvious. We only tend to see the ones that make it, and assume that they’re the best. The ones that fail? They didn’t have “the formula”, or the “mindset”. Or the product.
Survivorship bias leads us to believe that you must do things a certain way in order to succeed. You’ve got to have all that trendy startup stuff – open-plan offices, a dog, flexible working, unlimited time off, beer fridges, ping pong, and above all, total freedom.
This is your company culture, right? Isn’t this how all the best software companies motivate their teams to produce their best work, and ship fast?
Not really. Because nobody tells you how bad it can get when this culture of freedom collapses in on itself, trapping those within it in a cycle of burnout.
Freedom versus burnout
A well-intended culture of freedom, styled after the “best in the business”, can turn sour. Usually, it’s slow and insidious. Like boiling a frog slowly, employees don’t immediately leap out when it all gets too hot to handle.
Take flexible working hours, as an example. It’s such a great concept on paper – and in bigger organisations, it works well.
But employees in startups more regularly feel a sense of duty – to always “be on”; emails, Slacks, WhatsApp groups – notifications are constantly pinging. And not just in work hours. At bedtime, on weekends, during annual leave… It’s never-ending, and always urgent, somehow.
Flexible working practices can work brilliantly at established software firms, where there’s plenty of headroom. At a startup, with only a handful of developers and coders, it’s a one-way, fast-track ticket to crunch and burnout. Employees can suffer in silence during phases of growth, stretched to their limits, working all hours.
But you’ve got unlimited paid time off, so that’ll balance it out… right?
Well, only if there’s enough staff to cover the employees taking unlimited PTO. And if they’re even willing to take it.
Have you heard of “option paralysis”?
When humans are presented with unlimited choice, we can become paralysed by the options, never choosing anything for fear of making the wrong choice.
Unlimited time off can have the same effect on our brains.
Imagine sitting down for a meal at a restaurant, and being presented with an enormous menu. Tens of pages of dishes, and each one sounds completely delicious. How long will it take you to order?
Now imagine you’re at a food truck that sells tacos. Just tacos. There are 3 toppings. How long are you going to take to order?
The point of all of this is: there is such a thing as too much freedom in software startups. But the very things that make startups attractive to talented devs and coders – like agility and autonomy – need a level of freedom.
So how do you balance it?
How to ship and version software quickly
The answer is to maintain the sense of freedom, but contain all activity within a structure. There must be processes, and clearly defined boundaries. That structure will look different at every software startup; because all of them have learned in very different (often painful) ways, that one size does not fit all.
It’s the ugly stuff that nobody talks about. The pain of growth. The lessons learned.
You need to be able to work as a team, at all times – even if that means taking a long break to be at your best. Above all, you need to define your processes, and your workflows.
Reduce burden, improve productivity, and give freedom to innovate within frameworks and allotted time.
Shipping software fast means using time where it counts, and front-loading releases for the best outcomes.
1. To ship software fast, implement code reviews. More often than not, the biggest problems come from code that wasn’t reviewed before launch.
2. Measure everything you possibly can, both in-house and user metrics. What’s the development lifecycle? Where are the bottlenecks? How are users interacting with the software – and have there been any dramatic changes in usage since the last version was shipped? Keep watching those metrics – because they’ll guide improvements in speed and quality.
3. Roll out slower. This sounds really counterintuitive – if you want to ship software fast, why would you push for a slow rollout? Well – by introducing changes to a smaller group of users first, you can track their experience, perform A/B testing, and limit the number of incident reports – allowing your team to work faster overall.
Scaling with contractors
Another, and an increasingly popular answer to the growth problems startups face, is to expand your team on a per-project basis.
Hiring experienced, ready-to-go contractors allows startups to scale up and down with requirement – and the freelancers you hire in can impart valuable knowledge onto your core team.
ClearHub helps software startups in the most important phases of growth, to hire DevOps contractors and consultants, and seasoned practitioners, who can jump on a task and just get it done.
We find the people who push teams forward and pick up the slack during heavy workloads.
Read more – How to manage a mix of staff and contractors
We’ve got decades of experience in enabling fledgling software teams to become industry leaders. And we do that by placing the right talent at the right company,
Let’s do it for you. To get started, call +44 (0) 2381 157811 or send your message to email@example.com.