Comparing yourself to other developers

April 29, 2020

A couple years after graduating from a coding bootcamp, classmates started publishing LinkedIn updates of their promotions or job changes. Some had reached “senior developer” within a couple years, or even “engineering manager”.

There was a subtle voice in my head that wondered if there was something wrong with me if I hadn’t reached those levels yet. Self-doubt trickled in and made me wonder if I measured up.

Of course we should remember that it’s not what title you have that matters–it’s what you know and how you apply it, that does.

Promotions reflect changes in functions

An engineering manager may not actually write code anymore. They may spend a lot more time in meetings. They may mentor junior developers or manage people because their strengths are in recognizing skill levels and deploying certain team members on projects that suit the need.

There are trade-offs in every promotion, and people expect that these new roles offer more value out of them. It’s not a reflection of how good they are as a person (skill or personality wise). It’s simply an indication of the kind of needles they move within a company.

Senior here, but intermediate there

Titles and expected competencies vary amongst companies. A senior in one company could very well be a junior or intermediate in another.

A title is just a title that relates to that person’s level within that company. And it helps the compensation teams at that company justify the levels based on that company’s budgets. Notice that I’m emphasizing that company.

A senior developer at a not-for-profit organization will have different compensation and skill expectations as one at a small scale-up or company in a more established industry. There are highly experienced developers who earn low salaries and less experienced developers who make a lot more. It sounds unjust, but it exists!

Developers at smaller companies may have a wider skill set due to the need to wear many hats. Developers at larger companies may have specialized skill sets in certain programming languages or frameworks, but may lack the breadth to quickly pivot to others.

Even title, salary, and company offer inaccurate assumptions and do not make for good measures to determine if a developer is better than you at X or Y. Every developer offers value in different areas and at various stages of their career.

You're better than them, and they're better than you

There was a time when I would mess up Javascript Promises, and the person who helped me, in turn, happened to be frustrated by Flexbox. We ended up helping each other get clarity on our blindspots. And that's what we should do when working with other developers–expose each other’s gaps, and view them as opportunities, not vulnerabilities.

A good developer is not to be confused with “senior developer”, “engineering manager”, or whatever fancy title. They got to that level because they might've convinced senior leadership that they deserve it. Or the company saw it as an opportunity to retain them. Or they were granted that after a company re-structuring. You can't tell that from a LinkedIn update unless someone aired out the back-and-forth discussion that went on behind the scenes.

That's not to say they didn't deserve it. It's that you are not less deserving. You can have that, too.

What makes you a good developer: Bringing value and having a good attitude about helping others. Once you accept that as truth, you can stop comparing yourself and start feeling good about what you bring to the internet and to other people. And that...that will set you free 💜