Developing

패스트캠퍼스 최종 미션, 한 번에 끝내는 AWS 인프라 구축과 DevOps 운영 초격차 패키지 Online 강의 후기 본문

Devops/Fastcampus 캐시백 챌린지

패스트캠퍼스 최종 미션, 한 번에 끝내는 AWS 인프라 구축과 DevOps 운영 초격차 패키지 Online 강의 후기

DEV_BLOG 2022. 6. 29. 04:35

 

66일간의 블로깅 챌린지 성공! (2022/4/18 ~ 2022/6/22)

 

 

66일 동안 fastcampus devops 강좌에 대해 1일 1블로깅하는 챌린지 이벤트에 참여해 주말/공휴일 없이 매일매일 하루도 빠짐없이 참여해야 했다. 결국엔 성공해냈다!

 

최종미션으로 4000자 이상의 포스팅을 해야 하는데...막막해 보이지만 천천히 적어보려고 한다.Devops 분야에 대해 관심을 가지게 된 계기는 중간미션에서 많이 얘기하였으니 다른 얘기들로 적어보려고 한다.

 

1. [포스팅에 대한 고뇌와 노력]

2. [강좌에 대한 고뇌와 노력]

3. [챌린지를 위해 포기한 것과 얻은 것/깨달은 것]

4. [향후 블로그의 방향성]

5. [강좌 후기와 선수지식]

 

포스팅에 대한 고뇌와 노력

 

우선 챌린지 포스팅은 공백 미포함 기준 700자 이상을 적어야 했는데, 최소 글자 수에 맞추려고 하기보다는 '최대한 개발자답게 적어보자'라는 것이 목표였다.

대게 1000~3000자가 많았던 것 같고 코드가 긴 포스팅의 경우에는 4000~6000자 사이도 가끔 있었던 것 같다.

 

온라인 필기로는 Notion을 활용하였다. 굉장히 가볍고 편리하게 사용할 수 있기에 프로젝트 개발문서 공유할 때/인턴십 일지 작성할 때/메모장처럼 가볍게 적을 때 등등.. 기록하고 싶을 때마다 다양한 용도로 활용해왔고 앞으로도 사용할 예정이다.

가끔 자주 찾아보게 되는 내용을 Notion에서 찾기 싫을 때를 대비해서 포스팅으로 따로 작성하기도 하였다.

 

이미지 제작하는 tool로는 Miro를 활용하였다. 스타트업에서 가장 핫하게 뜨는 대시보드 툴이라고 설문조사에서 본 적이있기에 사용하였다. 기존에 다이어그램 같은 내용을 만들 때에는 draw.io를 많이 활용하였지만, Miro가 좀 더 직관적이고 편리한 사용자 인터페이스를 제공한다고 느꼈다. Miro에서 쉽게 많이 그리며 캡처하고 활용하는 식으로 사용하였다.

 

챌린지 주의사항에서 강좌의 이미지를 그대로 캡처하지 말라는 조항이 있었다. 따라서 포스팅 이해에 도움이 되는 그림을 삽입하고 싶으면  Miro를 활용해서 비슷하게 만들고 포스팅에 활용하였다. 어느 정도 익숙해져서 앞으로 업무할 때도 요긴하게 잘 활용할 수 있을듯하다.

 

작업할 때의 생산성을 올려주는 도구들에 대해 항상 많이 고민하고 써보았기에 해당 포스팅을 보는 사람들도 향후에 활용해볼 수 있으면 좋을 것 같다.

 

 

강좌에 대한 고뇌와 노력

3월에 코로나로 인해 생겼던 경험을 얘기해보자면, 단기 인턴을 마치고 어느날 1일1커밋하려고 컴퓨터를 켰는데 갑자기 아무것도 못할 것만 같은 무기력을 느끼며 몇 주간 몸 상태가 별로였다. 확진 판정을 받고 몸이 안 좋은 겸 오랜만에 아무것도 안 하면서 아예 푹쉬었는데, 주변에서 다들 너무 열심히 사는 게 느껴져서 챌린지를 신청했었다. 지금은 멀쩡하지만 기침이 상당히 오래가서 힘들었다;;

 

