15 mins

I have heard many managers and ICs alike say that when they are hiring and promoting, they’re looking for someone who has passion for programming. They think that because programming is tough, only the passionate will stick it out and do their best work.

Unfortunately, focusing on passion can create and permeate some toxic ideals: That your career must be your life; that you can’t be a programmer for a paycheck and do good work; and that the career itself is only meant for a few, select people. At worst, this can be used as a form of gatekeeping, at a time when programmers are needed and salaries are high.

People don’t necessarily mean harm, but they are curious: How can someone who hasn’t designed their whole identity around programming keep working when challenged? The answer is that they are working in a flow state – the state of consciousness where individuals do their best work. Passion is not a requirement for flow state: Engineers can find flow in their work no matter their motivation, passion or otherwise.

I’m going to unpack this today, outlining the characteristics and benefits of flow state, explaining why it is the manager’s responsibility to create an environment where flow is possible, and sharing some advice for how to do this, so that your people can do their best work, no matter their passion.


What is flow state?

Coined by Mihály Csíkszentmihályi in 1975 in his book Flow, flow state is the phenomenon in which a person is fully immersed in an activity that leads to focus, energized involvement, and enjoyment. A person in flow state is no longer thinking of multiple things, or even their sense of self, but is singularly focused on a task or challenge. Many people report it is the happiest feeling in their lives.

There are some characteristics of flow state:

  • You can concentrate for an extended period of time
  • The task has a clear goal
  • You receive immediate feedback on your progress
  • You feel a sense of control
  • You’re absorbed, and it feels effortless. You’re singularly focused instead of focused on many things and distracted
  • Your sense of time is altered; time passes quickly or it is slowed in a good way
  • You don’t feel self-conscious, and your sense of self emerges stronger
  • You desire to repeat the task

Perhaps surprisingly, you can reach flow state with any activity. It needn’t be something you were destined or designed for at a young age, or something linked to your identity. Indeed, Csíkszentmihályi encourages people to try to find flow in as many parts of their life as possible to strive to become a complex individual. In his book Flow, after discussing urban factory laborers who reach flow state both at work and at home, Csíkszentmihályi asserts: ‘In theory, any job can be changed so as to make it more enjoyable by following the prescriptions of the flow model.’

There is no fixed state or prerequisite when it comes to mastery. Your brain can literally grow and adapt with challenges. In his book The Happiness Advantage, Shawn Achor refers to a study that showed that London cab drivers had larger hippocampi (the part of the brain that’s devoted to spatial memory) due to the complexity of London’s streets:

‘Who cares? While a larger hippocampus may not seem exciting to you, it forced scientists to confront the ‘myth’ of neuroplasticity, that brain change is possible depending on how you live your life… The answer is obvious and inescapable. Brain change, once thought impossible, is now a well-known fact, one that is supported by some of the most rigorous and cutting-edge research in neuroscience’.

These London cab drivers didn’t have a passion for driving, or particular passion for roads and spatial awareness. Their capabilities grew in response to the task.

The benefits of flow state at work

It’s clear that being in flow state is beneficial for our mental state, especially at work. First, you may notice that this is the time any individual can do their best work. They experience a loss of a sense of self; they aren't doing something for external validation, they’re doing it for the simple pleasure of being challenged and fully engaged.

Another wonderful benefit of flow state is that frustration tolerance goes up. This goes back to the concern I hear around the passion argument: How do folks stick with it when it gets tough? In flow state, obstacles that would have otherwise caused anxiety and burden are perceived differently, and people have more resolve to push through a task.

How to help your engineers reach flow state

Does that mean a manager owes their employees flow state? Sort of.

As managers, we can’t actually create flow state, that’s up to the individual. But we should, however, create an environment where flow state can exist. There are a few conditions that need to be met for your engineers to get into flow state in their work:

1. Flow state can exist when there is clarity of purpose. It should be clear to your staff why they’re doing the work they’re doing. Even if the task itself feels arduous, they should understand the greater value, and why the organization is doing it.

2. Flow state can happen when the work is challenging, but not impossible. As managers, we should be making sure the work is the correct level for the person’s skill set at that time. We should be trying our best to find something that challenges the individual, set up support for anything that pushes their boundaries, and create automation where possible for tedious tasks. All work should have clear expectations and outcomes.

