We Throw Away Our Power as Engineers Working for Other People
Few other professions can walk away from their work with the skills needed to create their own job immediately. Let’s not waste it
In my first week of college I was at the swimming pool at the Rec Center. The first week of college is magical because everyone is in the same position: clean slate, fresh start. Everyone is introducing themselves to everyone,
“Hey! What’s your name? Where are you from?”
I was at the pool with friends from my dorm. Fresh friendships but we felt like we’d known each other for years. We were jumping off the diving board. Nothing fancy, no Olympians here. Someone did a backflip and I became determined that before the pool closed down that night, I was going to do my first ever backflip.
When you teach yourself to do a backflip, you have to override a part of your brain that says, “If we do this, we’re going to land on our neck and get hurt.” You have to look at the back wall, throw your arms back and then forward to gain momentum, push hard off the deck, and really focus on swinging your feet it front of you and then over. If you panic and look forward, you’re going to do some weird half-twist-180 and land upside down in the water.
But once you break that barrier in your brain, internalize the mechanics, and realize that you’re not going to break your neck because you’re landing in a pool of water and not a hard, unforgiving surface, you’re free to backflip for the rest of your life.
In short: you to go further than you’ve ever gone before.
I started writing code in my last semester of college, teaching myself out of a Rails book on my iPad, one page at a time. I paused to hack and change variables values and the names of things to understand what was important and what wasn’t.
I was driven by a desire to make things. To bring 100% of what was in my head onto the phone or computer screen. The first time I felt an app in my hand that had previously just been an idea I’d sketched on some notebook paper, I jumped around my apartment, yelling in excitement.
That feeling has never left me.
Once I moved to San Francisco, I got caught up in the brand names of all of the places you could work, the VC culture, the funding numbers, the growth rates, the titles.
If you don’t think about it too hard, you can bounce from company to company, being Your Name From This Startup for your whole career and never look around.
Right after I turned 28, I sat down with my wife for a deep think about what I really wanted. I was the Director of Engineering at a recent-graduate YC company, we were about to close our Series A, and I was unhappy, over-worked, and I knew it was time for something different.
I returned to the feeling of jumping around my apartment in Boulder with that thing that I made in the palm of my hand. Fully mine, not being an over-achiever in someone else’s vision.
I wanted that again. I hadn’t shipped anything myself in years.
At that point I knew I had all of the tools that I needed.
When you’ve worked for enough founders, you realize that most of them aren’t that special. They’re smart and dedicated, but so are you. They study systems and and read a lot in order to get better at their craft, but so do you.
The only difference between them and you is that they went further than you’ve gone so far.
They can backflip.
The thing that we can say as engineers that few other professions can truly say is that we hold the means of creation, to borrow a phrase from my friend Nathan.
At any point, we can walk away from a tech company to build our own tech company. Or a product. Or a feature that may one day be a product that may one day be a company.
And once you feel like you have enough of the requisite skills to be a founder, or at least the ability to learn them as you need them, you don’t need to work at another company. You can build and launch something — anything — yourself!
That was what I felt at 19. I just didn’t have the language for it yet.
So that’s what I’m going to be writing about here on Better Programming and into the future: writing code for yourself, building my own products, and the immense power that we have as engineers to build revenue-generating products on our own or with a small team of our choosing, without funding, and without anyone’s permission.
At this point in my career I can write code for just about anyone. I don’t say that to brag, I say that just to lay out my options.
And I choose to write code for myself.