강좌 선수지식으로 약간의 리눅스 지식이 필요한데, 따라가는 데에 큰 어려움은 없었지만 리눅스를 배운지 몇 년이 지나서 가볍게 훑고 싶다는 마음은 들었다. 따라서 타 사이트의 8시간 정도 되는 리눅스 관련 컨텐츠를 새벽 시간에 짬 내서 수강하였다. (하지만 리눅스 쪽은 아직도 모르는 것이 천지라고 느끼고 있기에 앞으로도 깊게 공부해볼 의향이 있다. fastcampus linux 강좌 중 하나를 구매할지 눈여겨보고있다..)

또한 이전에 Android Studio Emulator와 Kali Linux를 잠깐 사용할 때 가상환경 설정하면서 시행착오를 겪었던 경험이 강좌에 필요한 환경을 세팅할 때에 크게 도움이 되었다. 강좌에서 wsl2로 version upgrade 해줄 때 약간 비슷한 과정을 거쳐서 예전의 힘듦이 스쳐지나갔다..

 

 

 

챌린지를 위해 포기한 것과 얻은 것/깨달은 것

챌린지와 함께 심은 잔디..최대한 이어가보려고 한다.

공휴일/주말 없이 챌린지가 진행되기에 굉장히 힘들었다. 필요한 외출도 때에 따라서 몇 번씩은 미루었고 해외 취업으로 코로나 기간동안 못봤던 형이 몇 주간 입국해있을 때 1박 2일 가족여행에서도 나는 빠지겠다고 했다..ㅋㅋㅋㅋㅋ;; 여행 후기를 들어보니 여행 갔으면 챌린지를 실패하였을듯한..ㅎㅎ 독하다고 생각할지도 모르지만, 챌린지 후반까지 온 상황에서 공든탑이 무너지게 만드는 것은 원하지 않았다. 챌린지하면서 혼자 해결해야 하는 상황에 많이 부딪혀보면서 얻어갈 수 있는 경험이 되었다.

 

한편 1Day 1Commit을 실천하는 현업 개발자님들에게 엄청난 존경심을 품게 되었다.

개발 공부를 그냥 하는 것 VS 혼자보는곳에 가볍게 기록해두는 것 VS 다른 사람이 볼 수 있는 곳에 개발공부내용 올리기

이 3가지에는 피로도의 차이가 상당하게 있다는 것을 깨달았다. 포스팅을 할 때에도 수많은 고민들이 존재하게 된다.

어디서부터 어디까지의 내용을 다룰지, 이해에 도움이 되는 이미지를 삽입할지, 사진과 글의 순서 위치, 링크와 설명 순서  위치 등등.. 앞으로 개발관련 포스팅을 할 때 어느 정도 일관성 있게 규칙을 마련해야겠다는 생각이 들었다.

 

Devops 강좌를 듣다 보니 깨달은 것은 'Devops 잘 안다고 떵떵거리고 다니는 신입=허수'라는 것이다.

Devops 관련 내용을 검색하다가 알고리즘으로 아래의 영상이 나에게 흘러들어왔다.

대략 내용은 '너 이래도 devops 할래..?' 이런 내용이다.

https://www.youtube.com/watch?v=9JV8pk29Ra0&ab_channel=DevOpsForDevelopers 

개발자에게 배움은 끝이 없다는 것은 모든 개발자에게 해당되는 듯 하지만 devops쪽은 정말 몸이 10개라도 배워야할 것들이 많아보였다.. 그런데 신입이 "저 Devops에 대해 아주 빠삭하게 잘 알고 있어요!" 한다면 정말 딱밤이라도 때리고 싶을 것 같다.. 챌린지는 종료되었지만 들어야 하는 강의가 아직도 많이 남아있다..ㅜㅜ 또한 왜 devops 신입을 채용하는게 엄청난 도전이라고 하는지도 깨달았다..

 

devops 공부를 시작한 것에 있어서 크게 후회는 하지 않는다. 왜냐하면 기업들 공고문을 보면 'Devops,MSA,Public Cloud,CI/CD' 에 대해 잘 아는 사람을 선호하고 있고(그나저나 신입이 잘 알 수가있을까..?), 배우다 보니 개인적으로도 Back이든 Front든 개발자들이 꼭 알아야 하는 내용이라고 여기고 있다. 하반기에는 취업 준비를 바짝 할 예정인데 틈틈이 devops쪽 공부를 해보려고 한다.

 

 

 

향후 블로그의 방향성

챌린지로 인해 쌓인 상당한 양의 게시물..

 

