I’ve spent the majority of my career working for companies building products I either wasn’t interested in, or wasn’t the target user. They were jobs. In exchange for my 40 hours, they supplied me a paycheck. As a result, I went home at the end of the day and was able to disconnect.

Fast forward almost 15 years and I’m on the opposite end of the spectrum — I build a product I want to exist, a parent like me is the target user and furthermore, I have equity in the company.

This spectrum of motivation and responsibility encapsulates all different types of software development jobs. Personal preferences play as large part in defining motivation. This articles explores how caring about what I was building changed my perception of work and the questions I asked myself to get there.

A Unique Time in Technology

Knowledge workers..is that we’re called? As most job boards illustrate, I can’t recall another time in my career when there’s been such demand for developers. Recognizing the talent pool is limited in most areas, companies are hiring remote workers to grow their engineering teams.

If we, as developers, are in such high demand, why do we settle for anything short of our dream job? It’s the perfect economic time to make a change if you don’t feel fulfilled. Who knows if there’ll be another time where we have so much leverage. You deserve a job you love, that also fits your professional ambitions.

The Soapbox Test

Most software developers I know are introverts. They generally like writing code, shipping new features, but avoid meetings at all costs. The rise of slack and other remote-focused tooling further increases the human contact void that most developers experience.

My experience with sales people have been the polar opposite. They thrive on human interaction. Sales people, no matter the company, generally position their product/services as the perfect fit for you and your company. That’s ultimately their job — match the customers’ need(s) with a solution they hopefully sell.

It’s not surprising that being in a sales role for a company/product that you love and genuinely want to see succeed is much easier than one you could care less about. This is where roles at a small company often cross-over.

Not too long ago I took a break from writing code to pitch Bark at TechCrunch Disrupt. I’m not in sales person don’t strive to be. But because I deeply care about Bark and the differences we hope to make, becoming an advocate for the company is easy. I have to find a way to articulate what we do, how we do it, and why we do it. And who better than me? I spend the majority of my days already thinking about it, which makes me more qualified than anyone else.

Imagine you have a microphone in your hand, a crowd of 2,000 people and 2 minutes to tell them what you’re building and why they should care. Does it feel weird or slimy?

If they answer is “yes”, you should find another job where you’re a natural advocate. If your love for what you’re building isn’t genuine, you’re doing yourself a disservice. Passion and care have a way to turn even the most anti-sales people in to advocates.

The Deathbed Test

Doctors and nurses that spend a lot of time around people in the latter stages of their life get an unusual look at the regrets of those in care. They’re often able to apply the lessons to their own life.

If you read about the most common regrets among the dying, it’s something like “I wish I spent more time with my family” or “I wish I didn’t work as much”. Work occupies a large majority of our lives. Assuming we agree to work a somewhat standard career, the next question is “Are we happy with what we’re working on?”

The deathbed question is a useful one beyond your career decisions.

Imagine you have 1 more day to live and you’re left thinking about all the choices you’ve made over your lifetime. Would you be happy with the job you have today or the job you’re thinking about taking tomorrow?

If the answer is “No”, it’s time to find something better. Life can be short. Don’t waste it on a job you’re less than excited about.

The Lottery Test

The media constantly reminds us about successful entrepreneurs like Mark Zuckerberg, Bill Gates and Elon Musk who don’t have to work, but do. A common thread amongst those founders is their genuine belief in what they’re creating. Given their financial freedom, they could spend hours sun-bathing on private beaches around the world or traveling to the most remote places on the planet, but they choose to work. In fact, my guess is that none of them refer to what they do as “work”.

If you had unlimited financial freedom, like a sizable lottery, would you continue doing what you’re doing now?

Whether its the position, company, lack of control, or strict hour requirements, most of us would probably adjust our current position in at least a small way. If you’d continue doing exactly what you’re currently doing after winning the lottery, you’ve won. This, of all the questions, is the ultimate. If you can answer “Yes” to this one, kudos to you. You’re probably happier than 99.999% of people in the world.

Ditch the Product, Love the Craft

I know what you’re thinking, you don’t love what you’re building, so where do you go from here? Not everyone has the freedom and ability to choose a position where they’re 100% happy. There will always be personal trade-offs, some of which might leave you working for a company/product you don’t care about and don’t have the luxury to leave anytime soon. I’ve been there before — ultimately leaving — but I made it work for a period of time.

One of the ways I separated myself was to focus on the software development craft. If you’re like me, you care about designing things in a maintainable and reliable way. Whether it’s good design, well-written tests, or using the latest and greatest, shifting your focus away from a product you have no interest levels the playing field.

Take processing incoming email for instance, whether you’re making an internal tool for an ISP or adding email features to your latest drip campaign software, the challenge is the same. Perhaps you work for the less interesting of the two (based on personal preference), removing yourself from the end product where the feature will be present allows you to invest yourself 100% in to making the best programming decisions possible. Being content with this approach requires you have a love for software and everything that comes with it. I’ve done this dozens of times and it’s generally gotten me out of a funk. Looking back, I’ve always been proud of what I’ve accomplished after investing myself 100% in the craft.

Career Kickstarter

Whether you’ve just graduated college or a relevant developer bootcamp, you don’t always have the luxury of being picky. You take the best job available at the time, no matter the product, and get some experience under your belt. This is reasonable and expected (I think there’s value in targeting the more interesting companies even if you’re just starting, but depending on your interests, a job with an interesting company may not always be possible). Within 2-3 years (or sooner!), you’ll have the experience needed to be a little more picky. It’s worth keeping an eye on the handful of companies that do interest you in case opportunities arise there in the future.

Niche Guru

The other way this comes up is because there’s a team or specific developer you want to work with, no matter the company/product. If your interests lie within a specific niche, what better than to learn from the best. Find the most influential person in that niche and try to work with them, attempting to suck every ounce of know-how out of them. This requires putting your own ego and opinions to the side for a bit. The two times I’ve done this in my career, I came out on top.

Summary

Happiness is subjective. Every career decision is the result of personally quantifiable trade-offs. When I look back on my career thus far, the happiest I’ve been has coincided with how fulfilled I’ve felt about my current position. I’ve recognized this and made changes when necessary. I envy those who can hate their job and block it out when they’re not at work. I can’t. Rather than deal with it, I’ve tried to avoid hating my job. Each step I take gets me closer to what I imagine being the perfect job, if there is such a thing.

Care about what you build. Your life will be better for it.