2021-02-09 BD-19, BD-20 Retrospective

Date

Feb 9, 2021

Team

edX, Racoon Gang

Participants

@Diana Huang @Michael Terry (Deactivated) @Stuart Young (Deactivated) @Nikolay Borovenskiy @Sergey Golub @Igor Degtiarov @Feanil Patel

Background

A retrospective on how the Elasticsearch upgrade projects went, with a focus on how to make similar Blended Development projects work better in the future.

Retrospective

Start doing

Stop doing

Keep doing

Start doing

Stop doing

Keep doing

  • edX more involved in debugging issues found during testing

  • better testing setups

    • share data used for testing earlier - we eventually got there with Disco, but could have avoided a lot of back and forth earlier

  • better testing coverage

    • bugs found that were not covered by any tests

  • spend more time up front identifying acceptance criteria from stakeholders - some of those appeared late in the process for Disco

  • In hindsight, as the edX-side reviewer for Disco, I wish I had spent more time really understanding the new code base. Going forward, we don’t have much internal expertise with es7 or this specific code. That would take up a lot more of my time, but still.

  • A more clear hand-off at which point new changes should be made by edX to get edx.org working.

  • Figure out how to get external engineers better access to a working testing environment

  • daily standups on the status of things in slack channel

  • throwing bugs over the wall +1

  • Under-estimating how long things take

  • Context switching so heavily

    • context is lost when things get blocked and people get pulled off on other things

  • weekly sync meetings

  • Having time when all engineers are online.

  • work on smaller services first, then tackle the bigger, complex ones later

  • focus on getting the smaller victories to keep momentum

  • back-and-forth discussion including data and queries to help narrow into debugging problems

  • +1 write tests to cover bugs that we found so that they can be covered for future development

  • keep maintaining tests that we do have

  • slack channel and open lines of communication for discussing issues, bugs

  • not putting a lot of pressure on Raccoon Gang

    • focus on being supportive and helpful

  • keep Raccoon Gang involved in discussions of ES7 work

Testing

  • If we need to send staging data and production data, that’s a sign that edX needs to be more heavily involved in development/debugging work - hand-off point perhaps

  • Raccoon Gang does use devstack

  • Tutor is being considered as an alternative

  • weakness of integration tests to capture issues across services

  • option: use more real-time discussions/make sure we’re online at the same time

Action items