풀 타임으로 일하면서 9 개월 만에 전체 freeCodeCamp 커리큘럼을 마친 방법

지난 1 년 동안 저는 교사로서 풀 타임으로 일하면서 전체 freeCodeCamp 커리큘럼을 마쳤습니다. 이 기사에서는 어떻게이 작업을 수행했는지 설명하겠습니다. 특히 내가 시간을 어떻게 구성하고 어떤 보충 자료를 사용했는지.

배경

첫째, 뒷이야기. 나는 코딩에 완전히 새로운 것이 아닙니다. 저는 작은 기술 회사에서 자랐습니다.

아버지는 제가 태어나 기 전에 자신의 회사를 설립하여 컴퓨터 수리, 다른 회사를위한 인터넷 연결 및 네트워크 설정, 컴퓨터 과정 교육, 기업용 관리 응용 프로그램 구축 등 기술 분야에서 다양한 활동을 수행했습니다. 그것은 작은 마을이었고, 그래서 그들은 기본적으로 전체 마을의“기술자들”이었습니다.

회사 사무실이 우리 집에 있었기 때문에 말 그대로 컴퓨터와 컴퓨터를 좋아하는 사람들 사이에서 자랐습니다. 저는 어렸을 때 Visual Basic을 사용하기 시작했고 (회사 직원 중 한 명이 사용 방법을 가르쳐주었습니다) 온라인에서 자유 시간을 모두 보냈습니다.

내가 12 살쯤되었을 때, 그 괴짜들 중 한 명이 나에게 웹 개발 매뉴얼 (기본적으로 HTML을 다루는 거대한 .txt 파일)을 이메일로 보냈고 그것을 사용하여 내 팬 사이트를 구축했습니다. 심지어 그 멋진 방문 카운터 중 하나가있었습니다.

저는 Geocities에서 호스팅하고 무료 짧은 URL을 얻었고 Yahoo와 AltaVista에 게시했습니다 (당시 가장 큰 URL이었습니다).

그 후 인생이 일어 났고, 상황이보다 "현실적인"접근 방식을 요구함에 따라 저는 프로그래머가된다는 생각을 완전히 포기했습니다. 지금은 자세히 설명하지 않겠지 만 기본적으로 공부를 포기하고 취직해야했습니다.

나는 내 인생을 계속 살았습니다. 저는 가끔 아버지의 고객을 위해 웹 사이트를 구축했고, 결국에는 영어를 가르치기로 결정했습니다. 이것은 저에게 쉬운 일이었고 기본적으로 웹 개발에 대한 모든 것을 잊었습니다. 2016 년까지는 그렇습니다.

경력을 전환하기로 결정한 방법

나는 가르치는 것을 좋아합니다. 흥미롭고 재미있는 보람있는 직업입니다. 그러나 단점이 있습니다. 처음에는 모든 것이 도전처럼 느껴졌지만, 그렇게 오랜 세월을 보낸 후 나는 목적이 없다고 느끼기 시작했습니다. 내가 더 이상 성장하거나 배우지 않는다는 것.

나는 막힌 느낌이었다. 내 직업이 정확히 같은 해와 같은 해처럼. 나는 단지 움직임을 겪고 있었다. 또한 이주 할 기회도 많지 않았는데, 이는 나중에 저에게 매우 중요해졌습니다.

2013 년에 남편을 만났고, 다음 해에 우리는 완전히 다른 블로그 게시물 인 유럽으로 3 개월 배낭 여행을 갔지만 기본적으로 매우 낮은 예산이었고 우리는 멋진 경험을했습니다. 우리는 유럽을 사랑했고 또 다른 긴 여행을 위해 돌아 오기로 결정했습니다.

시간이 지나고 다른 일을했고, 그 후 저는 Codecademy를 ​​발견하고 가지고 놀기 시작했습니다. 그리고 풀 타임 개발자가되는 아이디어를 가지고 놀기 시작했습니다. 이미 HTML과 CSS만으로 웹 사이트를 구축 한 경험이 있지만 JavaScript는 없습니다. 온라인에서 많은 성공 사례를 읽고 있었지만, 여전히 그것을 진짜 직업이라고 생각하지 않았습니다.

