Completed all 9 FCC Certificates, including the Legacy certs!

34 years old, I just finished all nine FCC certificates. I finished the three legacy certificates earlier this month, and afterwards I spent the rest of the month going back and finishing all the missing projects for the six current certificates.

I started freeCodeCamp in June 2015, and here I am! Back then, FCC’s curriculum was a lot different from today’s (and a lot tougher). Hard as it was, I set my mind to never giving up, and here I am!

I hope this will inspire people to keep going and overcome any doubts and challenges you might have, and just keep going. FCC has been such a huge part of the last four years for me, it honestly feels like I’m graduating from college right now. The lessons of persistence and problem-solving I learned from FCC I’m going to carry with me all my life.

I went through my calendar and journals to make a rough timeline of the entire process:

JUNE 19, 2015: started freecodecamp. HTML challenges (1 month)
JULY 17, 2015: basic programming algorithms (1 month)
AUGUST 17, 2015: javascript challenges (1 day)
OCTOBER 14, 2015: (PROJECT) built a personal portfolio webpage (2 months)
OCTOBER 19, 2015: (PROJECT) built a random quote machine (5 days)
NOVEMBER 7, 2015: (PROJECT) built a pomodoro clock (3 weeks)
NOVEMBER 22, 2015: javascript challenges (3 weeks)
DECEMBER 10, 2015: (PROJECT) built a local weather app (2.5 weeks)
JANUARY 2, 2016: javascript challenges (3 weeks)
JANUARY 10, 2016: (PROJECT) built a tribute page (1 day)
JANUARY 29, 2016: (PROJECT) wikipedia viewer (2.5 weeks)
FEBRUARY 15, 2016: (PROJECT) tic tac toe game (2 weeks)
FEBRUARY 24, 2016: (PROJECT) simon game (9 days)
FEBRUARY 24, 2016: (CERTIFICATE) legacy front end web development (8 months)

FEBRUARY 25, 2016: javascript algorithms (1 week)
MARCH 20, 2016: (PROJECT) markdown previewer (1 day)
APRIL 18, 2016: (PROJECT) camper leaderboard (1 month)
MAY 16, 2016: (PROJECT) recipe box (1 month)
JUNE 5, 2016: (PROJECT) game of life (2.5 weeks)
JULY 3, 2016: (PROJECT) roguelike (1 month)
JULY 3, 2016: learned d3 (1 month)
JULY 30, 2016: (PROJECT) bar chart (1 month)
AUGUST 5, 2016: (PROJECT) scatterplot graph (1 week)
AUGUST 9, 2016: (PROJECT) heat map (4 days)
AUGUST 18, 2016: (PROJECT) force-directed graph (9 days)
SEPTEMBER 13, 2016: (PROJECT) map of meteorite landings (1 month)
SEPTEMBER 13, 2016: (CERTIFICATE) legacy data visualization (7 months)

SEPTEMBER 14, 2016: learned express + back-end stuff (1 month)
OCTOBER 8, 2016: (PROJECT) timestamp microservice (1 day)
OCTOBER 12, 2016: (PROJECT) request header parser microservice (4 days)
OCTOBER 21, 2016: (PROJECT) URL shortener microservice (9 days)
OCTOBER 27, 2016: (PROJECT) image search abstraction layer (6 days)
OCTOBER 30, 2016: (PROJECT) file metadata microservice (3 days)
OCTOBER 31, 2016: started learning how to build web apps with pug, jade & templating engines, user authentication (3 months)
JANUARY 27, 2017: (PROJECT) voting app
JANUARY 28, 2017: learned how to set up webpack + babel, react, react router, authentication (10 months + long break)

FEBRUARY 2017 - OCTOBER 2017 - the 8 month desert of very low programming productivity and learning (i must have been very discouraged by the slow-going of figuring out react & react router, and passport JS + JSON web token setup. a brad traversy tutorial is what got me out of the malaise.)

