DEV Community

Dave
Dave

Posted on

Every Step Mattered: My journey from English teacher to Software Developer.

I graduated in 2013 with a Bachelor of Arts in Economics. I came straight to Japan to teach English, abandoning everything I knew to restart my life, a common story you may hear from people who have lived in Japan for a while.

A lot of people have asked me how I eventually made the switch from English teacher to Software Developer, and I had repeated my story so many times that I finally have the confidence to write about it. I’m not a very good writer, so forgive me for not being able to tell a good story. Luckily, I’m fairly logical, so I can tell a coherent story. I think. I hope?

My Timeline

As of this writing, I have been in Japan for 9 years. If I were to summarize my time here (relevant to getting to where I am now) as concisely as possible, it would look like this:

Timeline (Years) Milestones
1 Began JET Programme, teaching English in Japan
2 Got JLPT N3
3 Got JLPT N2
4 Started Learning Python (with MIT 6.00.1x)
5 Got JLPT N1; Python (with MIT 6.00.2x); Completed JET Programme; Began Direct Hire English Teaching Position
6 Started Learning JavaScript; Free Code Camp; The Odin Project
7 Began Data Structures and Algorithms ; Edabit; Codewars; Leetcode (Roughly 30 minutes a day for just over a year); Restarted The Odin Project (gave up for some time)
8 Completed Direct Hire Position; Began Unpaid Internship at a Tech Startup (6 months); Completed Internship; Began Full Time Developer Job at another Tech Startup
9 Full Time Developer at Tech Startup (continued)

I also started a lot of other courses (CS50X, University of Helsinki, and a few other courses) but didn’t get far enough for them to have been noteworthy additions to my skillset.

Skilling Up

Years 1-5: Not really getting anywhere

Years 1-5 were very shaky for me.

I didn’t spend more than 2-3 hours a week on learning. I regret this to this day, as I would probably be several years ahead in my career had I just taken it seriously. However, I have the attention span of a rock and my focus wavers and disappears completely for weeks at a time. Spoilers: I’ve been trying to write this article for a year.

Year 6: Starting to see skills developing

By year 6, I had 2 courses completed: EdX’s MIT 6.00.1x, and 6.00.2x. These courses would go on to become the anchor to all of the Python I know today. They were very hard courses; I would only recommend them after spending a lot of time struggling and trying to not drown in other courses/materials such as Exercism.io.

Year 7: Ramping up

Year 7, however, put my anxiety through the roof and had me in panic mode nearly every waking hour. What was I going to do after being an English teacher? Up until then, I was coding for fun, but now I really needed to make a decision. It was do or die. I did not want to end up with only English teaching skills. I love kids, and I love teaching—but I knew that I would forever regret it if I didn’t make a big change soon.

Thus, I took the plunge and decided to go hard at year 7.

I restarted The Odin Project and went at it for about 10-15 hours a week, nonstop, for one full year. 90% of my time here was spent fighting my IDE or wondering why my code didn’t work. Turns out this is exactly what it’s like on the job 🙂.

This disciplined learning got me through the Fundamentals portion, and got me right up until the React portion of the JS track. By now, I had already been doing some simple data structures and algorithms and had also had a taste of CS50X for some computer science goodness. It was time to finally apply to jobs.

Year 8: Unwavering Discipline

Nothing interesting to write here. I spent every waking hour thinking of code; thinking of how to solve a problem at hand. I tried really, really hard to write like a developer, think like a developer, and surround myself with tech people. I was determined to fake it till I made it. This brings me to...

The Job Hunt

From the time I started coding regularly to the time I landed a position, about 3 years had passed.

Over the course of 9 months. I meticulously tracked every company I applied to on an excel spreadsheet. I wanted to find out where I was getting stuck, why I was getting ignored, and how to improve from each and every rejection.

However, as good as that sounds on paper, I was no where near mentally prepared for the amount of rejections I would get. There were numerous periods where I wanted to give up. It was crushing. I had sleepless nights as I awaited results, and other nights wondering if I would need to go back to Canada.

The results of my job hunt consisted of:

157 applications

13 interviews

5 second interviews

3 final interviews

and....

1 offer


Ultimately, I landed a position at a startup, where I am wearing many hats—I am a project manager, a software developer, and a simultaneous interpreter. I’m happy to be here, as I get to use all of my skills acquired throughout my years as a teacher.

If I were to describe the top three things that helped me on this career switch, my shoutouts would go to:

  1. The Odin Project
  2. CS50
  3. Twitter's #100DaysOfCode challenge

I hope you were able to learn something from this article. Grit can take us very, very far. I am still very much a baby to this journey; switching careers wasn't the end goal, it was the first step.

Top comments (5)

Collapse
 
naruaika profile image
Naufan Rusyda Faikar

Thanks for sharing!

Collapse
 
willzmu profile image
Wilfred

Congratulations on working hard throughout the years to land your dream job. I had a similar experience starting as a developer. Would be good to hear more about your experience working at a Japanese tech company. I have been job hunting for tech roles there as well.

Collapse
 
jeremyf profile image
Jeremy Friesen

Thank you for sharing your journey; and welcome to the adventure that is software development.

I know that my non-coding language classes (e.g., English) were critical in my software development career. These classes equipped me to write to communicate. And software is all about writing to communicate with the compiler/interpreter and future folks who come along to work on the code.

Cheers!

Collapse
 
adigson profile image
adigson

Full of words of encouragement yelling..."don't give up!"

I'm glad you didn't...

Thanks to the Almighty who helps you with...

patience

resilience

goalgettingspirit

Collapse
 
qureshi81 profile image
qureshi81

Insightful.