그동안 우리는 다음 장거리 여행을 계획하고 돈을 절약하고 계획을 세웠습니다. 나는 점점 더 프리랜서 번역가로 일하고 있었고, 내 경력에 매우 참여하여 소설과시와 같은 멋진 것들을 번역했습니다. 2017 년이되어 이번에는 두 달 동안 다시 유럽에갔습니다.

그곳에서 많은 개발자를 만났습니다. 미쳤다. 우리가 만난 모든 소파 서퍼는 소프트웨어 제품 관리자, 개발자, 테스터 등 IT 분야에서 일하는 것처럼 보였습니다. 그들은 모두 우리가 기술에 뛰어 들도록 격려했습니다. 그 무렵 우리는 이미 유럽으로 이주하기로 결정했기 때문에 많은 사람들이 우리에게 말했습니다.“여기에서 일자리를 찾을 수 있습니다. 개발자는 여기에서 수요가 많고 많은 개발자가 필요합니다. "

여행이 끝나기 전에 우리는 고향 근처에 새로 설립 된 기술 대학에서 2 년 기술 인증서를 신청하기로 결정했습니다. 프로그램은 주로 Java 였기 때문에 돌아 왔을 때 Cousera에서 Java 과정을 시작했습니다. 첫 번째 모듈은 실제로 자바 스크립트 코스 였기 때문에 실제로 자바 스크립트에 즉시 빠져 들었습니다.

JavaScript를 배우는 동안 우리는 2018 년 3 월 학기가 시작될 때까지 기다렸습니다. Uni에는 50 개의 자리 만 있었기 때문에 우리는 매우 헌신적이고 미리 배웠습니다. 우리는 가서 시험을 치르고 과정을 통과 한 다음 결정될 때까지 기다려야했습니다. 우리는 모든 후보자 중에서 가장 높은 점수를 받았지만 그 점수는 차이를 만들지 않았습니다. 장소는 추첨 시스템을 통해 할당됩니다. 남편이 들어 왔고 나는 제외되었습니다.

그는 혼자서 배우는 것을 선호하기로 결정했고, 자바 스크립트에 푹 빠졌기 때문에 더 이상 자바에 관심이 없었기 때문에 우리는 스스로 배우기 시작했습니다.

우리는 Codecademy로 시작했지만 너무 손에 들고 다닐 수 없었습니다 (프리미엄 계정이 없었습니다). 어딘가에서 freeCodeCamp에 대해 읽었습니다. 그리고 처음에는 아주 천천히 시작했습니다 (첫 번째 인증서를받는 데 몇 달이 걸렸고, 중간에 커리큘럼이 변경되어 노트북을 떨어 뜨려 수리해야했습니다). 여름 방학이 끝나고 다시 풀 타임 일을하자 일이 힘들어졌습니다.

풀 타임으로 일하고 풀 스피드로 freeCodeCamp를 수행

쉽지 않았고 거짓말하지 않겠습니다. 그것은 대부분의 친구와 지인이 내 근처에 살지 않는 데 도움이되었고 나는 많은 오락 기회를 제공하지 않는 작은 마을에 살고 있습니다. 그런 의미에서 프로그래밍은 생명의 은인이었습니다. 재미있는 일이 있었고 중독성이있어서 몇 시간의 지루함을 없앨 수있었습니다.

그래서 그것은 내가 정신적 인 일 (가르침과 공부)을하는 데 보낸 시간을 다룰 때 많은 도움이되었습니다.

첫 번째 수료증은 몇 달이 걸렸습니다. 부분적으로는 제가 Uni에 입학하기를 기다리고 있었기 때문이고 부분적으로는 학년의 첫 3 개월 동안 하루에 10 시간 씩 일했기 때문입니다.

불행히도 저는 청구서를 지불해야했기 때문에 직장을 그만두고 풀 타임으로 공부할 수 없었습니다. 그래서 저는 3 가지 일을 정말 잘해야했습니다.

  1. 시간 관리
  2. 징계
  3. 조직

