Found a dev job, after 15 months of self study

Hey guys,

I had an interview last Friday, with a company in Tokyo, and showed them my project (link below), a full-stack single page application I built and deployed to Heroku. It uses data from Taiwanese government on birth statistics, pulls data from government API, and user can store these data on their own account on this SPA. It’s really for showcasing my skill, not much practical use.

Took me 3 months to build, prior to this I had zero knowledge of Vue.js and PHP. Had to learn everything from zero.

https://vue-lumen-passport-mail-v2.herokuapp.com/

  • Front-end: Vue.js (with bootstrap, vue-router, vuex)
  • Back-end: Lumen/Laravel (PHP)
  • Database: MySQL
  • Authentication: Laravel Passport
  • Email service: MailGun
  • Testing: JEST and phpunit

Interview
The CTO along with CEO and a front end dev talked to me, mostly about what I made. I went through the general structure of my project, explained

  1. How I authenticate my user, with token
  2. How I allow my user to reset password, again using token
  3. How the front end communicates with back end
  4. How I test my front-end and back-end using JEST and PHPUNIT
  5. How I learned all this stuff without actual work experience and bootcamp

They were quite impressed, and decided to hire me.

Thank You FCC
I want to express my thanks to freeCodeCamp, this is where I started in 2019 June 10th, around 2PM afternoon. I was unhappy with my job back then and decided to look for other jobs, then somehow being a web developer crossed my mind as I browse through all the job postings on indeed.

Some struggle I went through
1. React.js
I hit a major roadblock in my learning, 3 months into learning web dev, when I encountered React.js, I just couldn’t wrap my mind around its concept, and got discouraged, and put off learning for almost 2.5 months. In hindsight, I wished I could’ve just gotten discouraged but hung on anyways, which would’ve saved me 2.5 months of wasted time.

2. Job Market
I began searching for job around April 2020, which was a disaster in my opinion. During that time I got shutdown so many times because I was a newbie with no experience. This time instead of getting discouraged, I simply shrug it off and continue my study and stopped job hunting. It was this time when I learned Vue.js and PHP backend.

Below are what I consider important in getting hired

ReadMe for Github
I had no idea how to write a decent ReadME file on Github, which I discounted as something of low importance, turns out it serves as the first impression for strangers looking at your Github Repo. Do understand how to write a decent readme, it’s almost like makeup for girls.

Full-stack Project
If you really want to impress people, build a full stack project and deploy it. Your company might not need a full stack dev but it shows that you’re able to learn, as a newbie, and full stack is the best to impress people.

Deployed project (Heroku)
Whenever you have a project written, deploy it. Deploying makes it a complete project, not just some silent code sitting on Github. People with low patience would rather click on an url to view project live, instead of cloning from Github and running on local server, at least that’s what I think.

Show that you are a self-starter
As a newbie, our biggest advantage is, being a newbie. People already know that we are newbs, so the only thing they expect from us is, if we can demonstrate that we are able to learn skills, the ability to learn new things on our own. This really makes all the difference. Otherwise they wouldn’t bother interviewing me, a newbie.

Go to the gym
This is not a joke. I’ve been unemployed for almost 6 months and literally all I do everyday is coding, hitting the gym and cooking. Gym or just exercise, is what keeps your brain fresh. People who exercise regularly, will perform much better at cognitive task than people who don’t exericse. I’ve been bodybuilding for the past 4 years and I spend at least 2 hours a day working out. Exercising is what keeps my brain alert, attentive, and optimistic.

At last, do not compare yourself with other people
I know you see many posts on FCC, or other forums about, people studying for 3 months and found a job, or I LANDED A JOB AT UBER AFTER 6 MONTHS OF SELF STUDY, or TRANSFORMED FROM DEADEND JOB TO HIGH PAYING WEB DEV IN 4 MONTHS!

Things like this, really get people discouraged especially when they compare their actual progress, with those, possibly false claims on social media.

What you see at surface and what actually exists, there’s a huge difference. Most people brag about their progress, that’s exactly what our social media modern world is about.

I can put it bluntly, people who studied for 3 - 6 months, usually can only build simple front or back end application. Even if it’s full stack, most likely they got it off some udemy course or Youtube tutorial, like a TODO LIST app. In that case, if someone just simply follow through a Youtube video and built an app, how qualitative is the knowledge he/she has?

I’m not saying don’t follow Youtube tutorial, I’m saying after following it and learning some tricks from it, incorporate it into your own work. Don’t just use a tutorial to apply to jobs.

Anyone who’s self-taught, been non-stop learning for at least 12 months would know that, the amount of possible knowledge a human can absorb, that there is a limit and usually it is not very impressive.

