Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Do Repeat Yourself

Do Repeat Yourself

How do you communicate with the rest of the team when you're engaged in a long-running technical project like a rewrite or migration? Communication can often become stale and irrelevant to everyone else. This talk will provide tactics for keeping your team in the loop.

Sabrina Leandro

April 19, 2018
Tweet

More Decks by Sabrina Leandro

Other Decks in Technology

Transcript

  1. CUKENFEST 2018 @saleandro EXAMPLES OF TECHNICAL PROJECTS ▸ Automation improvements,

    e.g. migrating to continuous deployment ▸ Upgrades of languages or frameworks, e.g. migrating an older Rails version to the newest ▸ Infrastructure changes, e.g. move to the cloud ▸ Decommissioning features or products ▸ Rewriting application to pay off tech debt

  2. CUKENFEST 2018 @saleandro As a developer running a long-term technical

    project In order get my project prioritised and running I want to tie my project to business goals and opportunities
  3. CUKENFEST 2018 @saleandro As a developer running a long-term technical

    project In order to make sure the project gets finished I want to communicate progress to the wider company
  4. CUKENFEST 2018 @saleandro As a developer running a long-term technical

    project In order to keep my team happy and motivated I want to celebrate success as we progress
  5. CUKENFEST 2018 @saleandro BEFORE YOU START, YOU NEED: ▸ Clear

    business goal ▸ Incremental steps ▸ Milestones for each step
  6. CUKENFEST 2018 @saleandro BEFORE YOU START, YOU NEED: ▸ Clear

    business goal ▸ Incremental steps ▸ Milestones for each step ▸ A cool project name #branding ;)
  7. CUKENFEST 2018 @saleandro BEFORE THE PROJECT STARTS Application inventory ▸

    List of all applications ▸ For each application, define its level of maintenance
  8. CUKENFEST 2018 @saleandro BEFORE THE PROJECT STARTS Bones Muscle Fat

    (BMF) ▸ Framework to evaluate features using the product’s main proposition
  9. @saleandro CUKENFEST 2018 It always takes longer than you expect,

    even when you take into account Hofstadter's Law Hofstadter's Law
  10. CUKENFEST 2018 @saleandro DURING THE PROJECT ▸ Update Red and

    Green Diagram ▸ Track progress removing code
  11. CUKENFEST 2018 @saleandro DURING THE PROJECT ▸ Update Red and

    Green Diagram ▸ Track progress removing code ▸ Gamify goals and metrics
  12. CUKENFEST 2018 @saleandro SUMMARY ▸ Have a clear business goal,

    incremental steps with milestones, and a cool project name
  13. CUKENFEST 2018 @saleandro SUMMARY ▸ Have a clear business goal,

    incremental steps with milestones, and a cool project name ▸ Before: red and green diagrams + magic wand, application inventory, Bones Muscle Fat framework
  14. CUKENFEST 2018 @saleandro SUMMARY ▸ Have a clear business goal,

    incremental steps with milestones, and a cool project name ▸ Before: red and green diagrams + magic wand, application inventory, Bones Muscle Fat framework ▸ During: celebrate all wins, big and small, gamify your progress
  15. CUKENFEST 2018 @saleandro SUMMARY ▸ Have a clear business goal,

    incremental steps with milestones, and a cool project name ▸ Before: red and green diagrams + magic wand, application inventory, Bones Muscle Fat framework ▸ During: celebrate all wins, big and small, gamify your progress ▸ After: instil a culture of continuous improvement!
  16. CUKENFEST 2018 @saleandro REFERENCES Frontend and services architecture: ▸ https://devblog.songkick.com/our-object-based-rails-frontend-3e2ddc048d12

    ▸ https://devblog.songkick.com/the-path-to-soa-d986a18d4a8b Rewriting Code And Culture: https://www.youtube.com/watch?v=-VEf8j6aGMk Strangler pattern: https://www.martinfowler.com/bliki/StranglerApplication.html Gamify your progress: https://medium.com/@Songkick/gamify-your-product-team-to-power- level-9000-261e9fceaa22 Hoarders metaphor: https://brightonruby.com/2017/livable-code-sarah-mei/ Hofstadter’s Law: https://en.wikipedia.org/wiki/Hofstadter%27s_law A little bit and often: ▸ https://martinfowler.com/bliki/OpportunisticRefactoring.html ▸ http://ronjeffries.com/xprog/articles/refactoring-not-on-the-backlog/