Learn from Expert Developers - devpath.fm (9 Part Series)
Generally, my podcast guests share a lot about the things they've been successful at, but they also share a lot about the things they've struggled with.
During our conversation, Cassidy opened up about some of the issues she has had with imposter syndrome and work-related anxiety.
Some of those things had to with specific workplaces or experiences, but we also talked about how difficult technical problems can trigger those feelings of discordance and anxiety.
Many engineers are familiar with the sensation; the inability to solve a bug, or the feeling of hopelessness when faced with an unfamiliar feature.
I asked Cassidy for advice on dealing with this category of problem. These are the tactics she uses:
Cassidy mentioned her anxiety warning signs, the symptoms that indicate to her that it's time to separate herself from the problem.
It's important to acknowledge these warning signs in yourself. While everyone won't start with the same introspective qualities that Cassidy has, being mindful of your relationship with anxiety is the first step in staving it off.
When Cassidy notices that she is slipping towards imposter syndrome-like feelings over a technical problem, she takes a nap, plays video games, or music.
We talked about some advice that I was given by a co-worker: Building hobbies that don't define you.
In software development, we identify closely with our code; it is a product of our minds and our experiences. It makes sense that we would feel ownership over our code. In many ways, your code is a reflection of your thought process, and it's easy to tie your self-worth up in the ideas you express in code.
Therefore, finding a hobby you enjoy, but don't see as a piece of your self-worth can be incredibly valuable for separating your feelings of anxiety from your identity.
For Cassidy that might be playing music or Fortnite, for me, it's bouldering or other forms of exercise.
Find something that you can enjoy without entangling your identity and lean on that enjoyment when you start to feel doubts about your profession creeping into your identity.
When you're trying to deconstruct a problematic project, it can be imperative that you isolate your emotional concerns from the problem itself.
Because so many software engineers obsess over the problems they solve, our minds might tell us that a difficult problem is the most important challenge in our life.
If you start to feel a crushing, impending doom hovering over some deadline or technical roadblock, you'll need to take a step back (see the previous suggestion) and put things into perspective.
Cassidy recalled something that sounded like a mantra, "I won't be the death of this project, and this project won't be the death of me." Reciting this to yourself might be a way to reset your perspective.
When you're in this kind of mood, consider your relationship with your work. It's not a life-or-death situation; frequently, it is only your ego that is being challenged. Acknowledging that our lack of perspective oftentimes inflates our perception of the stakes is often all it takes to let go of the anxiety caused by a particularly nasty technical problem.
It's not easy, but the solution to this sort of anxiety might be much less complicated than it would seem.
After you've created some space, Cassidy recommended reflecting objectively on the problem. Frequently, when you let anxiety into your perception of a problem, you build up demons around the problem. The task takes on the form of a seemingly insurmountable obstacle.
She broke this tactic down into a couple of steps:
First, reflect on what needs to be accomplished to consider this problem solved or completed. Nearly always we overcomplicate things in software engineering, and often that is the root cause of our anxiety.
Secondly, break down the problem. If you can articulate the necessary tasks from the previous step, you can break those tasks into achievable pieces and chip away at the problem.
This approach allows you to make tangible progress towards your overarching objective, which may solve the problem more effectively than you expected.
Needless to say, these suggestions aren't going to cure your imposter syndrome or feeling of anxiety overnight. However, building these patterns into habits might have a powerful positive effect on your relationship with difficult technical problems.
Creating some breathing room between your identity and your code takes time and discipline, but it can result in a much healthier relationship with this profession. That isn't to say that there is some valuable correlation between your code and you as a technical problem-solver, but your ability to overcome a challenging problem doesn't define your worth as a human. When your anxiety conflates your self-worth and your job performance, this field gets pretty tricky.
With the useful advice that Cassidy shared on tackling the problems that induce anxiety and stress, hopefully finding joy in problem-solving will be achievable.
Later in the interview, Cassidy shared her equally valuable experience in finding the right workplace to help facilitate this kind of approach to solving hard problems. If you're interested in hearing more of Cassidy's thoughts on building a healthy career that you enjoy, you can check out the interview on my podcast! 🎙🤠
If you're interested in learning from veteran engineers like Cassidy, subscribe to my newsletter and follow along with the podcast. I have upcoming interviews with engineers all around the world who have built amazing careers for themselves.