Developer Experience: The Art of Building Spaceships

Faf4a633b0d1e32a07a071039686c868?s=47 Egor Tolstoy
September 19, 2018

Developer Experience: The Art of Building Spaceships

Problem validation, roadmaps, usage metrics and feedback, user experience are not first-class citizens in internal platforms and tools development. I'll talk about developer experience, an approach that helps our engineers create useful, thriving and developer-oriented technical products.

Faf4a633b0d1e32a07a071039686c868?s=128

Egor Tolstoy

September 19, 2018
Tweet

Transcript

  1. The Art of Building Spaceships Developer Experience

  2. Ivan main hero engineer newcomer

  3. main hero engineer newcomer ...and a cat Ivan

  4. None
  5. None
  6. Hi! Where should I start? Check our repo, it worths

    million words Me Boris
  7. None
  8. None
  9. Ivan Olga

  10. We don't use your product Ivan Olga

  11. We don't use your product It doesn't solve any our

    problems Ivan Olga
  12. But collaborative editing... Ivan Olga

  13. But collaborative editing... It's useless! Ivan Olga

  14. Developers: - don't know what they need - can't write

    quality code - are shortsighted
  15. None
  16. BAD NEWS

  17. None
  18. Ivan Natasha

  19. What's your product goal? Ivan Natasha

  20. What's your product goal? ... Ivan Natasha

  21. What's your product goal? To make a universal and functional

    design system Ivan Natasha
  22. It's not a goal. Call me when you figure it.

    Ivan Natasha
  23. Try to recall product practices that we used. Ivan Natasha

    It's not a goal. Call me when you figure it.
  24. None
  25. Lean Canvas

  26. Top problems Top features Key metrics Mission Why you? Target

    audience Alternatives Risks Adoption
  27. Top problems Top features

  28. Top problems What customer pains do you plan to solve?

    Many UI bugs Designer- Developer interaction
  29. Top problems Top features

  30. y you? Target audience

  31. Who is going to benefit from your product? Target audience

    Mobile devs Designers Managers QA engineers
  32. y you? Target audience

  33. ures Mission Why

  34. Mission What your product is made for? Closed ecosystem for

    full cycle UI development
  35. ures Mission Why

  36. ms Top features Missi

  37. What killer features are in the core of your product?

    Top features Component's code is a source of truth Automated interaction between designer and developer Fast snapshot testing
  38. ms Top features Missi

  39. Adoption

  40. Adoption How will you grow the audience of the product?

    For everyone at once Gradually by features Gradually by user groups
  41. Adoption

  42. Key metrics

  43. What metrics will show you the goal progress? Key metrics

    - Number of UI bugs - Catalog daily sessions
  44. Key metrics

  45. Alternatives

  46. Alternatives How your audience currently solve their problems? Manual layout

    Sketch& Zeplin Manual testing
  47. Alternatives

  48. Risks

  49. Risks What can make your product fail and how to

    control it? Risk: Devs won't have time for refactoring Counter metric: % of components coverage
  50. Risks

  51. ion Why you? Targe audie

  52. Why you? What key strenghts will help you? Strong domain

    knowledge Solid technical platform
  53. ion Why you? Targe audie

  54. Top problems Top features Key metrics Mission Why you? Target

    audience Alternatives Risks Adoption
  55. NPS

  56. Net Promoter Score Instrument to measure customers satisfaction.

  57. Promoters

  58. Passives

  59. Detractors

  60. NPS = %promoters –%detractors NPS = [-100; 100]

  61. None
  62. Do I really understand our product goals?

  63. None
  64. NPS -80

  65. None
  66. None
  67. None
  68. detractors

  69. Interview Define customer pains and understand how he solves them.

  70. Rule #1:
 Prefer face-to-face communication to texting. Natasha

  71. Rule #2:
 Always ask open questions. Linn

  72. Rule #3:
 Don't follow a strict set of questions. Linn

  73. detractors

  74. Development speed is incredibly important

  75. Designers aren't involved in UI development using design system

  76. None
  77. Ivan Natasha

  78. What is the goal of your product? Ivan Natasha

  79. To make UI development faster... Ivan Natasha

  80. To make UI development faster... ...by integrating components in whole

    Cat Avito Ivan Natasha
  81. And do you move towards this goal? Ivan Natasha

  82. And do you move towards this goal? No, and we

    don't know how. Ivan Natasha
  83. Let me tell you about pivot and MVP. Ivan Natasha

  84. Pivot A change of product course to test completely new

    assumptions Closed ecosystem for full cycle UI development Pre-built components for everyone
  85. MVP The simplest version of your product capable of testing

    your assumptions
  86. Step #1 Choose early adopters Step #2 Transfer components to

    Sketch Step #3 Develop set of simple components
  87. Early adopters Customers, who receive new features before others. -

    Loyal - Provide feedback - Test new features - Make feature requests
  88. Step #1 Choose early adopters Step #2 Transfer components to

    Sketch Step #3 Develop set of simple components
  89. Step #1 Choose early adopters Step #2 Transfer components to

    Sketch Step #3 Develop set of simple components
  90. None
  91. Well, you can be better... Olga ...but I use design

    system from now on.
  92. Ivan Nikolay

  93. Here is our new lean canvas and metrics. Ivan Nikolay

  94. What metrics will show you the goal progress? Key metrics

    1. Development speed for typical tasks 2. % of screens using components 3. % of new features using components
  95. Solid work! Looks like you know what to do. Keep

    going and it'll help us to save the team! Ivan Nikolay
  96. None
  97. We should make progress faster!

  98. Ivan Natasha

  99. Recall our marketing plans! Ivan Natasha

  100. Recall our marketing plans! But I can't buy traffic and

    use billboards! Ivan Natasha
  101. Think about instruments you already have. Ivan Natasha

  102. Think about instruments you already have. The scale is smaller,

    the approach is same. Ivan Natasha
  103. Plan how customers will learn about your product. Marketing plan

    Step #1 Segment your target audience Step #2 Choose acquisition channel for each segment Step #3 Schedule all activities
  104. A developer He wants to browse all available components A

    developer He wants to create or change a component A designer He is working on a new feature layout
  105. None
  106. acquisition 1st segment 2nd&3rd segments

  107. acquisition 1st segment 2nd&3rd segments

  108. acquisition 1st segment 2nd&3rd segments

  109. acquisition 1st segment 2nd&3rd segments

  110. Design - Notify about UI updates - Teach how to

    use components in Sketch - Gather feedback Devs - Notify about new features - Teach how to create components - Gather requests on new components - Slack #design - Regular designer sync-up - Workshops - Slack #ios-devs - Regular design system meetup - Changelogs (git) - Jira backlog
  111. None
  112. None
  113. Ivan Nikolay

  114. bla-bla-bla, products, bla- bla-bla... Developer experience, bla-bla-bla... Ivan Nikolay

  115. Is my probation period over? Ivan Nikolay

  116. Bad news – you should quit current team... Ivan Nikolay

  117. Bad news – you should quit current team... But I

    need a chief DX specialist. What do u think? Ivan Nikolay
  118. Lean canvas NPS DX Interviews MVP Marketing plan ... Dogfooding

    DX testing Documentation Backlogs DX patterns ...
  119. None
  120. Treat developers like real users. Treat developer tools like real

    products. Egor Tolstoy @igrekde