Mark Imbriaco has over 20 years of experience leading operations at several tech companies. Some of the key lessons he has learned include: making many small decisions instead of large ones; pushing back against "hero culture" where engineers take on too much; practicing processes to increase confidence under stress; designing collaboration into processes; and celebrating wins to build a culture of shipping. He advocates for flexibility, empathy, visibility, and closing the feedback loop to apply lessons learned across an organization.
What I learned leading Ops at GitHub, Heroku, DigitalOcean, and more...
1. Mark Imbriaco @markimbriaco
Lessons From the Bleeding Edge
What I learned leading Ops at GitHub,
Heroku, DigitalOcean, and more...
Mark Imbriaco
mark@operable.io
2. Mark Imbriaco @markimbriaco
• Building and operating Internet services
for over 20 years.
• TechOps leadership at 37signals, Heroku,
LivingSocial, GitHub, and DigitalOcean.
• Founder of Operable.
• Frequently opinionated.
Who am I?
5. Mark Imbriaco @markimbriaco
Break large decisions into smaller decisions
whenever you can. Not only is it easier to
make small decisions, it's also easier to
change them when you find out you're
wrong.
Make tiny decisions.
6. Mark Imbriaco @markimbriaco
Engineers have a hard time leaving
problems unsolved, but there are always
more problems. Push back and enforce
healthy balance.
Fight hero culture.
8. Mark Imbriaco @markimbriaco
If you haven't practiced your plan, you don't
have a plan. Build deliberate practice and
feedback mechanisms into your processes
to increases confidence when working
under stress.
Practice makes perfect.
9. Mark Imbriaco @markimbriaco
Be prescriptive where possible to allow
people to focus on the areas where they
provide the most value.
Don't make me think.
10. Mark Imbriaco @markimbriaco
Learn from both successes and failures.
Learning reviews should be a habit, not an
opportunity for assigning blame.
Make it safe to learn.
11. Mark Imbriaco @markimbriaco
• Apologize. And mean it.
• Demonstrate a thorough understanding of
the problem.
• Explain what you're doing to reduce the
likelihood of similar problems. Don't over
promise.
... and share the results publicly.
13. Mark Imbriaco @markimbriaco
Go the extra mile to understand the
problems that your internal customers have
and demonstrate that you understand them,
especially when you have to say no.
Empathy is a core value.
15. Mark Imbriaco @markimbriaco
Design collaboration into your processes.
Make sharing the default and bias toward
visibility. Remember, visibility is the ultimate
compensating control.
Collaborate by default.
16. Mark Imbriaco @markimbriaco
If you're building a web tool, enlist help from
a friendly designer. If all else fails, pick a UI
framework like Bootstrap and fake it. A little
bit of visual design goes a long way.
Ops tools don't have to be ugly.
18. Mark Imbriaco @markimbriaco
Celebrate your wins and share in the
celebration of others to build a virtuous
cycle of forward progress. And remember,
shipping isn't just for software.
Build a culture of shipping.
20. Mark Imbriaco @markimbriaco
Big design up front does not work well in
software. Processes are no different. Be
flexible, adaptable, and constantly apply
what you learn.
Do the simplest thing that could work.
21. Mark Imbriaco @markimbriaco
Beware the illusion of agreement and be
explicit. Make sure that your hard won
knowledge is shared across your entire
organization and deliberately considered in
new projects.
Close the feedback loop.
22. Mark Imbriaco @markimbriaco
If you're interested in ChatOps and have
security or audit requirements, I'd love to
talk to you.
Mark Imbriaco
mark@operable.io
Thanks!