This post is not meant to be prescriptive. It’s also not intended to be another “Quitting Google to pursue my passion for X” article because, well, I haven’t been able to pass the interview there yet. This is a telling of my story that I hope will inspire those who are thinking about quitting to take the leap.
I recognize how fortunate I am to have a supportive network of friends and family, software engineering skills in the part of the world with the most software engineering jobs, and no dependencies or significant debts precluding my ability to afford a break in income. If these stars hadn’t aligned, I probably wouldn’t have done it.
How I got here
Back in the end of April, I quit my job as a technical lead on the data platform team at MZ (you might have seen their commercials with Kate Upton, Arnold Schwarzenegger, or Alexis Ren) without another one lined up.
Nearly two and a half years earlier, I had joined as a software engineer with no big data experience. By the time I left, I had built and eventually managed several of the data pipelines that enabled MZ to be one of the top-grossing mobile gaming companies. It was the hardest I had ever worked in my life, and I grew tremendously, both as a person and in my technical abilities.
But, like many a Silicon Valley startup engineer, I was burnt out.
Why didn’t I start interviewing? I considered it, but I knew it’d be difficult to balance with my work responsibilities in the company’s ever-increasing pace. I’d end up letting the team and myself down.
I noticed a personal trend: Every couple of years, I would join a new company and work as hard as I could until I burnt out. Not uncommon in Silicon Valley, but I didn’t want to make a habit of this vicious cycle and become nihilistic in the process.
I needed a break. I needed to reevaluate where I was in life, reassess where I wanted to be, and reset myself mentally and emotionally.
A break didn’t sound sexy, though. I needed a sabbatical.
Once I had made my mind up, I tried to plan out what a sabbatical would look like for a 26-year-old. I came up with a few broad goals:
- Read more. I love reading, and I was excited to have the time to follow Warren Buffett’s advice to read 500 pages a day.
- Travel more extensively. I could never do as much as I wanted to when I traveled on PTO. This was an opportunity to spend an extended amount of time outside of the Bay Area bubble and really feel like I lived somewhere else, which is impossible to do while working.
- Put full-time work into my side projects. What if I applied the same time and energy that I spent at work toward myself? I had an iOS pet project to which I could finally add some much-needed features to. I could build the personal website I’d always wanted to build. I had a bunch of random ideas that I could finally sit down and try to execute. I didn’t expect them to be anything lucrative, but I did look forward to the ownership and learning experience unique to personal projects.
- Achieve a sense of agency. Although I had a lot of responsibilities at work, I realized that I lacked true agency in what I was doing. The “business” dictated the direction for me and my team. I was excited by the chance to achieve a sense of agency over my day-to-day without any external expectations.
- Make progress towards self-actualization. In Maslow’s hierarchy of needs, self-actualization sits at the very top: Maslow describes it as “the desire to accomplish everything that one can, to become the most that one can be,” or simply, “What a man can be, he must be.” I’ve long thought that Maslow’s hierarchy was a good model for personal growth, and I was at a point in my life where I could actively work towards the higher levels. I realized that I was constantly trying to reach my potential as an engineer but not necessarily as a human being. This was the time to finally focus on my growth outside of work.
I was becoming increasingly aware of the rat race that surrounded me, and my life’s routine felt like a treadmill that was difficult to step off of. I’d been living in a work-obsessed culture my entire life, and I was excited to finally take myself out of it and see what insights there were to be gained about myself and the world around me.
Project managing my life
In a typical software company, there exists a complex bureaucracy that decides what software engineers are supposed to spend their valuable man-hours on—a hierarchy of engineering and product and project managers. Even when I was able to complete everything in my sprint, there were always more tickets in the backlog to be done.
I thought that it’d be liberating to not be a cog in this machine anymore. I wasn’t wrong, but it only meant that the responsibility now fell on my shoulders.
The first day that I started “working for myself,” the challenges of the task at hand finally dawned on me. Now what?
I was on my own now. I didn’t have JIRA telling me what tickets I had to do this week. Instead, I had a handful of projects—some of which I’d started on and some of which were just ideas—that I wanted to work on at the same time, but I had no clue how to get started.
I had to become the manager for the project that is “myself.”
What working for myself is actually like
- Complete freedom. I get to work on what I want to work on. Sometimes I’ll get bored of doing X so I’ll just pick up Y. Tired of looking at a computer screen? Pick up a book. Feeling restless? Go on a run. My deadlines are self-imposed and they don’t have to be rigid. There’s no being upset at management.
- Wearing all the hats. I need to be designer and product and QA and marketing. I love doing this, since it gives me the ultimate sense of ownership and because I’m working towards something I believe in.
- No structure. The flip side of complete freedom. When I was working for a company, I felt comfortable in relaxing once I got home or on the weekends because I knew I had paid my dues at work. Now, when my friends want to hang out I’ll feel guilty or undeserving because there’s always more work to be done.
- Loneliness. There’s no camaraderie in working for myself. I miss my old coworkers. I miss getting lunch with them and taking walks with them and working late into the night with them. There have been more than a few times when I’ve felt hopeless in what I was doing and questioned my life decisions, and misery without company is the worst kind of misery.
Understanding flow and procrastination
Coding in the zone is one of the most exhilarating experiences for a developer. Wikipedia defines being in the zone, or flow, as “the mental state of operation in which a person performing an activity is fully immersed in a feeling of energized focus, full involvement, and enjoyment in the process of the activity.”
At work I knew I was at peak productivity when I was in the zone—when it seemed like perfect code was streaming effortlessly from my mind onto the screen.
I naively expected to live in this flow state when working for myself. After all, shouldn’t it be so fun and self-fulfilling that I’d always be operating at peak productivity?
You can imagine how disillusioned I was when I inevitably found myself procrastinating. What was going on here?
I had to force myself to think critically about what actually gets me into a flow state. Was it because I loved what I was working on? Because I was learning something new and exciting? Or was it for less noble reasons such as a fear of failure, of letting down my teammates, or of looking bad in front of management?
I asked myself why I procrastinated. Reasons that came to mind included not agreeing with management, not believing in what I was working towards, not being challenged, and not learning.
There was no simple answer, but through my self-analysis I found that thinking about this problem on a sort of “productivity spectrum” helped. Flow and procrastination are two sides of the same coin, and I need to try and maximize my time in the right side of the spectrum and be wary of when I start to drift to the left. I need to focus on what makes me productive and happy as a developer and as a person: continually learning and challenging myself while working towards something that I believe in.
Related tangent: there’s a cool web MD for procrastination that was floating around on Hacker News a while ago that can help answer the question of why you procrastinate.
Holding myself accountable
At work, it’s easy to hold people accountable. Did they complete what they promised to deliver? Even when I was procrastinating, I could still hold myself accountable as long as I met the objectives set for myself and for my team. There wasn’t much scrutiny about the process as long as I kept delivering.
Holding myself accountable now is much harder.
There are immediate consequences when I don’t meet a deadline at work. When I fail to deliver now, there aren’t any repercussions that can be seen or felt in the short term.
I’ve come to learn that it’s much deeper than that: Not holding myself accountable means I’m letting myself down.
This sabbatical is not going to last forever, and if I don’t hold myself accountable for the goals that I’ve set, I’ll waste one of the most rare and potentially valuable times of my life. Unlike at work, if I can’t hold myself accountable now, no one else will.
Finding this intrinsic motivation has been a valuable experience in and of itself, and it’s something that I’ll take with me beyond this sabbatical.
Reflecting on the last five months
I finished reading The Lord of the Rings, the Elon Musk biography, and Designing Data-Intensive Applications—books that satisfied a range of personal interests. For me, reading for several hours a day is an entirely different experience compared to reading a few chapters before bed as I had done before, and it helps me better remember and understand what I read.
I moved to Seattle for a couple of months to explore a new city and learn what it would be like to live with my girlfriend. I really enjoyed all of the coffee, beer, and nature the city has to offer, and I expanded my network with the people that I’ve met there. My relationship with my girlfriend also grew in ways that wouldn’t have been possible if we had kept doing long-distance.
I traveled throughout Europe, Canada, and Asia for three months, including a month-long solo trip to Japan where I learned to be comfortable with being alone—something that had always been uncomfortable for me.
I built and open-sourced this website, a project that I’ve wanted to do for a long time. If you like it, you can make your own here.
I’m in the testing phase of my next major release of Splitsies, which incorporates something I’ve always wanted to work with—computer vision.
I’ve learned a lot about myself in the last five months, especially regarding what to do when I have complete freedom. It seems like such a simple idea, but when actually faced with it, I’ve discovered how profoundly difficult—yet fulfilling—it can be.
I’ve grown so much more in the last five months than I ever could have if I hadn’t quit my job or had just moved to the next one, and I’ve become a better version of myself through this experience.
I’m planning on pushing the next major release of Splitsies soon and exploring some ideas that I have in the travel space.
It’s been great doing my own thing for a while, but I do miss being back in San Francisco. I miss the collective endeavor of working with coworkers. I miss my friends and family. This last point cannot be understated, though it often is in articles such as this that espouse the virtues of quitting. My friends and family are my greatest asset, and no amount of new experiences can replace that. I definitely anticipate being back in San Francisco full-time in the near future.
My sabbatical has forced me to look at different aspects of my life with a fresh perspective. I will try and be mindful of the lessons learned and experiences gained (writing this article is one such attempt) while staying open to new ones.
Please do not hesitate to reach out if you have feedback on my writing or would like to discuss any ideas. This is my first semi-long-form post, so I greatly appreciate those who have stuck around to the end!