정말 뛰어나신 다른 분들의 블로그를 보면서 반성을 많이 했었다. '저 분은 저래서 된 거구나..'를 엄청 체감했고 내가 공부해야 하는 방향에 대해 꽤 많이 고민하게 되었다. 오래간 잠들어있던 블로그에 챌린지로 인해 반강제적으로라도 66일간의 기록을 지속해서 남기다 보니, 블로그의 방향성에 대해서도 따로 생각을 하였었다. 기업의 Tech Blog review 포스팅이나 클린 코드 책 리뷰, 알고리즘 문제 답안 포스팅, 프로그래밍 언어 공부 포스팅 정도를 생각하고 있다.(Notion에 잠들어있는 것을 블로그로 이사시켜올지는 고민중이다..)

 

며칠 전 코딜리티를 활용한 생애 첫 기업인턴 코테와 대외활동 코테를 치루었는데, 코테 경험이 크게 없다보니 결과에 크게 기대하지 않고 코테쪽 공부를 많이 해야겠다고 느끼고있다..(대외활동 코테가 어째서 웬만한 서비스회사들 공채코테보다 어렵다는 얘기가 나오는 것인가..ㅠㅠㅠㅠ) 특정 알고리즘을 활용해야 한다고 감은 잡았지만 경험부족으로 인한 빡구현과 IDE 미사용 코테경험이 없어서 망한 듯하다..ㅋㅋㅋ;;  코테공부와 별도로 블로깅 활동도 다양하게 시도해보려고 한다.

 

 

강좌 후기와 선수지식

데이터 직군에서 일하시는 송OO 강사님과 당근마켓에서 SRE 업무를 하시는 박OO 강사님 정도의 강의를 경험하였다.

 

송OO 강사님에 대해 먼저 말하자면, AWS에 대해서는 많은 것을 알고 계시고 이론적인 설명을 꽤 잘하셨다. 처음이라 잘 이해되지 않았어도 반복적으로 강의를 보면 충분히 이해가 갈 정도이고, Public Cloud에 대해서 상당히 많이 배워갈 수 있었다.

하지만 데이터 직군에서 일하고 계셔서일까.. 내가 느끼기에 서버사이드쪽에서 노련함이 부족하신 것 같았다.

왜 이런 생각을 했었냐면, 강좌 초기 부분에서 putty를 많이 써본 경험이 없으신 것 같은 느낌을 받았다. 복사 붙여넣기로 ctrl+c ctrl+v가 안되자 '어 붙여넣기가 안되네요...'하시기도 하고  추후에 상당한 양의 코드를 메모장에서 copy & paste 하시는데, 실수로 두 번 복사하셨던 적이 있다. 이때 undo 기능을 잠깐 검색하거나 해서 사용하거나 하면 되는데, 굳이 그렇게나 많은 내용의 코드를 일일이 Backspace로 지우고는 강의를 끊어서 다시 붙여서 진행하시는 것을 보고는 갑자기 강좌에 대한 reliability가 수직으로 하락하였다..; 이것외에도 Permission Denied 현상에 대해서 "Docker 쪽 인증 command 입력 하고나서 재부팅 해야적용됩니다" 라고 하지 않고 일련의 아무 설명조차 없이 "이럴땐 putty 재부팅하면 됩니다" 라는 설명이라던지..(그 때문에 당시에는 짐작만으로 생각했고, MSA파트 건너뛰고 도커쪽 파트를 들을때 다른분이 언급해주셔서 확신하였다.), 백엔드쪽에서 강의 어떤부분에서 말미에 '앗 안되네요..! 나중에 다시 확인할게요' 하시더니 아무런 자막도 설명도 없이 한참 후 강의내용에서 '그 전에서 ~~~했던 거 그래서 안 됐을 거에요'라고 짧게만 언급한다던지.. 솔직히 이부분은 수강생들에게 책임감이 많이 부족하셨던 부분이라 느끼고 있다. 결정적으로 Q&A가 없어서 어려움에 닥치면 내가 모든 것을 해결해야했다. 강좌에 포함되지 않은 IDE 초기설정이나 거의 대부분은 검색과 혼자힘으로 해결할 수 있는 영역이었지만 그렇지 않은 부분은 도움을 받을 수 없었다.

