Save 37% off PRO during our Black Friday Sale! »

Level Up - Building High performing team culture

Level Up - Building High performing team culture

What does it mean to strive for ENGINEERING EXCELLENCE? As your engineering organization grows, you want to encourage teams and individuals to develop and improve their technical proficiency and practices. Growth puts stress on your teams' ability to deliver kick-ass code consistently. To help them improve and grow, we built the LEVEL UP model to represent everything that's expected of an excellent engineering team.

In this talk, I’ll review why we built this model, refined it and how we got teams to adopt it and the effects that it had on our department. I will also give you the tools to either use our model or fork your own specific one for your organization.

2f7eb8e439ce2d288dcfa240b5210664?s=128

Yonatan Bergman

June 16, 2019
Tweet

Transcript

  1. @yonbergman LEVEL UP Building high performing team culture

  2. @yonbergman YON BERGMAN VP of Engineering @ WeWork Technology

  3. @yonbergman

  4. @yonbergman t e c h n o l o g

    y
  5. Sam Altman
 @sama If you notice something at your company

    below standards and don't fix it or make sure someone else does, you have set a new standard. Complaining about it does not count as fixing it.
  6. @yonbergman

  7. @yonbergman DEPLOYMENTS LEAD TIME FAILURE RATE TIME TO RECOVER

  8. @yonbergman 46 TIMES MORE 2,555 TIMES FASTER 7 TIMES LOWER

    2,604 TIMES FASTER DEPLOYMENTS LEAD TIME FAILURE RATE TIME TO RECOVER
  9. @yonbergman 2.5x PRODUCTIVITY PROFITABILITY MARKET SHARE

  10. @yonbergman

  11. @yonbergman OWNERSHIP

  12. @yonbergman Backend Ninjas Front-end Hipsters

  13. @yonbergman Backend Ninjas Front-end Hipsters Test Automation Rockstars OPS Wizards

  14. @yonbergman https://stripe.com/reports/developer-coefficient-2018 Developers spend 42% of their time on code

    maintenance
  15. @yonbergman –@mipsytipsy “It's about software ownership…
 Align your incentives so

    that the people who break the deploy are the people who feel the pain, and the rest will more or less fall into place”
  16. @yonbergman https://labs.spotify.com/2014/03/27/spotify-engineering-culture-part-1/

  17. @yonbergman Backend Ninjas Front-end Hipsters Test Automation Rockstars OPS Wizards

  18. @yonbergman

  19. @yonbergman

  20. @yonbergman

  21. @yonbergman

  22. @yonbergman –Jeff Bezos, Amazon “If you can’t feed a team

    with two pizzas, it’s too large.”
  23. @yonbergman

  24. @yonbergman

  25. @yonbergman Credit: @lynnandtonic

  26. @yonbergman

  27. @yonbergman

  28. @yonbergman

  29. @yonbergman

  30. @yonbergman LEVEL UP

  31. None
  32. @yonbergman https://labs.spotify.com/2014/09/16/squad-health-check-model/

  33. @yonbergman MEASURE
 LEARN
 GROW GUIDANCE
 &
 SUPPORT

  34. @yonbergman LEVEL UP - TRACKS • Design & Architecture •

    Writing Quality Code • Testing • Rolling out to production • Engineering Ops • Data orientation
  35. @yonbergman DESIGN & ARCHITECTURE • Data Indexing • Best Practices

    • Design Docs & Reviews • Design Principals
  36. @yonbergman WRITING QUALITY CODE • Code Reviews • Tech Debt

    • External Libs • Linting and Standards
  37. @yonbergman TESTING • CI • Unit Tests • Integration Tests

    • Testing in Production
  38. @yonbergman ROLLOUT TO PRODUCTION • CI/CD • Feature Flagging •

    Rollbacks • Canaries
  39. @yonbergman ENGINEERING OPS • Blameless Postmortems • Monitoring • Logging

    • Incident Management
  40. @yonbergman DATA ORIENTATION • Data Collection • Data Processing &

    ML • Dashboards • Experimentation
  41. @yonbergman

  42. @yonbergman website.com

  43. @yonbergman

  44. @yonbergman Design Code Test Deploy Operate Data “CLASSICALLY PLATFORM”

  45. @yonbergman

  46. @yonbergman

  47. @yonbergman 2.0

  48. @yonbergman level-up.we.co

  49. @yonbergman TECH RADAR

  50. @yonbergman Polyglot Programming

  51. @yonbergman POLYGLOT CHALLENGES • What tech does my group use?

    • What new piece of tech can I pick? • What do other groups use? • What did we stop using and why?
  52. @yonbergman

  53. @yonbergman

  54. @yonbergman

  55. @yonbergman

  56. @yonbergman PILOT — Technologies in a limited pilot. It has

    not been decided yet if there should be wide adoption
 ADOPT — Technologies we feel strongly that we should be adopting this, and use it where appropriate.
 HOLD — Proceed with caution, as we are looking for alternatives, but no replacement is available yet.
 RETIRE — Technologies we need to actively replace at a reasonable pace balancing with new work.
  57. @yonbergman

  58. @yonbergman Group A Group B Group C Go Pilot Adopt

    Java Adopt Javascript Adopt Adopt Adopt Ruby Hold Adopt Adop
  59. @yonbergman website.com

  60. @yonbergman

  61. @yonbergman

  62. @yonbergman

  63. @yonbergman @yonbergman @yonbergman THANK YOU THANK YOU