How to fail

I had fallen out of love with my first career of seven years — I couldn’t see myself doing it for the rest of my life — and I decided that I wanted to be a software engineer. I don’t know why I wanted to do it. I just felt a magnetic attraction. I wanted to build things. For context, I am bad at math, I didn’t know anyone who was a programmer, and I had no idea what I was getting into or whether I would like it. Friends helpfully suggested a) this was nuts and b) I was too old.

In January 0f 2014, I went to a General Assembly bootcamp for Ruby/Rails in SF. It was relatively early days for bootcamps and the experience was pretty raw. There was a large class size (they had combined two cohorts) with different levels of preparation. The curriculum was in flux. It felt chaotic. A few weeks passed, we began to hear stories about grads still looking for jobs, and a palpable sense of herd anxiety set in — were we actually going to become software engineers after quitting our jobs and investing $10,000? I left before I had to pay for the second semester. However, I did learn a lot, there were some good instructors, and a number of my classmates went on to great careers as web engineers, but it didn’t seem obvious at the time.

I then took a month to build a front end portfolio, and bootstrapped myself as a JavaScript contractor applying for small projects. This early focus was productive — I actually landed some work. But just as my optimism was up, a few months passed with unsteady work, and doubt set in.

Things I learned from contracting as an independent junior engineer:

You spend as much time sourcing work as coding

Getting projects lined up back-to-back is very hard

You don’t get a lot of technical feedback

Inconsistent income creates stress at home

There is no one to tell you if you are learning the right things

I felt adrift. I started looking at what it would take to find full time employment. I had heard there were a lot of self-taught programmers in Silicon Valley. I was confused and frustrated when all the job postings seemed to indicate otherwise. Every junior web engineer posting seemed to require: “a degree in computer science or two years of professional experience”. How do you get two years of professional experience without a degree, if a degree is required? How do self-taught engineers get jobs?

I started sending out applications despite the requirements. I began to research the interview process, hoping that I’d get one. I realized I knew zero about data structures and algorithms and had no idea how to get started. Suddenly, I felt hopeless. I wasn’t on track to meet the requirements for any jobs I wanted, and I doubted I would pass the interview if I did.

It was a humbling moment. Six months in, having strained my finances and relationships, I was little more than a bootcamp drop-out and a semi-employed JavaScript contractor. So I made a very practical decision—I gave up. I told friends and family I had made an impulsive and expensive mistake, and I found a job that was a better fit based on my prior career.