Today's interview is with a digital nomad, Mark, who studied Japanese Literature but has been hired by Groupon and recruited by Google and Facebook many times. Mark is a great example of someone who made a successful career change to web development despite doing something totally different at university. Read on to hear his inspiring success story.
Hey, so can you introduce yourself?
Hi there! I'm Mark and I grew up in Colorado, near Denver. After graduating with a B.A. in Japanese literature and getting rejected for the JET program to teach English in Japan, I moved to Taiwan to teach English and study Chinese.
I love language learning and have been a digital nomad the past few years, largely to explore more places, people and cultures. Recently, the Covid-19 pandemic has made being a digital nomad untenable, so I really had to hurry to get residency in Taiwan again, this time on an entrepreneur visa.
How did you go from teaching English to programming?
It really wasn't that easy of a process. I had a lot of friends who were programming when I was in high school, and I've always been into computers but there's a lot to learn before really becoming employable. I kind of attacked the problem from both sides.
On the job hunting front, I leveraged my other skills to get into an iOS educational platform start-up in Beijing in a semi-technical role. The fact that I had business experience running a language school in Taiwan made me a fairly attractive option as a generalist and the fact that I was bilingual was very useful since most of the developers and companies in our ecosystem were selling to the English language market. After leaving that job, I was technical enough to take on a pure programming position.
How did you get your first clients as a freelancer web developer?
That was shortly after leaving Beijing and moving to San Francisco. It was pretty tough. I was interviewing for full time jobs (and getting rejected), and going to a lot of meetups—both to learn and to make connections. I did a bit of freelance work for an old acquaintance who had also majored in Japanese but ended up in the video game industry and I also found some one-off gigs online.
I believe you did the Hack Reactor bootcamp. What was that like?
It was great. The quality of the teaching was second to none, the intensity was brutal. To this day, I'm still friends with some other students I met back then.
On a typical day, I'd get to the school at 8am for breakfast. Then, other than brief breaks for lunch and dinner, I'd be there until 10pm. I stayed until after midnight a few times. We had Thursdays off to do laundry, and mentally recharge, but the other six days a week were intense. After six weeks of that, we took a week off—during which I still did a ton of coding—and then we had six more weeks. In the second half of the class, we started doing "toy" problems for half an hour each morning to improve our interviewing skills. We did group projects and some actual interview prep in the final couple of weeks.
I was fortunate to attend Hack Reactor when I did. I was in the second class, so when I started the first class was just returning from their break week and nobody had finished yet. That meant that the founders were there all the time, and they were putting their hearts and souls into our learning. I've always felt more at ease at early stage startups, so it had just the kind of social atmosphere I love. A lot of other students were similar kinds of people who had lived abroad and taken non-traditional paths through life. Not most of them, but a good 30% or so.
Check out the best online coding bootcamps
What was the hiring process at Facebook and Google like?
The two were very similar, and so was Groupon, where I ended up working after finishing Hack Reactor. The process is basically one phone screen with HR to make sure you're not a crazy person and that your goals align with the position, one or two short (maybe one-hour) technical phone screens with a shared code editor and one brutal five hour onsite technical interview where a different person asks technical questions each hour. Both companies rely pretty heavily on data structures and algorithm questions.
I interviewed for Google twice—once right after Hack Reactor and again a couple of years later. I'm pretty sure I did really well the second time and they've reached out to recruit me several times since, but their hiring process was so slow and I was so broke that I just took one of my offers from smaller companies. Facebook is a bit quicker and they've also reached out to me a lot of times over the years since I worked at Groupon. All in all, I'd say their recruiting process is top-notch. Their recruiters are technical and they're definitely playing the long game.
It's still a stressful, time-consuming interview process but that same process is what made it possible for me to really break into the industry at Groupon, coming straight out of a boot camp.
Prepare for technical interviews with Algo Expert- "NOCS" gets you 15% off.
How has your life changed since becoming a freelance web developer?
Before I became a professional programmer, I was a co-owner of a brick and mortar business. It was capital intensive, inflexible and hard to grow. I was also tied to the location and my earning abilities as an employee were very limited if I were to leave.
As a programmer, I have vastly better entrepreneurial opportunities available, I've been able to travel easily, I've been able to take on remote contracts and if I do want to work full time, it will be for far more money than I could earn before.
Has anyone ever asked about your coding qualifications when you have been talking to clients? Do you think a CS degree is unnecessary now?
Not really. I think that sort of question mostly comes up at the worst sorts of jobs—bureaucratic companies that need some software written but aren't really software companies. Some people ask to see a LinkedIn profile, but in general I've found that people are more impressed when they learn I studied something completely different in school but was still able to make it in both Beijing and SF.
A CS degree hasn't ever been necessary. Some of the programmers whose work I most admire, such as John Carmack, went without a degree way back in the early 90s.
What advice do you have for someone who wants to get their first programming job but they don’t have the time or money for a CS degree?
You don't need a degree but you do need enough skills to provide value to an employer.
My advice would be the following:
- Early on, prioritize learning over everything else.
- Specialize! It's better to be clearly useful to an employer in one area than to be moderately useless at several.
- Focus intensely on a skillset with a short shelf-life, such as a front-end or mobile development framework. If you focus on something like Java, .Net or system administration, you'll be competing against people who have been doing it for a decade.
- Once you have skills you think might be employable, start growing your network. Document your learning in a blog. Go to meetups. Talk to people and make it clear you're searching.
Have you ever had impostor syndrome and if so, how have you dealt with it?
That's really hard to say. I never even heard of the term until Tony, a co-founder of Hack Reactor, mentioned it to me in reference to myself. I guess I did have some degree of impostor syndrome, not in that I thought I was horrible, but in that I thought anyone who was in a top tech company or a YC founder, etc, was so incredible as to be impossible to keep up with. I still think that's true of a few of those people, but only a tiny percentage.
Maybe what's helped me most about living in SF and then Mountain View was seeing so many people with impeccable pedigree doing so many things so poorly. Stanford clearly has a higher percentage of amazing people than the state school I went to. But for most of their alumni, getting into the school is the most impressive thing they've ever done. The other 30% go on to do amazing things. But for most, getting in is the key achievement. The credential opens doors for the rest of their lives but it certainly doesn't mean that outsiders resourceful enough and energetic enough to open those same doors can't compete with them.
Almost nobody knows what they're doing. Even those few who do, didn't when they started. So you don't need anybody's permission to learn to code, to create open source software, to start a business or anything else you think requires being in some or another inner circle or prestigious club.
What are your career goals for the future?
I want to continue growing my businesses, get some degree of financial security and then go all-in on an ambitious startup. My screencast site is small but still growing. Next in my pipeline is a SaaS product that would still serve my existing audience but would also be usable by a wider market.
My longer-term dream is to create software that teaches English as well as my in person language school curriculum did a decade ago. But instead of it only being for a few hundred relatively wealthy people's children in Taiwan, like that school was, I want it to be inexpensive enough that it can be used almost anywhere.
When I lived in Vietnam for four months a few years ago, the GDP per person was only about $1700 USD/year. My friend there told me that being fluent in English pretty much tripled his salary. For programmers and others who could work online, the premium was even higher. As much as I love language learning, as an American, it doesn't have a high financial ROI. It's mostly a hobby for native English speakers. Even in Taiwan or Japan, English skills don't bring the huge premium they do in most of SE Asia or certain regions of Africa. It's understandable that language learning startups almost all target people with money, but it's disappointing. Widespread English literacy has so many positive externalities and the lower end of the market is badly underserved.
I truly don't know if I can succeed at this challenge or not, but it's the best mid to-long term goal for myself that I can think of.
The plan is to build resources, gain skills, evaluate the situation and then, if I have a shot of making a difference... go for it!