Humble Pie

Healthy reminders from a disappointing job interview.

It’s not everyday that you get rejected.

I’ve applied to a lot of jobs in the last few months. With some of these applications, I’ve just been going through the motions and I haven’t expected anything to materialize. Other applications have been really concerted efforts with companies I truly admire. I’ve put many hours into writing cover letters and tweaking my resume only to hear nothing back. It’s annoying to sit in the dark but I get it — these companies garner lots of interest. Still nothing compares to an outright “no.”

One morning last week, I woke up and, still in bed, started flipping through Twitter. One of my followers had posted that they were looking for a full-stack engineer. I’m a full-stack engineer! Although the product was a bit of a mystery, I saw the makings of something great in the details and in the team. I reached out and just a few hours later I was on the phone.

I spoke to the founder and CEO for almost two hours. We talked about everything: how the product came to be, where it was at now, shared anecdotes from our careers, and mused about the fundamentals of great product design. I hung up the phone with a sense of hope. I was excited! This was clearly a team that wanted to take their time and get it right.

Without missing a beat, I was on another call with an engineer just a few hours later. Momentum in hiring is such a strong indicator and up until this point I had been cruising with full sails. It didn’t take long for us to start talking about their “stack,” the technologies they’re using on the project. I had to admit that I actually hadn’t used any of them. They were using a language I know well but in a totally different and unfamiliar way. As the sails started to luff, I knew that this journey was probably over.

I don’t think it has ever been harder to write software than it is right now. It used to be that you wrote some code, bought a server and, bam, you had a website up and running. Then it actually got easier! The clouds rolled in and soon you didn’t have to worry about servers at all. Services like Heroku would deploy your application at the push of a button and web frameworks like Ruby on Rails almost made web application development as simple as painting by numbers. The prototypical Rails demo is building a blog in 15 minutes. 15 minutes!

“The world went and got itself in a big damn hurry.” — Brooks Hatlen, The Shawshank Redemption

Nowadays, building software is hard work. Companies like Google and Facebook continue to raise the bar in terms of what people expect applications to do. Apps need to be super fast, available everywhere, and interact with users intelligently. When people start typing into a text box, for example, they half expect it to finish their thought. And pretty soon conversational interfaces will be ubiquitous too.

Distribution of screen resolutions of popular Android devices as reported by OpenSignal.

Today, we expect software to meet us wherever we are. That means developers have to write code for at least three major web browsers and two mobile platforms, all the while considering almost every screen size you could imagine. To do it well, you have to commit to building your product two or three times over. Or you can attempt to share code between platforms, a problem that has yet to be solved well.

But developers have risen to these challenges. They’re forging ahead, breaking new ground, and solving these really complicated problems. They’re inventing new ways to share code between platforms, to create incredibly rich, interactive user interfaces, and giving the tools back to the community.

“We choose to go to the moon in this decade and do the other things, not because they are easy, but because they are hard.” — John F. Kennedy

When I was in high school, I spent my Saturdays at the Museum of Fine Arts learning how to make sculptures. My teacher, Ralph Rosenthal, had a profound impact on my life. He quite literally told me to shoot for the moon. “There’s a star way out there,” he said, “and the only way you’ll reach it is to set your sights even higher.”

Before that interview, I felt like I was cruising down the highway, satisfied — perhaps even a little impressed — with my cruising speed. Just a wide open road with no one around me for miles. And then out of nowhere, this shiny red motorcycle blew right past me. How could it be?!

In that moment, I was reminded that no matter how much work we’ve done, there’s still more to do. That the key to continued success is a relentless dedication to improvement and that humility is the antidote for your ego, which if left unchecked will happily rob you of opportunity.

Thanks for reading. As you probably gathered by now, I’m a full-stack software engineer and product designer and I’m searching for the perfect company. Please don’t hesitate to reach out to me with opportunities or just to say “hi.”