In 2017 I wrote I just don't want to be a software developer anymore. The post went viral and continues to get traffic. Some people have asked where I am now. Reader, I'm a software engineer.
At the time I wrote the post, I didn't feel comfortable writing all the details of my situation. I had been working at an agency and accepted a voluntary transfer to work on the "embedded" team at Google in Silicon Valley. I wasn't going to be a Google employee, but I thought it would be good for my career. I rented my apartment out, had a goodbye party, and sold/gave away a ton of stuff. I figured since housing in Silicon Valley would be expensive, I wasn't going to have much room. I got temporary housing in San Jose.
A week before the move my soon to be manager invited me to a meeting. With Uber. He was changing my placement from Google to Uber in San Francisco. San Francisco was quite a ways away from San Jose. AND this was the "strange year at Uber" year so the idea of being the only embedded dev at Uber gave me pause. They informed me that I worked for the agency so I'd work where they wanted me.
It all came to a head my last day of work. I got a Slack message telling me I needed to take a code test for Uber. It was one of those "take home" exercises that claims it takes 2 hours but actually takes 6. I asked for an extension and they demanded I do it during the PTO I was taking for my move.
I made many mistakes. I took a bad relocation package that not only required me to take PTO, but didn't specify the terms of my placement. I felt my only choice was to quit. And I did.
I started interviewing but at that point I just didn't have the morale to go through the software interview process. Software interviewing is broken and even at my best I found it demoralizing. Since I had savings I took a break. Unfortunately I was really really really depressed. And it's not easy to change your career in that situation.
I did therapy, a vocational leather work program (turns out I'm not very good at it), saw doctors and tried to figure out next steps. I found myself coding for fun quite often. Evenutally I had to accept the fact that I liked coding and it was fun for me. It's also a good career. And I didn't have any other realistic career prospects. Paying for health insurance was rapidly depleting my savings. So it was time to think about coding jobs again.
On my post someone recommended the book Developer Hegemony which I enjoyed. I wrote the author Erik Dietrich and started doing freelance developer content marketing for his company Hit Subscribe. This was a valuable experience and I found I enjoyed the intersection between writing and code.
I also built Curlsbot which ended up being somewhat popular in the curly hair community. When I prototyped it, first as a Facebook Bot, I used Glitch and fell in love it it. So when Glitch opened up a content marketing position I applied and joined the team. Their interview process was thankfully not demoralizing! Originally my title was just "Developer Content Marketer" but as the team has grown and evolved and I found myself with the engineer title again. My work is posting here sometimes and also working to show neat ways to use Glitch. So it's a very different job than I had when I wrote "I just don't want to be a software developer anymore."
My health has always affected and been affected by working in software. I got some diagnoses that explained some of my struggles: ADHD and idiopathic hypersomnia (it's narcolepsy's less well known cousin). Getting treated for those has helped a lot though finding the right medication has been ... a journey. I found some things that helped my random pain and migraines (tinted glasses, percussive massage). All these things were expensive so it helps to have a job.
I've gotten so much feedback from engineers, mostly who want to leave. And talked to a few who have left. I'm hoping by working within the industry I can help fix some of the issues that made me want to leave software engineering forever.
Some things I took away from the experience:
- Work problems are structural problems that require large scale change to solve, so don't blame yourself if you can't solve them
- Putting the burden on the individual to negotiate things like salary (a la "Lean In") or fix hiring practices is a losing strategy. We have to organize and exercise worker power to get fair pay and working conditions
- Even if pay is good in general for engineers, unfair working conditions and inequality within a workplace can cause a lot of stress
- There are other options for coders who don't want to be product engineers, though it can be hard to break into them