Even people who go to bootcamps, in my opinion, I really don’t know how much knowledge they actually absorbed. Bootcamps are 2 month long, 12 hour a day intensive learning. I personally can’t focus for that long and I doubt more than 0.001% of human population can. The only thing good about bootcamp is that, they connect you with employer and gurantee employment after finishing their $12,000 bootcamp.

Realistically, humans can only focus for about 1 -2 hours, if it’s very cognitively challenging. Learning new skill is very cognitive intense mental labor.

Go easy on yourself
If you feel like you hit a roadblock, just relax and come back to it later. Human brain works at best when it is used intermittently , 2 hours work 3 hours rest, then followed by same cycle. I think I only programmed for about 2 hours on a bad day, and 6 hours on a good day if I’m really feeling the flow and rhythm.

Anyone who claims they are coding 8 hours a day, and most of that time is learning as a newbie, I’d say most likely they are exaggerating. Amount of hours you put in aren’t directly related to building skill/knowledge anyways. Sometimes you learn a lot in 10 minutes, sometimes you get stuck and spend 10 hours and still don’t move forward.

In the end, effort is important, but use it wisely, When you feel you’re really tired, just take a break, go to the gym or out for a run, come back to it later. Your brain needs a rest.

Cheers,
Codey

107 Likes

I’ve been learning to code for the last 6 months and you just gave me kind of the hope im needing right now, great luck with your new job, congrats, and thanks !

11 Likes

Congrats man. I’m just curious, do you have a college degree of any kind?

2 Likes

Awesome work, Codey!

Coffee and a good read makes the day of a hustler,
and you made my day @dulerong

More power to you Codey!!

Good Luck :four_leaf_clover:

P.S. You got pretty good writing skills too :heart:.

4 Likes

Congratulations!! and most of all Thanks for sharing your experience and being truthful. I am currently at the position where I feel like I know React but can’t get my head around it when I have to really build something with it on my own.

And I think I should learn more… Thanks :slight_smile:

1 Like

Awesome post, Codey, and congrats on your new job! What you said about 3-6 months, etc. is very affirming. The app looks very cool and it’s so impressive that you put it together with all these new technologies. Hopefully in a year I will be able to create something on that level.

BTW, how is heroku? It took a long time to load, is that because it’s located in Asia? (I’m in the US)

Congratulations to you, and Thanks a lot for sharing your experience.

Heroku takes a while to load, I’ve experienced this with several projects I’ve deployed. Maybe it’s because I’m writing newbie codes that’s making it run slow, or it’s just because Heroku is slow. Since I’m using it for free, can’t complain too much.

I’d recommend watching Youtube videos like Traversy Media, or any videos on making php laravel back end, coupled with Vue.js front end. They are what taught me the basics, then I just incorporate their ideas into my project.

2 Likes

Thanks, I know talking to people, the way you put your words together often is more important than what is actually told. Hence I try to make impressionable speech, at least I try to.

1 Like

I have a degree, nothing related to computer science/engineering though.

Very cool, thanks for the tip about Traversy. One more question, if you have time :). How much php did you need to know, generally, before diving into Laravel?

this is a great read, thanks codey. realistic, honest and very relatable. good luck with the new role. pomph :v:

1 Like

Congrats!! Thank you for all of this. I will look into writing github ReadMEs

very inspiring thank you for this

Thanks for sharing this

Congrats! This is very inspiring. I feel the same. Started my journey in May and I am now working on JS having learned CSS and HTML. I can reverse engineer websites pretty well but learning JS is another level.

Coding for 2-6 hours a day is about right. Takes a lot more brain power to self learn than to have someone teach it to you. I found that small coding sessions about 20-30 mins at a time highly focused and short breaks about 5 mins or so works best. Getting up off the computer and doing some stretching or something else is best. Don’t fall into the trap of doing something else on the computer or you lose focus and old habits like browsing social media come back.

3 Likes

I knew zero, nothing about PHP. However when I started learning PHP, I already have done roughly 1 year of JavaScript.

I started out watching Youtube’s Traversy Media’s crash course on PHP, went through a few videos, after which you’ll see that PHP and JavaScript aren’t that different. Yes they are different languages but they work pretty much the same.

After learning PHP just by watching Youtube videos, I watched more videos on Laravel, also done by Traversy Media. Then I got the hang of it, and incorporate it into my project.

In my case, from knowing zero PHP to being able to make the project in my URL, it took me about 5 weeks. I took 1 week to learn basic PHP, and 1 week to learn Laravel, and the rest 3 weeks were spent on putting that knowledge into work, into building my project.

4 Likes

Thanks alot for sharing your experience, i just started my journey on web dev and i feel JS is giving me a hard time. But i hope to bounce back.
Once again Thanks and Congrats on your Job.

That is very cool. Sounds like your foundation in JS really helped you with Laravel. A very nice achievement, indeed! Thanks for sharing your journey.