위와 같은 이유로 혹시나 강좌를 수강하시는 분들은 순서대로 강의를 듣지 않을 것을 추천한다. AWS 관련된부분까지는 순서대로 듣되 도커파트쪽이라도 먼저 보고 백엔드/MSA를 수강할 것을 권장한다. 그렇지 않으면 구글링에 매우 많은 시간을 할애하게 될 것이다.. 혹여나 해당 강사님이 이 글을 보시더라도 상처 안 받으셨으면 좋겠다..

 

박OO 강사님은 시니어 개발자의 냄새가 엄청 진동하였다. 잘 준비된 github 강의자료와 하나부터 열까지 한줄한줄 어떤의미인지 알려주시는 섬세함에 감동하였다. 이런분 밑에서 일하고 싶다는 생각이 많이 들었다..ㅋㅋㅋㅋ Q&A도 github discussions를 통해서 할 수 있도록 열어주셔서 그 자체만으로도 안심이 되었고, 뭔가 버전이 변경되서 안되는 사항이 생기거나 하면 바로바로 피드백받아서 강좌 수정해주실 것 같은 분이다..

 

토O뱅크 Devops 에서 일하시는 Cloud Engineer님의 파트는 아직 들어보지는 않아서 모르겠다.  CI/CD , 모니터링, AWS 보안쪽을 담당하시는 것으로 보인다.

 

내가 판단하기에는 강좌를 듣기 위한 선수지식은 이정도인 것 같다.

 

1. 구글링으로 에러문을 검색하여 해결할 수 있는 개발지식정도

2. 간단한 html tag들에 대한 이해

3. 개발환경 구축을 혼자 해결할 수 있다.(vscode IDE/각 개인 컴퓨터의 가상화 설정 on/off)

4. 백엔드 개발에 대한 이해 (get/post 방식 , database foreign key) 

5. git/github 사용법 숙지

6. 리눅스 간단한 명령어 숙지

 

 

선수지식 중 강좌에서 많이 다루지 않은 부분은 다음과 같은 방법으로 강좌를 따라갈 수 있을 것 같다.

 

1. git 관련 사용방법은 유튜브 'mychew__' 님의 "서버개발자 되는법" 1편을 확인하면 aws/git/putty 정도의 선수지식은 얻어갈 수 있다. 강좌에서는 깜빡이도 안키고 git을 쓸것이다.. 그외에도 '드림코딩 엘리'님이나 '코딩알려주는누나' 님의 git 관련 영상을 확인하면 잘 설명해주셔서 좋을 것 같다.

 

2. 유튜브 생활코딩님의 django 강좌를 보고 따라갈 수 있으면 백엔드쪽은 듣는데에 크게 문제가 없을 것으로 보인다.

소소한 팁으로 udemy에서 앞쪽부분의 강좌의 경우 무료로 풀려있는데, 따라서 때때로 환경구축할때 도움을 얻을 수 있는 경우가 있다! 혹은 영문으로 검색하면 유튜브에 많은 리소스들이 존재한다!(유튜브 freecodecamp같은 곳이 있다.)

 

3. 강의 듣기전에 devops에 대해 궁금하다면 아래의 링크를 참조할 것을 권장한다. 처음에 devops에 대해 아예 전무하고 이 강좌를 접하기전에 유튜브에서 몇분가량의 영상을 검색해서 보다보면 '그래서 devops가 뭔가요..?' 라고 되묻게되는 현상이 있었고 댓글에도 있어서 공감이갔는데.. 그나마 이 영상이 제일 잘 설명해준 것 같다. 물론 이 강좌를 들어도 해당부분은 박OO 강사님이 잘 설명해주신다

 

https://www.youtube.com/watch?v=9pZ2xmsSDdo&ab_channel=TechWorldwithNana 

 

마지막으로 이강좌에 대해 얘기하고자 한다면.. '개발 쪽에서 날로 먹는 방법이란  존재하지 않는다'고 생각한다. 어제보다 나은 오늘이 있고, 오늘보다 나은 내일이 존재한다고 생각한다.(그래서 평생 공부해야 하는 것 같다..;;;) devops 강좌를 듣고 있지만 devops 분야에 대해 여전히 많이 모른다고 생각하고 있고, 이 강좌는 다음 Step을 위한 일련의 과정이라고 생각하면 될 것 같다. 더 나은 내일을 원한다면 강좌를 수강해도 좋다고 생각한다!

 

 

https://bit.ly/3L3avNW

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

* 본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.