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

Tales from the Agile battlefield

Tales from the Agile battlefield

This talk covers some of the things we've implemented at onefinestay to optimise the sprints run within the engineering team, as well as a few lessons learnt in the process. It focuses on feature lifecycle from scoping, through development, to release and looks at some of the tools we use to keep the process running smoothly.


Fergus Doyle

December 05, 2013

More Decks by Fergus Doyle

Other Decks in Technology


  1. Tales from the Agile battlefield Running productive sprints

  2. What this talk is and what it's not Highlights of

    some lessons learnt in moving to agile A description of our current working process An overview of some of the things we're working towards It is NOT a scrum master training session...
  3. onefinestay is a hotel operated out of other people's homes.

    1500+ homes across London, New York, Paris and LA 100s of daily activities 400+ concurrent guests over Christmas
  4. “The Airbnb For The 1%”

  5. A little bit about onefinestay Engineering Development teams of 2-10

    developers ~20 developers running parallel sprints Building for internal clients as much as customers
  6. Sprints 2 week parallel sprints for dev teams Monday-Friday Daily

    standups Sprint checkins / Team standups Sprint planning Thursday before the sprint starts Hack / Test days the first Monday of the sprint Retrospectives the last Friday of the sprint
  7. Tickets Overview Scoping Development life cycle Definition of done

  8. Scoping Meetings with the relevant stakeholders Developers write tickets Organised

    in Epics + the Backlog
  9. Development life cycle Branch ALL the things GitHub pull request

    ALL the things (?!) Code review ALL the things Build ALL the things
  10. The Battlefield Know the enemy (individual sprint plans) Team formation

    (blockers / dependencies) Decisive blows (closing out tickets)
  11. Definition of done Code review Jenkins User Acceptance Testing (UAT)

    - where necessary
  12. “... but, it's not done unless it's released!?”

  13. Releasing Separate to development sprint cycle More Jenkins Release branches

    individually or as bundles Gonzo / Fabric
  14. What did we learn Only add process where necessary Make

    sure "value" is based on the team scale Facilitate people doing what they're good at Iterate process changes sprint to sprint Make sure the tools work
  15. Moving Forward Overview Scoping Releasing

  16. Reviewing ticket scope Better peer review ahead of scheduling Reviewing

    with product to confirm requirements match
  17. Releasing Continuous Integration / Delivery Cinch UAT environments

  18. The tools we use atlassian.com/software/jira atlassian.com/software/hipchat / jenkins-ci.org travis-ci.org ...

    on GitHub onefinestay/gonzo onefinestay/cinch github/hubot
  19. / Fergus Doyle @junkafarian Where to find me twitter.com/junkafarian github.com/junkafarian

    speakerdeck.com/junkafarian ... or grabbing a drink after this talk