Scaling a development team
Mike Lehan
@m1ke
Nobody gets good at programming without investing a bit of time
Ok, a lot of time!
Why do we do it?
Become more employable
Learn new technologies
Develop sub-concious knowledge
Creativity is good!
A bold new world
(or, all work and no pension)
Freelance work
Supporting existing teams within an organisation
Working on new projects in a company, or on startups
More money
More responsibility
Less freedom
Why go from One to Many?
Freelance work
Company does well
You built most of it
Welcome to the team!
Solo project
Find a customer
See a gap in the market
Time to make some money!
Who are you and why do you keep talking to me?
Side project to full time business
Scaling problems
Multiple clients, exponential complexity
Code heavily coupled with business logic
No tests
More scalable business
More compartmentalised product
They're going to hate this...
... then they're going to hate me
Take a deep breath
Your code is OK
100,000 lines of code in 1 day
Without help from a Vulcan
It's our mess and we're proud of it
Text
A brief word on hiring
Where are we now?
10 months after 1st hire
Moved to OO framework
Rewritten database layer using PDO
Codeception for unit, integration & acceptance tests
Complete front end redesign
Doubled number of advertised properties
100% uptime (exc planned migrations)
Stuff what helped us
Procedural code is, at least, easy to read
Already using a bug board
Hired (accidentally) a team from very different backgrounds
Management is a skill!
Mike Lehan
@m1ke