7월 14일, 하루 하고도 반나절이 걸린 마지막 HA 를 무사히 마쳤습니다. 마침 어제는 코드스테이츠에서 공부를 시작한지 딱 100일이 되는 날이기도 했는데요. 제 인생에서 이토록 뚜렷한 목표의식을 가지고 달려온 100일이 또 있었나 싶을 정도입니다.
혼자만의 힘으로는 쉽지 않았을 100일이었습니다.. 늦은 시간까지 디코 방에 불을 켜두고 함께 공부한 많은 동기들, 화면 너머로 머리를 맞대어가며 문제를 풀기 위해 노력했던 25 명의 페어들, 스프린트로, 아고라 스테이츠로, 또 공지와 그 외 여러 모로 애써주신 크루 분들, 함께할 시간이 없어 속상한 와중에도 늘 저를 지지해주고 도와준 사랑하는 아내까지.
이제까지의 과정이 물고기를 낚는 방법을 배우는 것이었다면, 프로젝트를 통해서는 낚시를 실제로 한다는 게 어떤 것인지를 경험할 수 있겠죠. 걱정이나 두려움보다는 설렘을 가지고 프로젝트를 기대해보려고 합니다.
감상이 너무 길었습니다. Section 3 를 돌아보는 것이 목표이니 얼른 총평부터 하도록 하죠.
"떨어지는 집중력, 바닥나는 체력, 줄어드는 가이드, 그래도 조금씩 늘어나는 실력!"
남들은 오랜 기간 공부해서 올라오는 이 길을 짧은 시간만에 주파하기 위해서는 앞만 보고 달릴 수 밖에 없습니다. 그러다보니 집중력이 떨어지고 체력이 바닥나기 시작한 건 어찌 보면 당연한 일이 아닌가 싶네요.
엎친 데 덮친 격으로 유어클래스의 가이드는 점점 줄어들었습니다. 공식문서와 구글링으로 자료를 찾아가며 공부했는데도, 막상 스프린트 세션 시간이 되면 뭘 질문해야 하는지 모르겠어서 답답한 마음이 컸던 것 같아요.
그래도 조금씩 늘고 있다는 믿음으로 정줄을 놓지 않을 수 있었던 것 같습니다. 네. 말 그대로 믿음이었습니다. 아직 이해하지 못한 것 같은데 이미 넘어가버린 진도와, 수도코드만 쌓이는 토이 문제 사이에서는 도저히 실력이 늘고 있다고는 느껴지지 않더라구요.
마지막 HA 를 마무리하고 보니 이제서야 실력이 그래도 조금은 늘었다는 걸 체감하게 됩니다. 101일차를 맞이해 문득 1일차에는 무슨 블로깅을 했었는지가 궁금해지더라구요. 검색해보니 "구글로 검색하는 방법" 이라는 제목이었습니다. 구글링부터 배워야 했던 비전공자가 이제는 프로젝트를 목전에 둘 정도로 성장했네요.
잠시 숨을 고르며 돌아보면, 얼마나 많이 성장했는지를 볼 수 있는 것 같습니다. 동기들이 있고, 페어가 있고, 크루 분들이 있으니까요. 너무 마음이 어려울 땐 굳이 혼자 해결하려 하지 않아도 좋을 것 같아요. (저도 개인적으로 한 크루 분의 응원의 덕을 많이 봤습니다. 상담을 받을 의도였던 건 아니었지만 유독 그 멘트가 의지가 많이 되었습니다. 감사합니다. ^^)
(제 기준으로) 섹션 3 는 크게 2 가지 파트로 나뉩니다. 로그인과 관련한 파트, 그리고 프로젝트를 대비하는 파트입니다. 섹션 3 에서 가장 핵심적으로 배운 내용이 아닌가 싶어 이렇게 정리하게 되었습니다.
리눅스의 심화 과정, 3개의 클래스로 구성된 데이터베이스, 인증/보안 기초와 네트워크 심화 과정까지. 이 많은 과정들이 어떻게 하면 로그인을 구현할 수 있는지와 연관되어 있는데요.
그동안은 크게 신경쓰지 않았던 로그인 기능, 특히 요즘 많이 등장한 더 이상 번거로운 가입 과정을 거치지 않는 소셜 로그인과 같은 기능들이 얼마나 복잡한 과정인지를 섹션 3 를 통해 배워나갈 수 있었습니다.
물론 위의 개념들이 로그인에만 필요한 것은 아니죠. 정리를 위해 하나의 카테고리로 묶은 것 뿐입니다. 섹션 3 에서는 Backend & Computer Science 라는 이름에 걸맞게 서버 사이드에서 알아야 할 것들을 많이 배울 수 있었습니다.
프로젝트가 다가올 수록 여러 조언을 들을 수 있었습니다. 내일부터 본격적으로 프로젝트를 어떻게 꾸려나갈지를 안내받게 되는데요. 개발자로 살아간다는 것이 무엇일지를 미리 경험해 볼 수 있을 것 같아서 기대가 많이 됩니다.
감사하게도 늘 좋은 분들을 만나 페어 프로그래밍을 진행할 수 있었습니다. 앞으로도 좋은 인연들을 만나 프로젝트를 할 수 있게 되기를 바라고 있구요. 하지만 '나는 좋은 동료인가?' 가 늘 우선이라는 생각이 듭니다. 그렇지 않고서 행운만 바라보는 건 의미가 없으니까요.
프로젝트를 진행하는 동안은 TIL 대신 개발일지로 전환해서 블로깅을 해보려고 계획 중입니다. 섹션을 진행하는 동안 잔디 심기보다는 블로깅에 중심을 뒀었는데, 프로젝트 기간은 어떨지 아직 감이 잡히지 않네요. 프로젝트를 잘 진행하는 것이 아무래도 우선이 되어야 하니 말이죠.
개발자가 되기 위해 공부하는 과정은 정말 위의 밈에서 나온 두 상황의 반복이었습니다. 왜 코드가 내가 생각한대로 작동하지 않는지를 고민하는 과정이 있는가 하면, 왜 이 코드가 이렇게 동작하는지를 고민하는 과정이 있기도 하죠. 우스갯소리이지만 한편으로는 제 상황과 잘 맞는 것 같아서 한 번 더 사용해봤습니다.
코드를 동작시키는 것이 개발자의 당연한 업무라면, 코드가 왜 동작하는지를 고민하는 건 더 나은 개발자가 되기 위한 과정이라고 생각합니다. 혼자만의 힘으로 섹션 3를 달려온 것은 아니지만, 그래도 제가 잘한 점을 하나만 꼽아보라면 "It works....... why?" 를 고민했다는 점을 들고 싶네요.
Section 3 를 궁금해하시는 분들에게 이 글이 조금이나마 도움이 되었으면 좋겠습니다. 그리고 섹션 3 까지 무사히 완주하신 모든 수강생 동료 분들, 진심으로 수고하셨습니다! ^^