O SlideShare utiliza cookies para otimizar a funcionalidade e o desempenho do site, assim como para apresentar publicidade mais relevante aos nossos usuários. Se você continuar a navegar o site, você aceita o uso de cookies. Leia nosso Contrato do Usuário e nossa Política de Privacidade.
O SlideShare utiliza cookies para otimizar a funcionalidade e o desempenho do site, assim como para apresentar publicidade mais relevante aos nossos usuários. Se você continuar a utilizar o site, você aceita o uso de cookies. Leia nossa Política de Privacidade e nosso Contrato do Usuário para obter mais detalhes.
how pair programming can
Tommy Sullivan, BroTommy
• software engineer at
• ~45 startups in San
Francisco and Singapore
• worked with a few billion
- telecom ~200B
- music label ~2B
- advertising ~1B
- banking ~ 60B
- KMKOnline 😁
• Anecdotal - based on my experience and theirs
• KMK doesn’t do everything right
• Where we are and want to go
• What we think works, love to know what works for you
○ Millions of daily active users on
iOS & Android
○ Indonesia’s local messenger
○ 1M requests per second 🔥
○ Peaks of 600k concurrent users
○ Best video content in Indonesia
○ 25k events per second 🔥
• Extreme Programming
Investors of 💵 in:
○ rumah.com (Property Guru)
One of the quotes that I used to flash around
people was "if you're doing Extreme
Programming the same way as you were
doing it a year ago, you're no longer doing
Extreme Programming". Because if you don't
take charge and you don't alter things to fit
your circumstance, then you are missing the
key part of it.
- Martin Fowler
• EMC bought VMWare
• EMC bought Pivotal
• EMC moved all the enterprisey software to Pivotal
(including CF & Spring)
• Dell bought EMC
• Dell/EMC spun off Pivotal
“The thing I found most interesting is that this project should have
failed. A HUGE incredibly complicated body of enterprise software
with near-100% team turnover? I would have bet against it ever
But all that pair programming and rotation and writing stories and
backfilling tests etc just eventually ground the problem down.
It was expensive as hell and it took years but it looks like a success story
I don't know of any other big takeover project like this that worked.”
- Hacker News comments on Pivotal’s ~ 5B IPO
“Most of the over 100 companies Pivotal works
with every year come to them because they
think they just need more development
support to ship faster or manage their growth.
But more often than not, Hieatt believes the
problem is actually related to the broader issue
of development culture…”
- Edward Hieatt
• Build & release incrementally
• Work in cross functional teams
• Code by pair programming
• Deploy with continous integration
• Use test driven development
• Automate the boring stuff
• Engineer at a sustainable pace
• Play Fair
• Clean Up
• Hold hands and stay
• Say you’re sorry
- What are we working on today? What do we plan to achieve?
- Syncronize breaks - pomodoro or otherwise, but opposite-sync is silly
- Pairing is a democratic process, not a competition where another individual is made to feel inferior
- Type at a reasonable speed lah!
• Take Notes!
- When your pair is coding, take notes on things you think will need attention later. Do not interrupt or
flag issues immediately – breaking their flow. Once your pair is done with the typing, discuss
• Vocalize / Communicate
- What was just done, what is being done, and what is going to be done next.
- Pre-empt and analyze expected test results.
• Team Leads: Check in, evaluate, rotate
- Not always easy, but team leads need to work on how to do it
KMK’s pairing rules:
how to fail!
• Forcing people to pair
They will sandbag the project
• Totally flexible hours
• Taking on too many changes
at the same time: Scrum,
• Not adquate seating /
how to succeed!
• Solicit people actually
interested in pairing!
• Coordinate their schedule
Come & leave on time
• Step-by-step if implementing
Solve your main pain points first
• Give them keyboard, mice, and
proper desk space
• Decide on the task to be done
• Set the pomodoro timer to n
minutes (traditionally 25)
• Work on the task until the
• Take a short break (3–5
• After four pomodori, take a
longer break (15–30 minutes)