3. Flow State is associated with trust. A person must feel a sense of control over the work. They should know what they are allowed to change and affect on their own and be given the trust to do so. In The Happiness Advantage, Shawn Achor explains why this is important: ‘The most successful people in work and life are those who have what psychologists call “an internal locus of control”, the belief that their actions have a direct effect on their outcomes. People with an external locus, on the other hand, are more likely to see daily events as dictated by external force.’

The person also has to have the confidence to fully explore a concept. This means managers should set guardrails for failures so that people can make mistakes. Accidents that degrade a system should not be attributed to an individual; this can introduce the kind of self-doubt that makes it very hard to reach flow state.

In their book Accelerate, Nicole Forsgren, Jez Humble, and Gene Kim observe that placing blame on a person rather than system is, unsurprisingly, a large blocker to productivity, and trust is lost in the process: ‘Accident investigations that stop at ‘human error’ are not just bad but dangerous. Human error should, instead, be the start of the investigation. our goal should be to discover how we could improve information flow so that people have better or more timely information, or to find better tools.’

A manager’s job is to make it clear where individuals can make changes, and listen intently when mistakes and outages happen so that the system is evaluated, instead of placing blame on the individual. That way, people can know where to innovate and also iterate for stability.

4. A person in flow state should get immediate feedback on their process. Many times folks will get this feedback from programming itself: Did the program run, did tests pass, what happened at breakpoints, etc.? But a manager should also be giving feedback regularly so people know if they are on track with their work or if something needs to be adjusted. In the book Accelerate, a common theme in analyzing productive teams was small, iterable work with fast feedback cycles.

5. A person will struggle to reach flow state if they are not compensated fairly. Otherwise, they will be consumed with the inequity and it will be challenging for them to focus on the task. In his book Drive, Daniel Pink finds that in order to reach intrinsic motivation at all, pay must be fair: ‘Getting the internal and external equity right isn’t itself a motivator. But it is a way to avoid putting the issue of money back on the table and making it a de-motivator.”

A manager should strive to ensure their staff are compensated fairly for their work. This can, at times, mean working with the company’s People team, or with other stakeholders to understand the need for raises or promotions. Daniel Pink cautions that if you use performance metrics, you should make them wide-ranging, relevant, and hard to game. As a manager, you should be clear with expectations for what it will take to get a team member to the next level. (I open-sourced my career ladders and personal system for level review if you’d like an example for where to start.)

6. A manager has to believe in their staff. There are several studies that show people can perform better or worse depending on how those around them perceive them. In 1963, a study looked at similarly performing rats running mazes. Before the rats ran the maze, human handlers were told that particular rats were slow, even though they weren’t. The rat in question then underperformed. And the rats that humans were told were stellar, ran faster. It turns out that the small ways that the humans were handling these rats changed based on these preconceived notions of them. And it actually affected the rats' confidence in themselves!

This phenomenon has a name: The Pygmalion effect. This is when our belief in each other’s potential brings that potential to life. In order to reach flow state, a person needs to have proper confidence in themselves, brought out by a manager's perception.


Why would a manager work so hard at providing this for staff? Because it’s better for the whole team overall. A person in a flow state is able to see multiple perspectives clearly because they are not focused on the final concept being their own, but rather which works best for the context. The less people are wrapped up in their own sense of selves, the better the team dynamic, and the more people can trust one another and get down to work.

You’ll have a more effective team across a few different axes: Trust, collaboration, and productivity in the work itself. And since feelings of flow state are highly correlated to feelings of happiness, you create a virtuous cycle with happy employees and a better environment for everyone, including yourself.

Software development can be a lucrative career, and there is nothing wrong with wanting to work in the field for a reason other than passion. A person can be good at programming regardless of what originally made them interested in it. So, instead of judging folks for their motivation, we need to step back and ask ourselves what we are doing to create the kind of environment where they can thrive, and provide the pillars necessary for them to do their best work. 


Shawn Achor, The Happiness Advantage: The Seven Principles of Positive Psychology That Fuel Success and Performance at Work (Currency, 2010)

Mihály Csíkszentmihályi, Flow: The Psychology of Optimal Experience (Harper Perennial Modern Classics, 2008)

Nicole Forsgren, Jez Humble, and Gene Kim, Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations (IT Revolution Press, 2018)

Daniel Pink, Drive: The Surprising Truth About What Motivates Us (Riverhead Books, 2011)

Sarah Drasner advert