The daily life of an engineer is filled with more requests and issues than can be resolved in a lifetime, let alone a single day or sprint. The requests come from all sides—co-workers needing assistance, partners worrying about dependencies, managers adapting and changing plans, and customers providing feedback directly through comments and indirectly through telemetry. Production issues compound the stress, since they take priority over all other requests and leave you further behind. How do you stay composed and calm under all this pressure?
I reveal how to deal with the daily onslaught of requests in Don’t panic. I deduce how to reduce production issues in Bogeyman buddy–DevOps. I explain how to restrain the demands on your endless existing backlog in You can’t have it all. Yet pressure persists and people panic. How do you retake control?
The key to staying calm and composed through the chaos is accepting one unequivocal truth: There is always more to do than time and resources allow. That’s true at work, at home, at school, and every other time and place. My parents claim it’s true in retirement. Since you can’t do everything, you’ve got to set limits and make choices. Managing life’s demands is about balancing priorities and risks in order to make informed choices, then accepting those choices and moving forward, since time doesn’t travel in reverse. Panic, stress, and regret needn’t apply, but perhaps more specifics would help.
I’ve got Hand
It’s easy to let situations control you, rather than you remaining in charge. Perhaps you wish you were the boss so you would have more control, but life is just as chaotic and uncontrollable for her. Fundamentally, none of us can control what happens. However, all of us control how we respond—that’s how you can take charge and lessen panic, stress, and regret.
When life gets too hectic and too much is put upon you, stop. Just stop. Take a step back from the chaos and reflect on what’s happening. This may mean temporarily redirecting web traffic or using some other workaround, but give yourself a moment. No one will die, unless bears are involved.
Consider your situation, what you’re trying to accomplish, the nature of the problem you’re facing, and the task that’s most important and urgent to complete. You may need to make a list of actions and sort them. You may need to look at alternatives with different risks. Whatever the situation, take a moment to consider what you should do, and then do it.
Making a considered choice and then acting upon it is taking back control. The panic and stress subside, and there’s little to regret, if you made the best decision you could at the time. You can’t do more than your best, but you can do far worse if you’re stressed, defensive, and reactive.
Often the pressure we feel is self-inflicted. We promise something to someone, circumstances change, and now we no longer have the time and resources to meet our obligation. Since life is uncertain, and folks refuse to give you more time or resources, what can you possibly do about this? Stop making promises you can’t keep.
When you can’t do something, say you can’t do it. You’re not a superhero—stop pretending, set limits, make choices, and be truthful with yourself. When you’d like to do something, say you’d like to do it. It’s a like, not an imperative. When a request is open-ended, leave it open-ended. Provide regular status updates, and do your best to finish within a reasonable period. People take promises seriously, so don’t make promises unless nothing less will do. This is true at home and at work.
When you need to make a promise, commit to a scope and timeframe that, short of extraordinary circumstances, you can deliver on-time and as expected. Then follow through with as much as (or more than) you promised. Folks often call this “under commit and over deliver.” Clueless critics claim this approach is weak and lazy. They confuse the future with the present. At present, you are promising less than the clueless, but in the future, you are delivering far more than them while also keeping your commitments. (Details in You can’t have it all.)
Hey, we’re flexible
When you manage your promises and your stress level, you can think clearly, make good choices, and remain flexible. Life is uncertain. Mistakes and misfortune happen. Flexibility allows you the time and resources you need to deal with production issues, fix root problems, help your peers, address plan and priority changes, and still deliver on your promises.
Many engineers use planning and work-tracking systems, like Azure DevOps (formally VSTS). Those systems can hurt by encouraging you to estimate and commit all your work, which reduces your flexibility, increases time and resource pressure (especially if you underestimate), and leads to broken promises and bad choices. However, those same systems can help by differentiating between committed and uncommitted work, tracking work that’s started but has no firm end date (no estimate necessary), and coordinating distributed teams with easily manipulated and synchronized task boards and backlogs.
Remember, you control how you respond and what you promise. Choose to stop, step back, and think before you act. Under commit and over deliver, trading artificially looking good now for being dependable, productive, and flexible tomorrow. Living life thoughtfully, adaptively, and sustainably will reduce your anxiety and stress while providing you years of success and accomplishments you and your customers, peers, friends, and family will admire and appreciate.