How I Became a Self Taught Developer
August 13th 2020
introduction
This is the story of how I became a self taught web developer. I'm going to start from when I specifically started to go down the web developer path, which was the summer of 2019. At that point I had recently moved from Atlanta, USA to Stockholm Sweden and gotten a job with a Swedish FinTech company. I was basically doing more technical support.
After working for a few months in Sweden I found that I had plenty of time to learn and explore interested while at work. This was built into the job that I had and pretty early on I decided that I was going to take full advantage of it. In August 2019 I started my journey.
Picking a Language βοΈ
I knew I wanted to get serious about learning to program. But like every other unguided learner I was not sure where I should start. I think I did some googling or youtube research on 'what's the best programming language for beginners' and somehow decided on JavaScript. Python was another popular starter language but it seemed too 'hyped up' for me at the time and I wasn't too sure if there were Python jobs in the world.
At this point I did not understand why one language was used over other languages. Additionally, I had no idea how leaning to code in 'language X' would set me up for 'job Y'. For example, learning HTML, CSS and JavaScript would set someone down a path of becoming a web developer. Where learning a language like Java might set you down more of a back-end path.
Getting Started
I started with codeacademy.com. I took their Learn JavaScript course in my free time at work. I thought I was getting pretty good and started to understand some things about JavaScript and all was well in the world. After the course I quickly realised that, although I could create functions and variables, I really had no idea where to go from there or how this was useful at all.
I like to think about this time as the 'I don't know how much I don't know' time. I knew that I did not want to learn HTML and CSS though.
"those arenβt even programming languages anyway, what's the point?."
I had no idea what I was thinking and until I met with an actual web developer to show him some stuff I was working on.
π₯ Accelerated Growth / Tools I used to learn
One day at work I saw a colleague of mine showing some non technical folks how to create a web page using HTML and a text editor. I knew the guy was a web developer but I did not know him personally or have any contact with him at all. I created a meeting with him to show him what I was working on and during the meeting I think he saw that I had no idea what to do with HTML so he told me to go learn HTML using this site HTML Dog.
HTML Dog was cool but I found Internetting Is hard to be better for me. I loved the illustrations and the way information is explained.
At this point things were clicking for me in a way they were not when I was just in JavaScript only land. Putting HTML/CSS and JS together really helped me to see the larger picture of how the web works.
I was off and running at this point. I used my jobs learning budget to buy a book on JavaScript called Eloquent JavaScript (which is free online too). This book helped me understand the fundamentals of JavaScript. Along with clarifying some nuances of the language that I was never really sure about. I love this book and would recommend it to anyone looking for a JS book.
π The Coding Train! π I can't say how much I enjoyed his videos. He really makes learning fun and entertaining to watch. I've learned so much from his videos. Specifically his series of videos on ES6 JS, but all of his content is golden!
Tania Rascia's site πΎ is/was another resource that was super valuable to me. The first post of her's that I stumbled across was about connecting to a Pokemon API. I thought her content was lots of fun and super easy to follow. My first 'real' project was based off of her material. To this day I have about 6 or her articles bookmarked. I can't recommend her content enough.
Project Mode π©πΎβπ¨
It's been six months since I started my journey. I was feeling pretty good about all the progress I had made so far, and dipping my toes into the every so tempting JavaScript framework pool ππ½ββοΈ.
Something had changed in my quest to become a web developer. I got out of tutorial zone and into Project mode. No longer was I following along this or that content to recreate the projects I saw other people making. I was making my own stuff, with my own ideas. That felt great!
A milestone project for me was to build a clone of Jira/Trello (I know those are pretty different things). My job gave me a full week to build the project and I treated it like a serious professional kind of thing. I was going to start on a Monday and deliver it(to myself) on Friday.
It ended up being π The Myra Tracking App. I was pretty proud if it. Knowing what I know now I'd like to recreate this application one day using all the things I've learned in the meantime.
Job Searching Mode
About 9 months since I started my coding journey, I started applying for job openings. I was pretty confident about my skills while also feeling like I needed to test myself in the real world. I knew that if I was able to get into job interviews I would get more feedback on my skills and then use that feedback to become a better candidate for other jobs.
I applied to roles within the company I was working at and external roles. I knew that it'd be much easier to move internally within my current company then convincing some other company I was going to be a good web developer in the future. However, I was running in lots of road blocks at my company. They were only looking for candidates that have experience and there was basically no room to hire junior devs π€¦ββοΈ. Needless to say, I was pretty disappointed in finding this out, but that did not stop me.
My new plan was to go on a networking spree. Meet all the web devs I could and all the managers I could to show them work and let them know what I was trying to do. I figured the wider my net was cast the better chance I had at getting a job. In addition to this internal plan I was going to Meet-ups and networking with external people too.
It turns out networking works! I was in the interview process for about 3 external web dev roles, doing coding challenges and phone interviews and all that. Exiting times! But then π¦ COVID-19 π¦ happened, and within a week of each other all of those interview processes dried up. Bummer!
The job market in the future was looking pretty bleak. Lots of folks were losing their jobs around the world and the world economy was shrinking. I needed a new plan.
Job Searching Mode part: II
I decided I was going to take this global 'time-out' as a time to sharpen my skills even more. I could not effect the job market, but I can improve my skills in the meantime. I wanted to make myself into the best candidate I could possibly be. I looked around for areas where my skills were weak and actively worked on improving those areas.
I picked up a CSS Secrets by Lea Verou. Someone at my company knew that I was looking for experience so they found an open source project that needed some help and put me in contact with them.
While all of this was going on, my internal networking was starting to pay off! The recruiter for my company (who saw that I applied for every web dev job and told me several times that I did not have the required experience for the roles I was applying for) reached out to me and said she found a role that would fit for me and put my in contact with the hiring manager.
This led to a technical interview where I was asked to live code an application with two senior devs watching and asking questions the whole time. Stressful! But again, my networking was paying off. I had previously met with these two developers and they knew who I was and they knew my story.
π GOALLLLL π
55-weeks after starting my coding journey. In August of 2020 I found out that I got a role as a full time π¨π½βπ» Software Engineer!
After so much hard work, it felt really good to achieve my goal. But in truth it feels like a new, bigger journey is beginning. I have so much more to learn and I can't wait to get started.