시간 관리

오전 7시에 일을 시작했기 때문에 대부분의 날 오전 4시 30 분에 일어나기 시작했습니다. 나는 freeCodeCamp 챌린지와 커피로 하루를 시작했습니다. 때때로 나는 그 순간에 무엇을하고 있었는지에 따라 책에서 읽거나 다른 튜토리얼을하기도했습니다. 점심 시간과 퇴근 후에 공부도했지만, 일 때문에 주중에 그렇게 생산적이지 않다는 사실을 받아 들였습니다. 그래서 주중에는 주로 짧은 도전과 독서 등을했습니다. 그리고 주말, 공휴일, 자유 시간에 프로젝트를 진행했습니다.

30 분이면 30 분을 읽었습니다. 15 살이면 15 분 동안 공부를했습니다. 나는 하루의 모든 자유 시간을 공부에 사용했습니다.

일요일에는 일주일 동안 대부분의 식사를 준비해서 요리하는 데 시간을 할애하지 않고 건강에 해로운 음식을 먹지 않아도되었습니다. 일주일 동안 일하는 데 필요한 모든 것을 계획하고 모았 기 때문에 평상시 근무 시간 외에 추가 시간을 할애 할 필요가 없었습니다.

운 좋게도 6 월 이후에 근무 시간이 10-12 시간에서 8 시간으로 줄었기 때문에 이제는 평범한 일정으로 일하고 있었고 그곳에서 속도를 높이기 시작했습니다.

징계

마음에 들지 않는 날에도 공부를해야합니다. 여기에서 동기 부여도 큰 역할을하지만 규율이 중요합니다. 특히 나처럼 소셜 미디어와 고양이 비디오로주의가 산만 해지는 경우에는 더욱 그렇습니다.

온라인에서 기사를 읽고 싶은 유혹에 맞서 싸우기 위해 제가 드릴 수있는 가장 좋은 팁은 다음과 같습니다. "비행기가 어떻게 비행합니까?"와 같은 질문이 머릿속에 떠오르면 (보통 저를 몰아 넣고 30 분 동안 나를 짜증나게하는 유형의 질문입니다), 그것을 어딘가에 적고 당신이하고있는 일을 마친 후에 그것에 대한 모든 것을 읽을 수 있다고 스스로 약속하십시오.

99 %의 시간은 더 이상 신경 쓰지 않을 것입니다. 왜냐하면 그 질문은 산만 해지기를 원하기 때문에 당신의 두뇌에 떠오르 기 때문입니다. 밀어 넣으면 이길 것입니다.

훈육의 또 다른 측면은 다른 것보다 공부를 선택해야한다는 것입니다. 이것은별로 재미있는 부분이 아닙니다. 공부하는 것을 좋아하면서 즐거웠 던 많은 것들을 포기해야했고, 다시 돌아갈 수 있기를 기다릴 수 없습니다. 가능한 한 빨리 개발자가되고 싶었 기 때문에 (아래의 동기 참조) 그렇게했지만, 저처럼 서두르지 않더라도 그렇게하는 데 많은 시간을 할애 할 수 있습니다. 즐겁고 멋지지만 시간을 너무 많이 차지합니다.

우선 순위를 정하고 어려운 선택을해야합니다.

자극

저는 개발자가되어 유럽으로 이주하는 매우 강력한 동기가있었습니다. 이것은 오랫동안 나의 목표 였고 나는 그것을 얻지 못하고 좌절감을 느끼는 지점에 도달했습니다. 내 친구들은 모두 마을을 떠났고, 여기에는 거의 가족이 없었고, 고립 된 느낌이 들고 떠나고 싶었습니다.

그것이 나를 밀어 붙인 것입니다. 내 발 밑에 불처럼 느껴졌고 선택의 여지가 없다고 느꼈다. 급진적 인 변화를 위해서는 강한 동기가 필요합니다. 나는 당신에 대해 잘 모르지만, 나는 "깨지지 않은 것을 고치지 말라"는 사람이기 때문에 그들을 위해 일을하게 만드는 것은 정말 어렵습니다.

