Flow and Productivity in Software Teams
" Flow with whatever may happen, and let your mind be free: Stay centered by accepting whatever you are doing. This is the ultimate." Zhuangzi
Hopefully you have all heard the term "flow". I am sure virtually everyone has experienced it. For those who don't know the term, I'll explain briefly:
Flow is a psychological state in which you are so focussed on what you are doing that you forget everything else. If you have any hobbies that you can spend hours on and forget the time, you've been in a state of flow. "In the zone", "on a roll", whatever your favorite phrase to describe it, they all refer to the same phenomenon.
If you are lucky enough to have a job which you do quite well and enjoy, you probably experience flow during the work. On really good days as a software designer, the code just writes itself...it is just a matter of typing. This is flow.
If you still think this has something to do with workflow at this point, please read the Wikipedia article.
Why should software professionals (or anyone) care about this? Guess what: I guarantee that when you are in a state of flow, the results of whatever activity you are doing are better than when you are not. Furthermore, your work will be completed quicker. You'll have a deeper understanding of all the factors involved in each important decision you made during your work.
This is not some great leap of faith or incredible claim. Think about it. I've essentially just said that when you're really focussed on your work, you do a better job.
I know from personal experience that this is true. The best software I ever wrote was done while I as in this state. The best UX decisions. The best designs. The best test plans. The best documentation. Now that I'm retired, I produce my best photos and do my best cooking in this state (and hopefully my best writing). It also makes any other activity I can think of more rewarding.
So if flow is such an important part of being productive and ensuring high quality, why is it not a priority in organizations to promote it? I don't know. I suspect it is such a subtle, subjective thing that modern business culture just can't understand. "If you can't measure it, it doesn't matter". A mental block if you will.
I'm not even going to try to convince you quantitatively. Truthfully, if you don't relate to my premise from personal experience, you would probably have stopped reading at the Taoist quote at the start of the article.
Therefore, I will assume you do believe that flow is a valuable part of the work experience, and can improve team productivity and product quality. And furthermore, that you would like to know how to take advantage of this phenomenon to improve your own productivity and that of your team.
With that assumption, here are some things you can do to enable your team to experience flow:
Ensure unstructured time
Everyone knows meetings can be a giant productivity sink. One of the many reasons is that the meeting time pinned in the middle of your calendar might interrupt a valuable flow state. Just make sure that you have large blocks of time when you can work on whatever aspect of your job requires focus right now.
Put a reserved block in your calendar if you need to. I have scheduled a 4 hour "do work" appointment for myself on more than one occasion.
Eliminate artificial urgency
If every new work item that comes in pops to the top of your priority list, you have a big organizational problem. One of the consequences of this problem is that your team will find it really difficult to achieve flow.
The Product Owner role is the Agile solution to this problem. They stop the noise. Executives must never reach past he PO to individual team members. A potential company-ending crisis would be an exception.
If you don't have a decent PO, get one. If you don't know what a PO is, read up. Hopefully you have someone in that role, and they are empowered, regardless of what you call them.
Keep the workflow out of my flow!
I once had an executive in charge of my team who tried to force us to track precisely how much time we spent on every single task in our day. Fortunately, the forces of darkness were defeated by my local management team in that case (thanks John and MJ). Otherwise, it would have forced down job satisfaction and productivity for the entire team. Spending more time in the tracking tool than on the work it is trying to track is not conducive to flow!
To ensure you get the information management needs without excessively impacting the team's productivity, make sure you use a modern issue tracking tool, and make the tool the authoritative source. One of my colleagues used to say "Jira is king". Whatever the tool, this mindset removes the need to spend a lot of time thinking about workflow.
As an added bonus to this approach, the metrics derived will not be "gamed". This is because they're gamed when people need to apply conscious effort to feed the metrics. Instead, the metrics are implicitly generated as a side-effect of the work that people would do anyway.
Provide or seek privacy
As social animals, we are very attentive to other people. This is a good thing. It makes us team players. However, it also means that if there is a person in sight or speaking in earshot, they will probably command a fair amount of your attention, distracting you from the task at hand.
If what you are trying to accomplish requires focus, then seek privacy. If you work in a job where there is no access to private space in which you can enter a flow state, get a new job!
While you are looking for your new job, get some headphones and use instrumental music of your choice to drown out the voices of those around you. Also try to position yourself so you're not visually distracted by other people.
As a team leader, ensure your team has access to privacy (after all, they'll all leave your team otherwise ;-). One former manager of mine insisted that every software person should have an office with a door. Of course, that will never happen in most workplaces.
My last office had a great setup more in keeping with current space planning. In addition to the typical crowded open office, there were many private rooms of various sizes, and a bank of carrels that were always dead quiet. I never found myself unable to find privacy when required. There were also "team rooms" where loud collaborative work could take place without bringing the noise into the common area.
Optimising your individual access to flow
There are also changes you can make in your personal life to improve your access to flow:
Look after yourself
Sometimes we push ourselves too hard. An exhausted mind cannot enter flow. You need regular sleep and healthy food.
Reduce stress
Stress is great for making you focus for a brief while (to run away from a predator), but it is better at driving a sprint than a marathon. This is true both mentally and physically. If you're in a constant state of stress, you will not be able to focus for long.
Try to have a good laugh with your teammates every day. Keeping things light reduces stress and helps to create the right environment for flow.
Meditate
Many of my colleagues know I am a long-time meditator. This practice has allowed me to access the flow state more readily, and to be aware of the state when it exists. The list of bullets on any meditation pamphlet will include:
- be more present
- improve your focus
For me and every other meditator I've ever discussed it with, these benefits are real. If you acquire these two skills (by meditation or any other means) you can reach flow. That is, as long as there isn't something preventing it.
Turn off notifications
Enough said. Well, maybe not quite enough. If something really urgent might come up (childbirth, for example), you can allow your text messages to make a noise.
I worked with a remarkably intelligent man who had his phone audibly notify him with a loud "bing" every time he received an email. I can't imagine why. Nobody's inbox has a high enough percentage of important content to make this worth while.
Social media notifications should probably be banned from all workplaces. By all means look through Twitter or Facebook when you want to waste some time, but surely it shouldn't interrupt you.
Get a life!
Exercise your mind and your body in ways unrelated to work. A well balanced person is more likely to have access to flow at work.
Enormous self discipline may allow you to continue to work even when you've been working way to much. However, I guarantee you will have a harder time reaching flow in your work if it is the only activity that you do.
By consciously choosing to improve your access to flow, you should find your work and your life more rewarding and productive. There are few things you can do that are so unequivocally beneficial.
Retired software engineer
6 年This is really interesting stuff. Who knew you would have a second career writing ? :-) Just one question: what is a "a bank of carols that were always dead quiet" ?? Did autocorrect strike again?