...you're not a jerk and you help others be the best they can be. That's the post.

Titles tend to be misleading. A senior developer in one company could have their skills re-assessed to be an intermediate developer at another. Or a staff engineer at another. There really is no universal measure of a senior developer. Titles can be given out as easy as buying a new pair of shoes.

That's not to say people who hold those titles hadn't worked hard for it. It's just that it's different in every company and at the end of the day, you just need to strive to be the best developer you can.

So this post isn't a checklist of whether you're a senior developer, but behaviours I've noticed that marks an admired and experienced developer.

Even today, hiring committees attempt to measure the mark of a senior developer in the number of years of experience. We used to see 10+ years experience for senior roles, but lately I've seen job postings only require 2+ years of Javascript and a company could deem that acceptable. And it might be if the work they need someone to do only requires that!

Great developers are not measured in years of experience. You could be doing one piece of web development for 10 years (like coding emails, or just working with forms, or just working with Wordpress themes FOR TEN YEARS) but know nothing about the intricacies of data-heavy Javascript applications, or accessibility, or web standards! So number of years really isn't a good measure.

The real measure? The volume of learning they've done. And learning is trying, not being afraid to try, messing up, and trying again and again. A side effect of someone who tries a lot and often is someone who is resilient. Someone who doesn't let bugs and mistakes hold them back from learning more.

A great developer is willing to help those around them. Grow others to not make the same mistakes. Someone who is willing to admit their mistakes, listen to others' voices and advocate for the user. A great developer doesn't say that their greatest accomplishment was 1000% growth in user satisfaction – it's that they've seen a lot of code and they've messed up a lot to discover what didn't work. And shares with their team how to be better next time.

We often want to hide our flaws to legitimize our positions or titles, but that doesn't do anyone good. Sharing your lessons helps your team focus on more bugs and more new lessons. Being guarded only make others less willing to share lessons you could benefit from as well.

You're a senior developer if you:

  • Are excited to dive into code and untangle it
  • Ask for help after you've exhausted different avenues and approaches
  • Welcome others to review your code and have a discussion
  • Know that you will still make mistakes
  • See opportunity in fixing bugs
  • Are energized and encouraged by the prospect of running into challenges
  • Want to motivate others to code better
  • Have worked with lots of code and all kinds of code
  • Experience a high volume of code, frequently, with persistence and resilience

It's a combination of experience and attitude. Experience is useful, but attitude helps others glean from it and make the opportunities accessible.

If you already do all of these things, you're basically a senior developer. And if you already do some of these things, you're well on your way.