나의 취미는 모두 매우 실용적이고 생산적입니다 : 정원 가꾸기, 요가, 요리. 나는 그들을 할 이유가 필요합니다 (나는 무료 채소를 원하고, 허리가 아파요, 배가 고파요). 당신이 나 같은 사람이라면, 당신을 유지하기 위해 당근을 찾아야 할 것입니다.

이것에 대해 생각하는 데 시간을 할애하십시오. freeCodeCamp를 끝내고 정확히 무엇을 성취하고 싶습니까? 그것을 통해 개인적인 삶에서 무엇을 바꾸거나 얻고 싶습니까?

커리큘럼 + 보충 자료

다음은 freeCodeCamp 여정에서 사용한 몇 가지 보충 리소스입니다. 내가 수많은 인터넷 검색을 수행했기 때문에 이것은 완전한 목록이 아니며 이러한 과정 중 일부는 무료가 아님을 명심하십시오.

반응 형 웹 디자인 : 이미 경험 한 부분이어서 쉽고 재미있었습니다. 특히 Flexbox에 대한 몇 가지 추가 리소스를 사용했습니다. 내가 가장 좋아하는 곳은 인터넷 사용이 어렵다는 것입니다.

자바 스크립트 알고리즘 및 데이터 구조 : 자바 스크립트 모듈에 도착하자마자 푹 빠졌습니다. 모든 것이 매우 재미 있었고 많은 것을 배웠고 그것을 실천에 옮기고 싶었습니다.

이 섹션에서는 주로 책을 사용했습니다. 이미 freeCodeCamp로 충분한 연습을했지만 설명하는 방법이 더 필요했습니다. Beginning JS에는 수많은 연습 문제가 있습니다.

  • JavaScript 5 판 시작
  • 당신은 JS를 모른다
  • JavaScript, HTML 및 CSS를 사용한 프로그래밍 기초
  • JavaScript 문서

이 섹션에 도달했을 때 저는 1MWTT (1MWTT) Summer of Code 프로그램에도 참여했습니다. 저는 기본 Python과 기본에서 고급 JavaScript를 배웠으며 특히 Promises에서 많은 도움이되었습니다.

Python을 배우는 것도 몇 가지 기본 프로그래밍 개념을 강화하는 데 도움이되었습니다. JavaScript에 자신이있을 때 기본 개념 만있는 새로운 언어를 사용해 볼 것을 진지하게 추천합니다. 다른 도구로 동일한 작업을 수행하는 방법을 알게되면 나중에 훨씬 더 편안해질 것입니다.

JavaScript 프레임 워크 : 이 섹션은 React와 Redux의 기초를 제공했기 때문에 훌륭했습니다. 나는 이미 Udemy, React 16.6-The Complete Guide (React Router & Redux 포함)에 대한 React 과정을 따라 왔습니다.

이 코스와 같은 저자의 다른 코스를 강력히 추천합니다. 그는 믿을 수 없을 정도로 철저하고 그의 설명은 굉장합니다. 이것은 그가 만든 프로젝트를 실제로 따라 간 몇 안되는 Udemy 과정 중 하나였습니다. 저는 일반적으로 비디오를보고 제가 작업하는 모든 것에 원칙을 적용합니다.

1millionwomentotech에서 우리는 주로 React 네이티브 인 React Week를 가졌고, 그 후 그것을 가지고 놀기 시작했습니다. 그 무렵 남편과 함께 사이드 프로젝트 작업을 시작했는데 React와 함께 PWA가되기로 결정했습니다.

처음부터 직접 무언가를 만드는 것이 얼마나 중요한지 강조 할 수 없습니다. 저는 어떤 코스 나 튜토리얼에서 배운 것보다 몇 주 동안 우리 앱을 만드는 데 더 많은 것을 배웠습니다.

API 및 마이크로 서비스 : 이 섹션은 저에게 큰 폭로 였고 모든 것을 변경했습니다. 그 모듈까지 나는 프론트 엔드 개발자가되고 싶다고 확신했지만 Node.js를 배우고 나서 백엔드 또는 풀 스택 개발자가되는 것에 대해 생각하기 시작했습니다. API를 빌드하는 것은 매우 재미 있고 결과를 너무 빨리 볼 수 있습니다. 저는 첫 번째 작은 풀 스택 프로젝트를 만들기 시작했고 매우 흥분했습니다.

