Do you sometimes feel like you’ll never know enough to be a real software engineer? Have you interacted with seasoned engineers who made you feel like you just won’t cut it in the industry?
Software development is an inherently intellectual endeavor — it requires you to learn a lot of conventions, be able to follow strict rules of logic, and continuously deliver a functional product. As such, there tends to be a lot of both external and internal judgment foisted upon software engineers. For those trying to become or just starting out in the field, negative external judgment often comes in the form of gatekeeping and negative internal judgment often comes in the form of impostor syndrome.
In this article, I explore these two phenomena and their deleterious effects on new engineers. In addition to discussing these phenomena, I discuss a key technique for managing (and benefiting from) these and other forms of adversity you will face in this career: employing emotional intelligence.
Note: While this article is aimed at new and junior engineers, it should be noted that engineers of all levels experience gatekeeping and impostor syndrome.
What is Gatekeeping?
Gatekeeping is a term used colloquially to represent the act of putting down or rejecting someone’s knowledge on a subject, thereby discouraging his or her participation. In the context of software development, you’ll see this manifest in many forms. Here are some examples that may be all too familiar to you or someone you know:
- You’re not a real developer if you don’t know [X] language!
- I can’t believe you fancy yourself a developer asking a question like that!
- I doubt you can cut it as an engineer if you don’t have a degree.
These are obvious examples, but gatekeeping is often quite subtle. For example, downvoting a question on a help forum into oblivion can discourage future questions and be quite embarrassing to a newcomer.
These are obvious examples, but gatekeeping is often quite subtle.
I wouldn’t be surprised if at least one potential engineer was turned off from the field entirely based on a poor experience while simply trying to seek help!
The Prevalence of Gatekeeping
Gatekeeping is unfortunately widespread in the development world. April Wensel describes her experiences poignantly in her article Tech has a Toxic Tone Problem — Let’s Fix It!: “I’ve listened over the years as colleagues called other engineers or interview candidates “idiots” who “couldn’t program their way out of a paper bag.” I’ve seen the eye rolls when junior engineers ask questions. I’ve heard the judgmental comments about bootcamp grads or self-taught programmers.”
With such negativity in the industry, it’s no wonder we start to seriously doubt our own abilities — something commonly referred to as impostor syndrome.
What is Impostor Syndrome?
Impostor syndrome can be thought of as self-gatekeeping: a “psychological pattern in which an individual doubts their accomplishments and has a persistent internalized fear of being exposed as a ‘fraud.’” (Wikipedia). From my experience, impostor syndrome is also fairly widespread (certainly enough so to have its own Wikipedia page!). If you’re an engineer with impostor syndrome, the following self-doubt thoughts might be familiar:
- Sure, I got the app to work, but mostly though using code I found online.
- I can’t be considered a good developer until I understand [X].
- Jane knows so much more than me, I’ll never be on her level.
In the first scenario, you have developed an application be cede credit for the accomplishment to your ability to google for the answers (note: we all google the answers). In the second scenario, you’re identifying an area of improvement but not necessarily acknowledge all the areas of strength you already have. In the final scenario, you are measuring yourself against someone else even though it’s not a good idea for various reasons (e.g., the person may have more experience, you may be overestimating what that person knows, and that person has their own deficits about which she is likely self-conscious).
The Prevalence of Impostor Syndrome
Impostor syndrome is widespread in tech. I myself experience it quite frequently as do many of my colleagues. While that’s only my experiential evidence, the prevalence has been corroborated: one survey finds that over 57% of tech professionals are affected by impostor syndrome.
The Combined Effect of Gatekeeping and Impostor Syndrome
One can only imagine the combined psychological effect of gatekeeping and impostor syndrome. Many of us have existing self doubt in the form of impostor syndrome. This self doubt only gets reinforced and its effects exacerbated by the external gatekeeping stimulus. Furthermore, if a junior engineers want to learn to reduce impostor syndrome, they may be too afraid to ask questions of senior engineers for fear of toxic gatekeeping.
We need to do better. But…
Is All External Criticism Bad?
Is all external criticism bad? Obviously not — in an ideal situation, we all have mentors that help us learn throughout our careers. The mentor gives you positive criticism; highlighting areas where you can improve and providing resources to help you grow. While criticism hardly comes in this form, there is clearly some use for external criticism, if only we could harvest the good stuff!
Is All Self Doubt Bad?
Is all self doubt bad? This one’s not as obvious, but the answer is still no. Self doubt is critical to learning at the beginning of your career. In this stage, you’re not an impostor, but you are a beginner and that’s okay! If you have no self doubt, you have little motivation to improve. This could result in an over-inflated ego and career stagnation.
Emotional Intelligence as the Key to Solving the Gatekeeping and Impostor Syndrome Puzzle
We have established thus far that gatekeeping is negative external feedback and impostor syndrome is negative internal feedback. We have also established that there can be positive utility to various external and internal feedback. I now propose emotional intelligence as a tool to help you survive — and thrive —when receiving this feedback in your software engineering career.
What is Emotional Intelligence?
Emotional intelligence refers to the ability to identify and manage one’s own emotions, as well as the emotions of others (Psychology Today). Simply put, emotional intelligence can help you interpret internal and external feedback rather than unquestioningly accepting what its telling you. As an aside, you can probably imagine how this can be helpful in all aspects of life rather than just limiting it to your software engineering career!
Emotional intelligence can help you decipher between useful and useless external feedback (e.g., a mentor giving you constructive criticism is likely useful feedback, you should keep this, a troll online telling you you’re not smart enough to be a developer is useless, throw that away).
How Can We Develop Emotional Intelligence?
As software engineers, one of our best qualities tends to be the ability to practice and attempt to solve a problem repeatedly until we succeed. I propose we consider developing emotional intelligence the same way: through practice. To consider how we can do this, first I will break down the different components of emotional intelligence (according to one popular model) and then I’ll consider a scenario from the perspective of each component.
As software engineers, one of our best qualities tends to be the ability to practice and attempt to solve a problem repeatedly until we succeed. I propose we consider developing emotional intelligence the same way: through practice.
Emotional intelligence can be broken down into four domains and, in each domain, a variable number of competencies.
The domains and competencies of emotional intelligence are:
- Self-Awareness: Emotional self-awareness
- Self-Management: Emotional self-control, adaptability, achievement orientation, positive outlook
- Social Awareness: Empathy, organizational awareness
- Relationship management: Influence, coach and mentor, conflict management, teamwork, and inspirational leadership
Let’s define each competency and then apply them to a scenario.
Note: While the Relationship Management domain is extremely important, it is perhaps a bit too management-oriented for this exercise and I will focus on the other domains for the remainder of the article.
Emotional self-awareness: The ability to understand your own emotions and understand how the affect your performance.
Emotional self-control: The ability to manage disruptive emotions and impulses.
Adaptability: The ability to adjust to new conditions.
Achievement orientation: How individuals react to goals and strive for excellence.
Positive outlook: The ability to see the positive in people, situations, and events.
Empathy: The ability to see things from another’s point of view.
Organizational awareness: The ability to understand the emotion of a team/group and understand an organization’s dynamic.
Now that we have designed these competencies, let’s consider a scenario where we can practice their application.
Scenario: The Frustrated Colleague
Emotional self-awareness: I’m a sensitive, non-confrontational person. If someone speaks harshly to me, I tend to beat myself up over it. Since this is my tendency, I have to be especially cognizant of my instinct to beat myself up over this occurrence.
Emotional self-control: I may want to have a fight-or-flight reaction when confronted like this. I might want to yell at this colleague for treating me poorly or, conversely, quit my job because I’m clearly not good enough. I shouldn’t take either of these actions. “This too shall pass” applies here.
Adaptability: Has my scenario changed? Perhaps this is a pattern of behavior and I’m realizing I can’t go to this colleague for help.
Achievement orientation: My hard work has paid off so far. I am quite motivated to get the job done and done correctly and have been rewarded by my management. I take initiative to achieve tasks, including asking questions. This negative feedback from my colleague pales in comparison to other experiences I’ve had.
Empathy: This colleague has been under a lot of pressure. He doesn’t have any senior support on the project. He very well could see my presence on the project as just another indication that he’s not getting the support he needs. His reaction was inappropriate, but I can see where he’s coming from.
Organizational awareness: The team is exhausted. The development effort seems to have been misquoted and now we’re behind schedule and overworked. It’s not unreasonable that people would be testy in this environment.
Is It Really Practical to Do All This Analysis in Realtime?
Not actively, no. But, while it’s nearly impossible to do this in realtime, consider retroactively applying it to a scenario you encounter as you need to. For example, if someone on an online question forum belittles you, pull up the list of emotional intelligence competencies and take a little time to consider each one. If someone in your workplace questions your knowledge on a subject, pull up the list of emotional intelligence competencies that evening and consider the interaction in the lens of each one.
Eventually, this practice will result in you seeing interactions through these lenses in realtime.
Conclusion: Control What You Can Control
We can’t control how others treat us. Gatekeeping is an unfortunate part of today’s development environment. Hopefully the industry can do better and eliminate or greatly reduce gatekeeping, but until then, you should strive to control what you can control: your reaction to and interpretation of this external input. The same goes for feelings of impostor syndrome. You can’t necessarily control these insecurities and feelings of fraudulence, but you can work on how you react to and interpret them. By putting emotional intelligence to work, you can significantly mitigate these phenomena.