When leading a development team, I have two overriding concerns:
- Maximizing the value produced by the team's effort
- Minimizing the team's effort that goes towards waste
Most of the time, I feel well-equipped to steer the first concern. There are a myriad of practices and frameworks I can apply, and I love collaborating with my team members, customers, users, and so forth to this end.
Minimizing waste, however, is a challenging beast, especially with all the things that threaten a developer's ability to focus on the goal(s) at-hand.
Over the past years, much ink has been spilled on the topic of the 'developer flow state', and the damage distractions cause on a developer's ability to work effecively. As an engineering manager, it is hard not to be conscious of this; I spend much time and thought on ensuring my team members are able to find and stay in flow, and feel great shame when I find us falling short.
This led me to think: when am I in flow? What does it mean for me, as a manager and leader, to be able to achieve a flow state, and what am I doing when I am in that state? Should I desire & fight for this for myself, the way I do for my team members?
It's easy to brainstorm the times I'm decidedly not in flow:
- Back-to-back-to-back meetings: here I often find myself in fight mode (as opposed to flight), which might feel like flow when I'm really rolling, but is likely something else...
- Open office distractions: I like to put myself in a place to be available, however this means when I am not in meetings, I am often distracted by random requests for help - I'll gleefully drop anything for an opportunity to discuss at a whiteboard! This can be a good thing when it can steer team effort back in the right place, but even in the best cases this comes at the cost of my time and opportunity to focus.
- Digital distractions: the constant flow of new emails, Teams / Slack pings, etc.
- ...
This year, I have curated new tools for handling the constant flow of digital distractions & keeping my task-pile ordered, even as I chain meetings and jump at requests for help. Emacs & org-mode has been a godsend for ordering my chaotic work life and keeping me focused on my priorities, and has replaced Notion as my daily organizer at work.
I also have an internal toolkit I go to often to keep myself effective at work, and I've learned to detach and go on offline walks & coffee breaks when I do need to disappear for a while.
However, going back to flow, I feel my tools & practices can at best be used to prioritise my efforts, but not to help me reach or maintain flow, or give me useful things to do in a flow state.
As a parting note for this post, and a teaser to my working ideas on this topic, I reckon flow state is most valuable for creative activities - e.g. developing software - which begs the question, when am I as a manager creative? Could the answer be as soul-crushing as "when I'm plugging away in Excel and writing contracts"? Or are there more valuable things I can achieve in a flow state?