내가 사용한 리소스 중 일부 :

  • 완전한 Node.js 개발자 과정 (2 판)
  • Express를 사용한 백엔드 개발에 대한 Node Girls 소개
  • 노드 문서
  • Express 문서
  • NodeSchool
  • Node.js 소개
  • Node.js, v2의 REST 및 GraphQL API 설계 (Express 및 MongoDB 사용)

이 기간 동안 저는“1MWTT”를 위해 자원 봉사를했고 Node.js에 온 보딩 자원 봉사자를위한 Probot 앱을 구축해 달라는 요청을 받았습니다. 이것은 또한 저에게 Node로 약간의 연습을주었습니다.

QA 및 정보 보안 : 이 모듈은 또한 눈을 뜨게했습니다. 그때까지 나는 내 인생에서 단 하나의 시험을 쓴 적이 없었다. 이제 저는 테스트 작성을 좋아하고 테스트 주도 개발에 매우 ​​관심이 생겼습니다.

저는이 섹션에서 주로 문서를 사용했지만 프론트 엔드도 테스트하기로 결정했고 Udemy에서 충분히 추천 할 수없는이 놀라운 과정을 발견했습니다. 강사는 제가 Udemy에서 본 최고의 강사입니다. 그녀가 앞으로 발표하는 다른 코스를 사용하기를 기다릴 수 없습니다.

-Chai 문서

-Jest 및 Enzyme을 사용한 반응 테스트

D3를 사용한 데이터 시각화 : 이것은 가장 어려운 인증서였습니다. 설명은 좋았지 만 프로젝트에 도달하면 과제가 첫 번째 프로젝트에만 적용되고 나머지는 혼자서 할 수 있다는 것을 알게됩니다. 그리고 온라인에는 좋은 리소스가 많지 않습니다. 주로 문서를 읽고 튜토리얼을 사용했습니다. 이 인증을 통해 마침내 저를 얻은 리소스는 다음과 같습니다.

-d3Vienno의 D3.js 튜토리얼

-D3 문서

커리큘럼 완료를위한 팁

요약하면, 다음은 커리큘럼을 마치는 목표를 달성하는 데 가장 큰 도움이 된 것입니다.

  • 커리큘럼을 로드맵으로 사용하되 다른 리소스로 보완
  • 오래 갇히지 마세요 : 질문, Google, 페어 프로그램.
  • 매일 및 매주 현실적인 목표를 설정하십시오. 1 주일이 더 느리더라도 자신을 때리지 마십시오. 그것이 당신을 코스에서 벗어나게하지 마십시오.
  • 동기 부여를 염두에 두십시오. 힘든 날을 헤쳐 나갈 것입니다.
  • 우선 순위 지정 : 다른 일을하는 데 보내는 시간을 줄여야합니다.
  • 쉬는 날을 잊지 마세요. 그들은 학습 과정에 필수적입니다. 그리고 충분한 수면을 취하십시오!

freeCodeCamp 후, 나는 약간의 길을 잃었다. 이것이 선생님에서 개발자로의 여정을 안내하는 로드맵이었습니다.

며칠간의 숙고와 계획 끝에 나는 남편과 함께 만들고있는 사이드 프로젝트에 전념했습니다. 우리는 배우고 즐기고 있으며 그것에 대해 매우 흥분됩니다.

그리고 네, 커리큘럼을 마친 직후 구직 제안을 받았지만 다가오는 기사에서 더 자세히 설명합니다.

대체로 freeCodeCamp가 아니었다면 내가 배운 모든 것을 그렇게 빨리 배웠을 수는 없었고, 이처럼 멋진 프로젝트를 가능하게 해준 모든 분들께 매우 감사합니다.

똑같이 느끼고 돌려받을 수 있다면 여기에서 freeCodeCamp에 기부하는 것을 고려하십시오.