Stress-Free Vacations

It would seem that taking a vacation is easy to do, wouldn’t it?

But many people I know don’t truly take them. They stay connected. They put an out-of-office message that says “… but I’ll be checking email!” They even call into the “important” meetings.

This is not a vacation.

Fully disconnect. Turn the laptop off and put it in a closet for the week. Do not check email, slack, or any other system you can still access from your phone. Stop thinking about work. At all.

I go on a walk every morning. I do not listen to music, I just walk and let my mind drift. During the work week, my mind focuses on work, even at 4:30 AM walking in the dark looking at the stars. On the weekends, it thinks less about work, but it still goes there. When I take a vacation, I typically stop having work pop into my thoughts on Tuesday or Wednesday. It takes me 4 full days of disconnection to even stop thinking about work. Then I get 4-5 days to truly be disconnected from it and de-stress.

If you stay connected, you never truly de-stress. You never let go of the problems you are dealing with at work. And you aren’t truly replenishing your mental health.

Even on a practical note, if you never truly disconnect, then the business is not set up to run without you. This is unhealthy on the business side, as an irreplaceable employee is a risk – if they leave, the business has to adjust to a situation they’ve never seen before, and has lost the institutional knowledge that person carried. Being irreplaceable also means you are not promote-able. I’ve seen it in almost every job I’ve worked: Someone is so key to the business that even after promotion, they keep doing their old job. If you end up in that situation, you will have an even harder time taking a true vacation, you’ll be doing two jobs, and all sides of your life will suffer including the job performance that got you the promotion in the first place.

So do yourself and your employer a favor and truly disconnect a few times a year. It will decrease your stress, reduce business risk, and set up healthier career advancement.

Delivery Deadlines


“You can pick the scope of the work, or the delivery date, not both.”

There are some cliches in the software world, and we need to embrace their truth, not dismiss them because they are cliches. When it comes to delivery deadlines, that cliche is a hard truth.

I have yet to meet a tech leadership who does not understand that the unknowns in our work mean we cannot be 100% accurate in our estimates. The entire “Agile” movement is all about this. Yet your product leaders still often want both defined scope and accurate dates. They still ask for just one more change to the work, without changing the dates. 

As individual software developers, we need to push back against this. Because we cannot change the truth of “scope vs. date”, so the only result that can be expected when we allow our leaders to try to change it is to take more work upon ourselves, which often means overtime, which degrades the quality of our work overall. 

That is also exactly how you push back against such an event. Remind your boss that something has to give – if it is not scope or time, then it is quality. And possibly morale and team job satisfaction. There are occasions where the business needs will drive you to work more and reduce quality and morale. But be sure your boss knows it, and hears about it. That choice needs to be put on them, and they need to be accountable for the results. If you do not hold steady on this point, the accountability will flow downhill to you, and you will be blamed for the negative repercussions of someone else’s decision.

That is unfair to you. It hearkens back to the discussion of keeping score when negotiating your work environment – they are degrading your experience, and will likely punish you for it to add insult to injury. 

In addition to pushing back, you can also work on improving your team’s working processes to help your boss have a better sense of when a fair expectation of product delivery will be. The Agile movement has the right idea in this arena, although the formal methodologies that have arisen over the last decade or so have lost sight of their own purpose.

But you can break your processes down and restore them to their original purpose – to be able to have reasonable predictions of what work the team will deliver, and when. I recommend looking at everything you do, and asking whether it truly helps drive the team to that purpose. Do you have daily meetings? Do they help predict work, or are they just status updates? Do you have a tracking system for the work? Does it enhance your meetings and communication, or is redundant to other conversations? Which one could be removed? Do you “storry point” your work before starting? Does it help, or have you settled into a rhythm where your PO always sets up cards of 2-3 points, so you could just as easily skip pointing and just count cards?

It is outside the scope of this writing to deconstruct and rebuild every team process that is out in the wild. My main point is to spend a week or so spending effort to see what your process is, and to attack your own process — questioning whether any specific thing you do as a team either helps complete the work, or helps predict the work. And anything that does not do one of those two things is not needed.

Once you have streamlined your processes, you should have a reasonable amount of clarity towards what you do, and a reasonable amount of clarity towards how much work the team can get done each week/month/quarter. Use this to help your leadership understand your work capacity, and be firm that the responsibility to to make adjustments and decisions if the amount you can deliver does not match their desired speed falls on them, not on the individual coders.

Poor Management


Management is a skill, and is dependent on other skill sets such as communication, leadership, critical and strategic thinking, and business. For now, I just want to focus on the fact that there are bad managers in the world, and how we can adapt to poor management to decrease our own stress levels.

  1. Focus on empathy. Your horrid boss (or maybe just mildly flawed boss) is a fellow human being, doing what they believe is right. You can de-stress from their poor decisions by realizing that is all they are – poor decisions made by someone who doesn’t yet quite know what they are doing. Becoming a manager doesn’t flip some switch that makes you all-knowing or all-powerful. It just changes your role, and makes you work with a more complex skill set than you did before. All new managers are therefore bad at their job.  It may sound counter-intuitive, but just acknowledging that they aren’t great at their job can decrease your stress. It let’s you avoid thinking of a poor manager as an adversary. You can think of them as a friend who is struggling, and who just happens to be in charge or a small part of your life. This doesn’t remove the problems bad managers cause, but it let’s you remember that you are a team working together, and help to put up with problems while you find the right time and ways to fix them.
  2. Draw boundaries. Being forgiving of a bad boss doesn’t mean you need to take anything they throw at you. If they cross a line that makes your work environment unpleasant, hostile, or toxic, speak up. If they are not solving a problem, just walk away from that problem until they do. Make it clear to your boss that you are drawing a boundary to limit your own stress and mental health, and it is their responsibility to fix their team. This again matches some tactics from other articles – to know your needs, stand up for yourself when they aren’t met, and put the responsibility to solve team problems back onto the person leading the team, and not on individuals. Hold your boss accountable for their own job responsibilities by sticking to your boundaries.
  3. Keep in mind that this is just a job. All jobs have their problems. Think carefully about whether your boss’ problems are so bad that you cannot work with them, or if they can be seen as just an annoyance. The more senior-level you are in your work, the easier it is to just do your job regardless of who you report to. 

In some ways, I am encouraging you to not respect your boss too much. Respect is earned, not assigned on an org chart. If they are a good boss who leads the team well, by all means respect and follow them. But if they are not leading the team well, then you shouldn’t follow well either. Again, you can fail to follow a bad boss without it being adversarial. 

As an example, I spent the prior year of my life working with a couple guys who may honestly be the worst leaders I’ve ever seen. I’ll skip the gory details, but they wanted to improve on a collection of products by stagnating our most successful product. They figured then they could write a new product, and all of our unhappy customers would jump ship to our new product. So they directed us devs to just stop fixing anything and let the old product die from abandonment.

We didn’t fight them over that direction – we just ignored it. We kept on fixing bugs, kept on supporting customers, and kept everything running. We didn’t have to get into conflict with them over their poor management decisions… we just did what was right for the business despite middle managers who were making mistakes.

There is always some risk in defying your leaders – you do have to be correct in your stance. If you are defiant and incorrect, you may not keep your job. But being defiant and correct, and driving the business forward despite poor leadership earns respect, and helps you get more autonomy in the future. Use defiance carefully, but do use it. The control it gives you feels empowering and decreases stress.