Introduction
I decided this spring that I want to become a Full Stack Developer. I looked around at coding bootcamps, but I felt that for my own schedule & commitments that teaching myself would be most effective.
Ultimately, I decided to come up with my own path and here's how!
Table of Contents
Start with Goals
The first step on this journey was to identify my goals. The focus on goals helps when important questions come up, which there are a lot of when you're on your own.
Personally, I've been interested in work from home jobs and flexible scheduling. I also like working on creative projects. A lot of this was already work I have been doing as a hobby, so I'm well situated to dive in deeper. Plus it'll make my already existing sites more sharp.
Long story short, I landed on web development as a good investment of my time.
Path to Full Stack Development
The process
The first step to actually making this all happen was to figure out the process from beginning to end.
It went something like this:
- Research and compile a typical curriculum for Full Stack Development.
- Find suitable books to read.
- Decide on which portfolio projects to make.
- Keep focused and follow the timeframe.
My goal is to be done in roughly 6 months to a year from when I started in March.
The timeframe for completing this is flexible since there's no way to really know how long it will take initially, but as I go it's easier to get a sense of how long I'll need to read books, work on projects, etc. Keeping an time log of hours spent on portfolio projects also helps.
Curriculum
For the curriculum iteslf, I landed on these units as the important areas to cover:
- Fundamentals & Foundation
- Web Design
- Frameworks and Libraries
- Databases and Backend
- Security, Deployment and Operations
- Workflow and Nailing the Interview
Coming up with portfolio projects has been just a matter of looking at what areas of my own life have related needs that web design skills can actually solve.
My first project since starting, Ludo Air, is a combination of my love of flight sim and my already existing online studio, LudoLoon Studio.
This website of course serves as portfolio to show off my web progress. My next project I'm thinking of is a Social Media Dashboard since I'm sick of dealing with Instagram and Twitter directly lol.
Reading List
Here's a list of some books that I've either been reading, or will get around to reading by the end of my studies.
The most helpful ones (to me personally) are in bold. Some of these I had read previous to officially starting this project, but I went back and reviewed them to take notes.
NOTE: This evolves as I get through the books and sort which ones are actually useful or not.
Fundamentals
- Learning Web Design - A Beginner's Guide to HTML, CSS, JavaScript, and Web Graphics (2018, O'Reilly Media)
- Git Basics
Web Design
- A Web for Everyone (2014, Rosenfeld Media)
- Design Systems - A practical guide to creating design languages for digital products (2017, Smashing Media).
- Distributed Git
- Don't Make Me Think (3rd ed.) (Voices that Matter)
- Information Architecture - For the Web and Beyond (O'Reilly Media, Inc.)
- The Principles of Beautiful Web Design (2020, SitePoint)
- Rocket Surgery Made Easy (Voices that Matter)
Javascript Frameworks and Libraries
- JavaScript - The Definitive Guide - Master the World's Most-Used Programming Language (2020, O'Reilly Media)
- JavaScript Everywhere: Building Cross-Platform Applications with GraphQL, React, React Native, and Electron (2020, O’Reilly Media)
- Learning React Modern Patterns for Developing React Apps (2020, O'Reilly)
- Mastering React Test-Driven Development (2022, Packt Publishing)
Databases and Backend
- Full Stack Web Development Guide - Everything Node JS, Express, APIs, EJS, React JS, Database Fundamentals, SQL Databases (2022, Independently published)
Security, Deployment and Operations
- The DevOps Handbook - How to Create World-Class Agility, Reliability, & Security in Technology Organizations (2021, IT Revolution Press)
- Web Security for Developers (2020, Random House LCC)
Workflow & Nailing the Interview
- Design Is a Job (2022, A Book Apart)
- Cracking the Coding Interview (2015, CareerCup)
- The Art of Agile Development (2021, O'Reilly Media)
Sticking with it
As you can imagine, the easy part is coming up with the roadmap.
In order to get through the curriculum it's important to have a schedule. I've been setting deadlines to make sure that I don't get stuck on one project and risk the whole effort getting sidetracked.
Writing everything down is crucial. I use Zim Wiki which makes it easy to connect documents, but any good notetaking app will do.
- Spreadsheets for hours worked on projects.
- Tasklists for next steps.
- Notes of what you've read or planning projects.
Calendar reminders and keeping tasklists for when I have a moment to work remind me what steps I'm on currently or what I need to be reading.
Staying well is crucial, which means taking breaks when burnt out and scheduling time to take care of yourself as well.
Assessing study progress is an important process as milestones are acheived. This means deciding on next steps like what book to read next, framework to learn, or portfolio project to do.