NOVEMBER 13, 2017: (PROJECT) nightlife coordination app
MAY 16, 2018: (PROJECT) chart the stock market (6 months)
NOVEMBER 14, 2018: (PROJECT) book trading club (6 months)
NOVEMBER 23, 2018: brush up on react + redux, old fcc challenges (1 week)
NOVEMBER 23, 2018: (PROJECT) build a drum machine (1 day)
DECEMBER 4, 2018: information security challenges (1 month)
JANUARY 8, 2019: (PROJECT) pinterest clone app (2 months, 42 hours)
JANUARY 8, 2019: (CERTIFICATE) legacy back end web development (2 years, 4 months)
JANUARY 8, 2019: (CERTIFICATE) legacy full stack certification (3.5 years)

JANUARY 9, 2019: (PROJECT) metric imperial converter (1 day, 5 hours)
JANUARY 10, 2019: (PROJECT) issue tracker (1 day, 2.75 hours)
JANUARY 11, 2019: (PROJECT) personal library (1 day, 1.5 hours)
JANUARY 11, 2019: (PROJECT) stock price checker (1 day, 4 hours)
JANUARY 13, 2019: (PROJECT) anonymous message board (2 days, 3.25 hours)
JANUARY 13, 2019: (CERTIFICATE) information security and quality assurance (6 days, 16.5 hours)
JANUARY 13, 2019: revisited and completed APIs and microservices challenges (1.75 hours)
JANUARY 13, 2019: exercise tracker (2 hours)
JANUARY 13, 2019: (CERTIFICATE) APIs and microservices
JANUARY 14, 2019: revisited data visualization challenges (1.1 hours)
JANUARY 17, 2019: (PROJECT) chloropleth map (4 days, 4 hours)
JANUARY 20, 2019: (PROJECT) treemap (3 days, 3.25 hours)
JANUARY 25, 2019: revisited responsive web design & sass challenges (5 days, 2 hours)
JANUARY 26, 2019: (PROJECT) technical documentation page: (1 day, 3 hours)
JANUARY 27, 2019: (PROJECT) product landing page (2 days, 1.5 hours)
JANUARY 27, 2019: (PROJECT) survey form (1 day, 1.25 hours)
JANUARY 27, 2019: (CERTIFICATE) responsive web design
JANUARY 27, 2019: (CERTIFICATE) full stack certification!!!

Some lessons I learned along the way:

  • NEVER GIVE UP!!! If you look at the timeline, you’ll see that there were some times when a project took me 6 months or so to make. Sometimes that happened because I hit a roadblock, got discouraged by the learning process, and my feelings were slowed me down. However, even at the most discouraging times, I never stopped opening up my projects and tweaking little things. I made it my personal mission to write at least one line of code a day. That doesn’t sound like much, but over the long run, it can get a lot of things done.
  • That being said, THERE’S ALWAYS SOMETHING NEW TO LEARN. FCC teaches you to love the whole process of learning things, being surprised by new approaches/frameworks to solving a problem, and get excited when it’s solved. It’s both humbling and inspiring to complete a project, then spend some time researching other people’s versions of it, to discover how much new stuff you can incorporate into v2.0.
  • Finally, NOTHING BEATS CONSISTENT LEARNING OVER THE LONG-TERM. I’m glad I went back to finish the remaining certificates after I finished the legacy certs. As long as it took me to get those, I had a lot of know-how to show at the end of it, because I was able to breeze through the remaining certs in just one month. I know for certain that some of those projects, especially the D3 ones, would’ve taken me ten times as long as they would have back in the day.

Next stop, doing everything I can to find a job as a web developer! Thanks for reading folks, good luck, and I’d like to make myself available if anyone has any questions or needs support around the process…



My advice on getting a job:

  1. Build stuff. Keep building. Learn new libraries. Use those libraries to build other things.
  2. Work on algorithms. This is often an important part of the interview process.
  3. Learn how to interview. Work on your soft skills. Practice answering questions. Google common interview questions. Practice with friends. These are overlooked skills.

Lastly, don’t get discouraged. It’s a field with a lot of jobs out there, but it is often very, very difficult for the right candidate to link up with the right job at the right time. I only used the word “very” twice in that last sentence - it probably should have been ten or twelve. Just keep at it. Don’t get discouraged. Every interview is chance to learn something and get a little better at interviewing.