Skip to content
Source

Routine

Lately I've started noticing that a large share of my working time goes not so much to some tasks, achieving personal and team goals, but to attempts to digest and comprehend the chaos happening around.

And you're sitting there, analyzing the impact of all this on the code base, on build time, on processes, on developers, on users. Code review in this context is generally a trifle, a very very particular example of what I'm talking about. You're literally like the last line of defense against everything that can potentially harm the project, but somehow leaked to your level. 🔫

It's good if this is work in the format of preliminary grooming, that is, someone proactively came to consult. But most often either someone wants to push a feature through a hotfix bypassing the release cycle. Or some guys from a neighboring team quickly made an integration with your project, from which you get laughter and tears at the same time. Somewhere they bring a quarter of work in one merge request with the message that they needed it in release yesterday. And over there someone decided that their new bicycle is much cooler than what's been used in the project for the last two years. Examples are dozens, hundreds, and they're all so different that they can't be classified, much less automated.

The most exhausting thing about this is that you're literally full-time coming up with arguments why you shouldn't do it this way. You put yourself in the initiator's position, try to understand their pain, come up with a compromise solution. And all this is already when it's logically too late to deal with this. 😓

And it's unclear. Maybe I'm wasting so much effort on this in vain? What if I let something "dangerous" in my picture of the world pass, nothing terrible will happen? And if it happens is it really that big of a problem? Maybe I'd better be doing something constructive instead? On the other hand, experience tells me that thanks to such paranoids who care, projects mostly hold up and develop. I'm almost convinced that without me on inertia everything related to Android development on the project would have coasted for at least a few more years. But I'm really not sure it would have been developing at the same pace.

The conclusion here is probably that this role needs to be distributed a little bit across the whole team. So that you're not the last instance, but any developer has the full right to push our common position. And that this common position needs to be fixed somewhere quite explicitly.