Years ago I came to San Francisco to join an exciting company building software for bands. Tools that make digital life easier for musicians. Since I’ve always had a deep passion for music, the opportunity seemed like a great fit for me.
It’s not hard to find startup job postings searching for a “rock star”, “ninja”, “wizard”, “hacker” or some other variation.
Recently, I’ve seen some comments on Twitter, and a couple of blog posts dissing such titles.
I get it.
Some developers are the strong quiet types, or shy and sharp. Perhaps simply capable, committed, and understated.
Some people have problems with the terminology above because they don’t identify with it, and they feel excluded by it.
If you’re in this camp, I have empathy for you, and my message for you is this:
Programming is for Everyone
Programming is for everyone, and the person writing the job listing may not know exactly the person they’re looking for. Maybe they really do want to meet you.
There’s Room for Everybody
I get it. It’s probably a good idea for people to tone down the personality in their job posts a little bit so they don’t exclude developers who might be a great fit. Certainly a good idea if “Grand Master Hacker” doesn’t fit the company brand.
Rock Star vs Superhero
Allow me to quote Ron Sparks:
“A superhero developer is a developer who swoops in to save the day when an emergency arises and then flies away after the crisis, leaving the rest of the team to clean up the mess that the ‘rescue’ created.”
Some people associate the term “rock star” with show off, or soloist, or egomaniac. What those people are missing is that rock and roll, like software, is all about collaboration — working in sync with the rest of the band.
What I associate with rock stars is many years of patience, practice, and jamming with other musicians in order to produce something worthy of admiration and respect.
It’s OK to be amazing at what you do. You should always be working hard toward that goal. It’s OK to be more experienced and more mature in your abilities than other developers.
If you’re a true rock star, you’ll mentor the rest of the team so none of the music gets botched. You’ll recognize and help nurture the talent of your peers.
I’m all for the occasional solo, but most of my favorite music is made by groups.
Confidence is a Good Thing
I don’t want to hire somebody who’s afraid to commit code in a production app. I don’t want to hire somebody who feels unworthy of shipping an app to tens or hundreds of millions of people. If you need to think of yourself as a rock star crafting lyrical code to gain that confidence, so be it.
If you want to be a ninja, may your shurikens find their bugs.
People should be allowed to be exactly who they are.
They should not be made to feel like they have to conform to anybody else’s idea of what a developer should be — nor should they be shamed for standing out.
You want to come to work with a punk rock mohawk, with your sticker-painted Macbook dangling from a shoulder strap like a guitar player’s axe?
Programming is Magic
When I think of magic, I think of conjuring. The way I see it, that’s exactly what we do.
As software developers we make something useful, interesting, entertaining, or creative appear out of a void of electrical charges… zeros and ones that only exist as energy inside the machine.
And when you get good at it, and you’re lucky enough to work on a great team and reach a great audience of users who love your software, you create a different kind of magic: Delight. Happiness. Contagious usefulness. Fun.
We sit in front of a computer screen and turn some seemingly random bits of electrical charge into improvement of the human condition. Isn’t that magical?
Don’t be Afraid to Be You
To all of you, the understated developers, the cyberpunks, the hackers, the ninjas, the unicorns, the brogrammers, hipsters, nerds, shy kids, and gurus:
Shine on like only you can.
Make some magic.
~ Eric Elliott
He spends most of his time in the San Francisco Bay Area with the most beautiful woman in the world.