aleixmorgadas’s avataraleixmorgadas’s Twitter Archive—№ 908

    1. We have been practicing #NoEstimates for 8 months. Here are some learnings 👇
  1. …in reply to @aleixmorgadas
    We started in a legacy code in which the people that created that service left the company some months ago and we needed to deliver some critical features No business knowledge, no technical knowledge, a mess ahead Business: Will you be on time? Me: No clue yet, give me 2 weeks
    1. …in reply to @aleixmorgadas
      Should we go for all the work for 2 weeks, analyze the Job to be Done and come back with an estimation? We had a very tight deadline, 1month and a half to deliver
      1. …in reply to @aleixmorgadas
        Investing 2 weeks in trying to give an "accurate" estimate for business might not have been the best move. We all know that would have been a fake estimate My experience said that we are late, but yet we can mitigate the problem
        1. …in reply to @aleixmorgadas
          I had chosen to dedicate the 2 developers and myself to start delivering the first feature. It would provide me: - Sense of speed - Sense of complexity - Dedicating 2 weeks to practical learning on the source code instead of figure it out that we were already late
          1. …in reply to @aleixmorgadas
            We focused on the 2 most critical features of 10. The overcast was bad, we wouldn't make it Yet, we deployed several changes on the Ways of Working - Pair Programming. They working together to improve knowledge sharing - Limit WIP to 1 - I deal with Stakeholders expectations
            1. …in reply to @aleixmorgadas
              Then measure after 2 weeks of work the team feelings. Me: Do you feel we can deliver everything by this date? Team: No way Me: What do you think we can achieve? Team: 4-5 of 10 Me: Perfect Team confidence on delivering more stuff improved, good signal ✅
              1. …in reply to @aleixmorgadas
                Back to business. Me: We have confidence in delivering 4-5 of 10. Business: How many developers do you need? We can move people here, it's important. Me: It will make things worse, let's trust them. We are learning a lot about the code in so little time. Cohesive team
                1. …in reply to @aleixmorgadas
                  Business: We can parallelize Me: No, it took 2 weeks to onboard and them taking confidence on how to make stuff, we would lose this momentum. We cannot onboard new people here, it takes time, it will reduce our delivery from 4-5 to less or best case scenario same features.
                  1. …in reply to @aleixmorgadas
                    Good decision, after 1month and a half, we delivered 8 of 10 👏👏👏 - Feeling of accomplishment on time - Team focused on delivery regardless of the estimation - They knew they had to do tradeoffs and they did go get into the mission we had
                    1. …in reply to @aleixmorgadas
                      If we estimated how much time it took to deliver, we would find that: - We lost time on estimating something we felt we were already late - Feeling of the blame for estimating badly something we don't have the knowledge yet to estimate - Under pressure, we might be optimistic
                      1. …in reply to @aleixmorgadas
                        After surviving that crisis, we moved to what's our current product. We have been here for 4-5 months, we still don't do estimates.
                        1. …in reply to @aleixmorgadas
                          The environment is still hard,we had a legacy and the business knowledge were missing or hard to access. There were a lot of unknowns, and asking for an estimate would have been a fake estimate as well Instead of giving a date or T-Shirt size estimate, we went on experimentation
                          1. …in reply to @aleixmorgadas
                            We were focusing a lot on what we wanted to accomplish with this feature or hypothesis, and we set the quality bar - Does this needs to be perfect? Useful? A ñapa? - What do we want to achieve? Learn? Deliver a known?
                            1. …in reply to @aleixmorgadas
                              We have 3 frontends, 2 client-facing, and 1 internal. We know where we want the quality. Yet, another way to help the team know where they need to do tradeoff is to share the long-term vision on how their work impacts the future.
                              1. …in reply to @aleixmorgadas
                                This helps them to know when we need to only apply and fix and move on, and where it's good to invest time on refactoring and improving. That's crucial to help them discard work + you, as a manager, need to reinforce that some work needs to be dropped.
                                1. …in reply to @aleixmorgadas
                                  I, as a Manager, I'm measuring the 4KM and in specific Lead Time. One of the goals is to reduce them continuously and help the team become faster and faster. 👇👇👇👇👇 Instead of asking for estimates, ask them what's preventing them to deliver value continuously?
                                  1. …in reply to @aleixmorgadas
                                    Things that are improving our delivery pipeline: - Pair Programming - Trunk-Based Development - Removed the CODEOWNERS - Introducing mechanisms to make failures cheap and recover fast
                                    1. …in reply to @aleixmorgadas
                                      Instead of dedicating an hour to estimate work, dedicate that hour to how to improve the team's life on how they are delivering work