Say you have something unsexy but super critical, and the fix is a long and tedious process, like rewriting the transit system, and it's going to tie someone up for the next two or three months, maybe longer. Is this something you put on a senior because it's super critical, and then you end up tying that person up for an entire quarter of the year? Or is it something that you stick a junior on because you need that senior doing three other things instead? Is this not the ultimate developer Sophie's Choice, and what we've struggled with for a decade? How are we fixing this now?
TL;DRPreviously a junior with support would have taken such a rewrite, but this year the transformational senior people will be taken from feature work to fix foundations like transit.
Well, so previously, the answer would have been junior with some support, right? That's what we would have done before. It would have been, no, we can't compromise the feature. This work is important. It's going to be transformational for the PU. This fix, or this rewrite, we're going to give a support network around someone that's in the team that's not necessarily one of our superstars. I want a team where everybody can grow into a superstar, but sometimes you have to be in the middle. The previous setup would have been something like this, where we would give a support network, but the person in charge would not necessarily have been the leads and the people that really push the needle. Those would be on transformational features for the PU. The answer this year will be no. We're using our transformational players to come and solve these problems for us, because they have to be solved. We keep talking about transit. Transit has touched a million people at CIG and we've tried to keep it running for a while. Now it's time to put a real effort behind it, which is to basically take resources from the transformational elements and go and fix the foundation.