John Boxall did a presentation at CodeCore on the evolution of his Mobify development team from 2007-2014. Mobify is an open platform to adapt any website for mobile devices: smartphones, tablets and more.
John is CTO of Mobify, a company he helped co-found with Igor Faletski and Peter McLachlan in 2007. A client-side web technologist, John is focused on building Mobify’s technology to deliver fast, reliable and future-proof solutions to our multi-channel customers and partners.
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
THE EVOLUTION OF A DEVELOPMENT TEAM WITH JOHN BOXALL FROM MOBIFY
1. # Scaling Development Teams
## CoreCore Feb 26th, 2014
John Boxall, CTO Mobify
@johnboxall
> Developer Dynos
>
> 0 1 *
> ^-|---------------------^
--------------------------------------------------------------------------------
# Scaling Development Teams
GOAL:
Provide value to the customer faster.
* Scaling systems
* Vertically scaling yourself
* Horizontally scaling to your first hire
- Recruiting
- Ramping up your first hire
* Horizontally scaling to to a team
--------------------------------------------------------------------------------
# Vertical System Scaling
* Scale with a better nodes.
> o => O
+ Handle more operations
+ No additional complexity
+ No new processes
- There is a ceiling to how far you can scale a node
- A low number of nodes comes with a risky bus factor
--------------------------------------------------------------------------------
# Horizontal System Scaling
* Scale with more nodes.
> o => o - o
+ Handle more operations
+ Redundancy
- Additional nodes add complexity
--------------------------------------------------------------------------------
# Vertically Scaling Yourself
* Who are you? Technical co founder, technical hire
#1, lead developer on a team.
2. > "I'm starting with the man in the mirror ♫" MJ.
--------------------------------------------------------------------------------
# Vertically Scaling Yourself
* Visualize how you want things to be better two years from now.
* Write down how things need to change to get there.
* What is the most important thing you could do in the next
90 days (7 weeks) to get where you are going?
* Write it down. Let's call it a "Goal".
> Special Tip! <
Investing time in creating goals or planning is a key to empowering
your first hires!
--------------------------------------------------------------------------------
# Vertically Scaling Yourself
* Get a coach. Get a mentor.
* Celebrate wins.
* Limit distractions.
--------------------------------------------------------------------------------
# Horizontally Scaling to the First Hire
* Build you network
* Get referrals
* Finding the right person
* Closing
--------------------------------------------------------------------------------
# Networking to Find the First Hire
Networking Playbook:
* Attend
* Be a connector
* Present what you are working on
--------------------------------------------------------------------------------
# Asking for Referrals
Obligatory slide to remember to talk about how important referrals are.
--------------------------------------------------------------------------------
* Finding the right person
* Know what you are looking for
* T-shaped people
* Ensure folks have a minimum breadth
* Dive into where they are deep
* Trust your gut
* Don't leave people hanging
3. --------------------------------------------------------------------------------
# Closing the first hire
--------------------------------------------------------------------------------
# Horizontal Scaling - The new hire!
* Get to the point where you can give the new hire one of your goals
say "Get this done in a way that makes sense for the company."
> o => o - o
--------------------------------------------------------------------------------
# Horizontal Scaling
* Environment - Minimize drift
* Development - Code review
* Acceptance - Test and automate
* Release - One click deploys reduce stress of shipping
--------------------------------------------------------------------------------
# Scaling past the First Hire
* Vertically scale your first hire by involving them in hiring #2
--------------------------------------------------------------------------------
# Growing the Team - Horizontal Scaling
* Development Process
* Standardize Tooling
* Teams
--------------------------------------------------------------------------------
# Bigger Teams - Horizontal Scaling
* Customer and stakeholder feedback
* Working with designers
* Effective collaboration
* Ownership
* Loosely coupled, modular systems
--------------------------------------------------------------------------------
# Scaling Development Teams
GOAL:
Provide value to the customer faster.
* Scaling systems
* Vertically scaling yourself
* Horizontally scaling to your first hire
- Recruiting
- Ramping up your first hire
* Horizontally scaling to to a team
4. --------------------------------------------------------------------------------
# Scaling Development Teams
* As you iterate on your software, iterate on your process
* Favour small changes, easy to roll out, easy to roll back
* Favour experimentation over argument
--------------------------------------------------------------------------------
Scaling dev teams is sort of like scaling systems. Favour vertical in the short
term but have a plan to go horizontally
_______ _______ _______ _______ __ __ _______ __
|_ _| | | _ | | | |/ | __| |
| | | | | | <|__ |__|
|___| |___|___|___|___|__|____|__|__|_______|__|