Agility
Couple of months ago I decided to change jobs. I left Octopus Labs, the company I was working for the previous two and a half years, where I started when just around 20 people were part of it, and it was around 120 people when I left. The role I played in Labs was as main technical actor in one of the products (Octopus Choice) that I joined before it was released for the first time and right after I left the reached the milestone of £200m under management. Labs was quite product driven and the working process changed quite a lot since I joined. At the very beginning it was just 4 of us working of trunk, and deploying manually on our own every time needed. At the end we had CI/CD process in place, we used feature branches and well documented process on how the stories were created and evolved across the deadline.
The new organization it’s a completely different animal. We are not focus on product, but rather we have some projects we try to deliver to our best with the business being involved less than I’d like. After a couple of weeks in, I already had identified a few things that in my opinion we had to change. In my opinion the two most important things that required improvement were:
- A faster feedback loop for product development
- A mechanism to raise problems in the team
In an agile organization it’s very important to be able to iterate fast. The only way to iterate fast is by having a feedback loop that works. The best way in my opinion to have that feedback is by working together. It’s required to have somebody that understand the business underneath the product, and it’s always available to explain features, and provide information on what things work and what things don’t work. In many organizations this would be done by a product owner (often called PO). We have this person in pretty much all the projects, but the way we work with them is not fast enough for modern standards.
The feedback is important in order to understand better the different sides of the project. Yesterday we had for the very first time a very productive retrospective. In my current organization create a place for speaking out things was very important as that was something that didn’t exist before. In agile teams it’s extremely important to be able to talk about the problems and to celebrate the good stuff as being agile and going so fast otherwise it’s easy to end up in a situation where people burn. To yesterday retro only the tech team was invited, I wish we could have other people interested as well there, but we need to give a step at a time.
Although nowadays Agile has became a thing and you need to do stuff in a certain way in order to be able to call yourself Agile, the true is that not two different teams are the same, and each and every team should figure out how they want to be agile. I’ve worked