Surviving Your Software Development Career
The past few years have been challenging, with adjustments to every area of our lives during the pandemic and its aftermath. One of the unexpected benefits is an increased focus on mental health, including workplace well-being. This is especially welcome in the field of software engineering, a uniquely rewarding yet maddening career path. Big highs […]
The past few years have been challenging, with adjustments to every area of our lives during the pandemic and its aftermath. One of the unexpected benefits is an increased focus on mental health, including workplace well-being. This is especially welcome in the field of software engineering, a uniquely rewarding yet maddening career path. Big highs (“It works! Finally!”) and lows (“Production is down!”) come with a lot of unknowns and rewards. As much a lifestyle as it is a career path, software development can be all-consuming, with your mind working in the background as you make dinner and chat with your family. Stress is part of the game. How we manage stress is the art of playing strategically. So, why is being an engineer particularly stressful?
The Societal Challenges of Software Development
According to recent statistics, the typical software engineer is young, white, and male. Almost 80.7% of software professionals are men while female software developers account for only 19.3%. There are almost 52.3% white American software engineers in the U.S., followed by 33% Asian, 6.9% Latino, and only 4.9% African American. Further, the average age of a software developer is between 25 and 34 years. How does it affect an engineer’s outlook and feeling of inclusion when you do not fit in any of the majority?
Have you ever looked around your workplace and thought “Everyone in this room is smarter than me. Sooner or later, they will all find out. What am I doing here? That guy is classically trained with a master’s degree in comp sci and here I am, self-taught and lost.” Welcome to impostor syndrome. Imposter syndrome is persistent self-doubt despite your own merit, education, experience, accomplishments. You end up working harder and holding yourself to impossible standards to ward off the uncomfortable effects of this line of thinking.
The pressure can take a toll on your emotional well-being, your performance, and the ability to relate to your colleagues. Impostor syndrome fuels anxiety about job stability, career prospects, and providing for your family. In many ways, it can be a self-fulfilling prophecy. This underscores the importance of prioritizing our well-being. The logic we apply to our work can help us navigate our way out of impostor syndrome. Problem solving, the very heart of engineering, requires resilience, persistence, and clear thinking.
The Mental Challenges of Software Development
The love of your craft and job market expectations means that you must learn continuously to keep up with the industry. Just mastered NuxtJs and Vue? That’s great, but your new project uses NextJs and React. This is exhilarating and helps with bonding as teams ramp up to tackle new tech, but the flip side is a fear of missing out. What if you are left behind on a project in maintenance mode with an outdated tech stack? How do you reconcile the balance between staying current and marketable with settling into a stable long-term gig with a client you really care about?
The Physical Challenges of Software Development
Most of us practice poor ergonomics, straining our eyes, back, neck, and shoulders as our job responsibilities involve long stretches of screentime. Developers can be alarmingly sedentary, immersed in solving a bug or building a new feature. Time slips away, and hours have gone by without breaks. “Flow,” conceptualized by American psychologist Mihaly Csikszentmihalyi, is a state of highly concentrated, productive, and satisfying mental focus. This immersive experience is experienced by almost everyone writing code and is both a pro and a con. The beautiful mental deep dive into problem solving can quickly decompose into frustration, panic, aches, and pains.
Managing These Challenges
Social science theorists offer multi-faceted solutions to manage thoughts and emotions that may ease your software development career journey.
- The Growth Mindset. Popularized by Carol Dweck, this belief is an integral tool to fend off impostor syndrome. Having a “growth mindset” empowers you to face challenges with a can-do attitude.
- Grit. As defined by Angela Duckworth, passion and perseverance over raw talent is the key to outstanding performance. You can excel along with your classically trained, comp sci major colleagues with these traits.
- The Upside of Stress. Stress in the workplace can curiously be an ally, as theorized by Kelly McGonigal. Closely correlated to excitement and anticipation, stress can be viewed as a harness for focus and energy.
- Flow. The aforementioned idea from Mihaly Csikszentmihalyi is the reward for our problem-solving efforts and dedication to our vocation. Achieving this state then resurfacing with an elegantly written solution or complex bug fix is an absolute victory!
When overwhelm encroaches on your well-being and productivity, you can arm yourself with concepts that provide perspective and realistic optimism. Employers are recognizing the benefits of having individuals and teams with healthy minds to foster lower turnover, increased engagement, and consistent productivity. Moreover, increasingly common remote work and workplace flexibility allow for more opportunity for self-care. With regard to workplace morale, modern, progressive teams embrace empathy and collaboration. The trope of “tech bros” and “brogrammers” are thankfully nearly extinct.
Let’s continue to normalize not knowing right off the bat, asking well-crafted questions, Googling, and celebrating that these days, knowledge is more accessible to everyone. It’s easier than ever to find developer solidarity and community online and IRL. Find your people. Build and maintain your network. This relatable, satirical post by Peter Welch reminds us of shared, hilarious experiences. Most importantly, trust yourself and your skills.