[sw정글 19주차] 카이스트 정글, 5개월 회고
카테고리: swjungle survive
⭐️시작
정글에 들어오게 되었다. 어쩌다보니, 잘 맞는 룸메를 만나게 되어 정글생활이 더욱이 알찼던 것 같다.
대충 위와같은 이미지의 첫날이였다. 267호
의 상징인, 조명도 보이지 않는걸 보니 첫날이 맞는 것 같다. 베개가 배송이 늦어져서 1주일동안 맨투맨을 접어서 베고잤던 기억이 난다. 그런 내 모습을 성배가 안쓰럽다는듯이 처다봤던(?) 그런 기억도 떠오른다. 날이 참 더웠던 것 같다. 반바지가 하나밖에 없었기에, 하나 더 주문할까 생각이 들었던 시기다. 다시보니 푸릇푸릇한 캠퍼스가 참 예쁜 것 같다.
푸릇푸릇한 캠퍼스를 보며 알고리즘 문제들을 열심히 풀었다. 단기적인 목표를 눈앞에 두고 쭉쭉 풀어나가는 맛이 있었다.
나는 C.L.R.S라는 책에 집착을 했었던 것 같다. 컴퓨터공학과 친구들은, 이런 책들을 보고 증명을 해보고 그 내용들을 중간/기말고사에서 평가받는다는 사실을 알고 있었다. 코치님은 "알고리즘 문제"
를 풀라고 내어주셨지만, 나는 "알고리즘"
을 공부했던 것 같다. 수학적 증명을 따라가고, 큐, 스택, 링크드리스트, priority-que를 구현 해 보았다. 1,2,3주차는 알고리즘 자체를 탐험하다, 목표로 제시된 문제들을 많이 풀어내질 못했다.
1, 2주차
때는, ‘나는 비록 주어진 코테를 모두 풀지 못했지만, 다시는 이 알고리즘을 직접 증명하지 않아도 될 만큼 제대로 공부했어!!’ 라고 합리화했다. 지금도 그게 나쁘지 않은 공부였다고 생각한다. 하지만, 주어진 알고리즘이 어떻게 적용될 수 있을지에 대해 고민할 시간이 부족했던 것 같다. 따라서 Engineering보다는 Science에 가까운 공부였지 않나 싶다.
3주차
때는, 주어진 문제들을 절반밖에 풀지 못했다. 따라서 공부방법을 바꾸게 되었다. 4주차
에는 미친듯이 문제만 풀었다. 1일동안 공부하고, 3일동안 주어진 문제를 모두 풀었다. 나머지 3일동안은 추가적으로 20문제를 더 풀었다. 코치님이 제시했던 방법처럼, 5분고민하고 방법이 떠오르지 않는다면 즉각 그 해답을 찾아보았다.
결과론적으로 보면, 4주차의 양치기 공부법을 하는 동안 가장 많은 정보를 습득한 것 같다. 적용될 수 없는 공부와, 적용할 수 있는 공부를 할 때의 습득속도는 비교가 안되는 것 같다.
1~4주차 동안은 룸메와 다양한 실험을 해봤었던 것 같다. maximum으로 잠을 자고 하루에 4시간만 집중하는 공부법, 잠자기 직전까지 공부하는 로트와일러 공부법(🤣) 등 조건을 바꾸어 가며 계속 실험을 해보았지만 이렇다할 해답을 찾지 못했다. 하지만 개인적으로, 몸을 혹사
시키는 공부법은 장기적으로 유지하기 힘들뿐만이 아니라, 단기적으로도 그 효용성을 보기 힘들었던 것 같다.
그저, 공부를 열심히 했다는 뿌듯함만 남았던 것 같다.
5주차
때는, C언어의 기초를 다졌다. RB트리를 C언어로구현해 보며, 그 작동을 바라보았다. 이때는 인강을 많이 보았던 것 같다. C언어로 터미널에 프린트하는법도 잘 몰랐었다. 기초 인강을 보고, RB트리를 이해하기 위해 Binary트리를 공부하려고 했고, Binary트리를 공부하기 위해 Linked List를 공부하려 했고, Linked List를 공부하려고 하다보니, struct 선언법을 공부했었다.
남들과는 다른 환경셋팅을 하고자, ARM에 대해 따로 공부하는 시간을 가졌는데, 이때부터 점점 컴퓨터 공부의 재미를 알아갔던 것 같다. 어플이나 라이브러리들을 다운받을 때, ARM에 대해 따로 configuration해주는 이유를 몰랐는데, 명쾌한 해답을 얻을 수 있었던 시간이였던 것 같다.
RB트리를 공부하며, 진섭&수민과 광기어린 토론을 이어나갔던 것 같다. 사실 1~4주차까지는 팀원들과 제대로 이야기해본 기억이 없는 것 같다. 전공책을 보느니라 진도가 달랐으며, 정답을 쉽게 알 수 있는데 굳이 그 풀이방법에 대해 토론을 할 필요성을 못느꼈던 것 같다.
5주차를 기점으로, 동료들과 함께 공부하는 방법을 알게 된 것 같다. 스스로 가지고 있던, 얄팍한 지적 우월감을 내려놓는 법을 알게 되었던 것 같다.
6주차
에는 할당기에 대해 열심히 공부했던 기억이 있다. Buddy-system을 구현하며, 리눅스에서의 구현에 대해서도 따로 공부를 할 수 있었으며, 도전적인 과제도 혼자 해결 해 나갔다. 공부
의 즐거움은 이때가 가장 컸던 것 같다. 빠르게 구현하고 부족한 부분과, 잘 아는 부분에 대해서 친구들과 토론을 하며 구현 해 나갔다. 자신감이 쌓여나감이 느껴졌다. 그 어떤 어려움도 해결 해 낼 수 있을거라는 확신이 생겨나갔던 시기인 것 같다.
CSAPP에 대해서는 잠시 소홀했지만, 인터넷 그 어디에도 없는 솔루션을 스스로 만들어내었다는 사실이, 마음속에 어떤 씨앗을 심어준 것 같다. 개발자 진로에 대한 확신을 가지게 된 계기가 아닌가 싶다.
7주차
에는 다른팀에 민폐를 많이 끼쳤던 것 같다. 송이누나와 proxy서버를 구축하며 느꼈던 즐거움이 아직도 생각나는 것 같다. 하루에 2~3번은 기쁨의 소리를 외쳤던 것 같다. 잠들때는, 빨리 다음날이 되어서 서버구현을 하고싶다는 생각이 들었으며 코딩이 너무너무 즐겁다는 생각이 들었다.
예린이가 순식간에 디버깅을 해주고, 송이누나가 파싱로직을 짜주고… (나는 뭐했지? ㅎㅎ) 무튼, 분업
이 가장 효율적으로 이루어졌던 순간인 것 같다.
예전에 모두의연구소 김승일 소장님께서, 집에서 혼자하는 공부로는 절대 좋은 개발자가 될 수 없다는 말을 해주셨던 적이 있다. 습득능력이 평균이상은 되었기에, 혼자 잘해서 어떤 결과물을 독식하고자 하는 생각이 있었기에, 소장님의 말씀을 깊게 새겨듣지 않았던 것 같다. 자세한 설명이 없었기에 “정말 그럴까?”라는 의구심만 가지고 있었다. 7주차
에는 그 생각을 산산히 부쉈던 것 같다. 5주차부터 느끼고 있었기에, 쉽게 바꾸어 낼 수 있었다.
이 때 느꼈던 생각과 경험들이, 향후 개발자로서의 커리어를 쌓아나가면서 크나큰 도움이 되지 않을까 싶다. 동료들과 합심해서 좋은 결과를 내는 경험, 그 경험이 오랬동안 생각날 것 같다.
⭐️중간보스(핀토스)
8~12 주차
에는 핀토스 프로젝트를 했다. 날씨도 쌀쌀해지고, 공부도 어렵고, 교실에 코로나도 유행하고… 참 순탄치 않았던 것 같다. 이때는 회고할만한게 딱히 없는 것 같다. 어떤 생각의 변화가 이루어지지는 않았기 때문이다. 1~7주차는 스스로에 대해서도 생각해 보고, 다양한 고민들을 가지고 살았었다. 핀토스기간동안은 그러지 못했다.
그냥 하는거다. 고통스럽고 어렵고 이해가 되지 않아도 그냥 했다. 효율적이지 않은 부분이 있으면 효율적으로 만들고, 문제가 있으면 해결하고, 모르는 부분이 있으면 검색했다. 집중이 잘 안되면 집중이 잘 안된다고 말하고 잠시 쉬고, 디버깅을 해야하하면 디버깅을 했다.
그렇다 그냥 하는것이다.
핀토스 이후에는 코딩으로 인한 좌절감이나 기쁨이 많이 줄어든 것 같다. 잘되면 기쁘고, 잘 안되면 답답함이 들 뿐이다. 그러한 느낌
은 들지만, 어떤 감정에 끌려가는 느낌이 많이 줄어든 것 같다. 그렇게 그냥 하는 것이다.
두번째로 생각나는 기억은, Jamie이형과 마지막주차를 할 때다. 나름 큰그림을 짜보겠다고, 아이디어를 제시하고 filesystem의 파싱방식을 설계했다. 하지만 결과적으로, 좋지 않은 방식이고, 예외처리로직을 짜내기가 복잡해졌다. 두더지잡기처럼 계속 튀어나오는 테스트실패 속에서, 전체 아키텍쳐를 바꿀지 말지 고민하는 시간이 있었다. 나의 실수를 부끄러워 하며 다시 갈아 엎자고 했지만, Jamie형이 “지금 방식도 나쁘지 않아. 끝까지 해보자” 라고 말해주어서, 자신감을 가지고 끝까지 완성해 낼 수 있었다.
처음부터 잘~ 디자인해서 만드는게 중요하다는 사실을 깨달았지만, 성훈이형이 건내준 한마디에 용기를 얻고 프로젝트를 끝까지 완성할 수 있었던 것 같다.
CPU스케쥴링에 대해 이해하고, VM의 작동방식, 파일시스템 디자인 뭐 공부는 이래저래 많이했다. 많은 학습이 이루어졌다. 하지만, 눈이 많이 왔다는것과, 빡셌다는 기억만 흐릿하게 남아있다. ‘그냥 하는거지 뭐~’ 하면서 그렇게 해나갔던 것 같다. 그렇게 핀토스를 끝마쳤다. 미친듯한 짜릿함이나, 답답함 보다는.. 꽤나 어려웠던 이 프로젝트를 그렇게 덤덤히 끝까지 해 나갔다.
⭐️최종보스(나만무)
13~17 주차
의 나만무 기간에는 1월을 통째로 썼다. 핀토스때보다 눈이 적게 왔던 것 같다.
13~17
주차를 떠올리면, 기억에 남는 순간 하나가 있다. 새벽5시에 기숙사에 돌아와서, 룸메이트와 상태관리 라이브러리나 프로젝트 관리 방법에 대해 이야기하다 잠들었던 기억들이 생각난다. 대부분의 시간은 하루종일 강의실에서 팀원들과 이야기하며 개발했던, 뭐 그런 시간들이지만 그건 이제 당연하게 느껴진다. 잠들기 직전까지 더 나은방법에 대해 고민하고, 토론하던, 그런 태도야 말로 앞으로 간직하게 될 좋은 자세이지 않을까 싶다.
성배(룸메이트)와 새벽 5시쯤에 만나면 ‘숙제’라고 불리우는 것들을 해 나갔다. 낮에는 정신없어서 처리하지 못했던 친구, 가족들과의 카톡에 답장을 해나가는 것이다. 그리고 침대에 누워서는, CORS에 대해 설명해주는 유튜브를 본다던지, 프레임웍의 트렌드, 본인의 클린코드철학에 대해 설명하는 영상 등을 본다든지… 낮에 생겼던 궁금증에 대해 차분하게 관련지식들을 보다 잠들었다. 이 글을 쓰고있는 요즘도 개발관련 유튜브를 보다 잠든다. 실제로 재미있게 느껴진다.
몇년 전에는 낮에 열심히 일하고, 저녁에는 취미생활 및 부업을 꿈꿨던 시기가 있었다. 요즘에는 낮에 공부하다가 생겼던 궁금증들을, 밤에 누워서 해결하고있다. ‘아… 그런거였구나’ 하고 말이다.
좋은 습관이 자리잡게 된 것 같다. 롤 2~3판정도는 하고 잠들 수 있을 정도의 여유를 가진 프리랜서가 되는게 꿈일때가 있었다. 요즘은 13~17주차
때 가졌던 습관들을 되도록 유지하고자 한다. 생각해 보면 이러한 습관들을 들일 수 있는게 정글의 장점이 아닌가 싶다.
(내 추측으로는) 정글이라는 부트캠프의 취업률 자체는, 부트캠프중 조금 좋은편 정도이지 아닐까 싶다. 하지만 이렇게 노력하는 자세를 키워줄 수 있는 캠프는 별로 없을 것 같다는 생각이 든다.
사실 취업 자체는 내게 큰 허들로 왔던적이 없다. 내가 어떤 사람인지 파악하기 위해 노력 해 왔기에, 내가 원하는 곳을 골라갈 실력이 되지는 않을지언정 나를 필요로 할 어딘가에 취업 할 자신은 있었던 것 같다.(물론 22.07쯤 부터 신입 개발자 취업시장이 많이 얼어서, 지금 분위기 기준으로는 장담을 못했을 것 같다.)
그럼에도 불구하고 정글을 택하고, 얻어냈다고 생각하는것은 CS지식과, 이러한 태도이다. 정글 1주차 에세이에서 말했듯 CS지식을 얻고자 왔지만, 이러한 태도를 얻게된 것 역시 좋은 수확인 것 같다.
13~17주차
는 이러한 태도를 얻었다.
⭐️돌아보니
글을 쓰면서 정리를 하니, CS지식 외적으로 많은것을 얻은 것 같다.
1~4주차
에는 효율적인 공부방법을 계속 고민해 보았으며,
5~7주차
에는 협업에 대해 새로운 시각을 얻었다.
8~12주차
에는 아무리 힘들어도 ‘그냥 하는거지 뭐~’라는 자세로(한숨한번 쉬고) 문제들을 해결해 나가게 되었으며,
13~17주차
에는 잠에서 깨고 다시 잠에 드는 그 순간까지, 하루종일 고민하고 적정 기술을 적용하기 위해 힘썼던 것 같다.
점진적으로 조련(?) 당했구나?라는 생각도 든다. 1~4주차때 찍었던 몇몇 사진들이 있다. 이 사진들을 보면, 12시쯤에는 1/3만 남아있고, 2~3시쯤에는 교실에 한명도 남아있지 않곤 했다. 친구들에게 물어보면 기억이 나질 않는다고 한다.
동기들이 ‘어? 나 그때도 3시까지 공부했던 것 같은데…?’ 라고 말하곤 하지만, 사진들을 보니 그렇지 않은 것 같다. 밤 늦게까지 공부하는게 좋다는 뜻은 절대 아니지만, 밤늦게까지, 하루종일 고민하는 그 태도가 모두에게 자연스러워 질 수 있도록 조련(?) 당했던 시간이 아니였나 싶다.
불과 2년전만 해도, 나는 이러한 종류의 프로그램들에 대해 부정적으로 생각했다. 과격하게 표현하자면, 세뇌당한 노예를 효율적으로 양성하는 친국가적 컴퓨터 노예양성소라고 생각했다.(당연히 그 생각은 들어오기 전부터 없어져 있었다)
지금은 훨씬 인생이 자유롭게 느껴졌다.내가 업으로 삼을만한 분야라는 것에 대해 확신을 가지게 되었고, 앞으로 몇번 없을 만큼 (위급한?)상황까지 몰입해 보았다. 새로운 길들도 몇개 보이는 것 같고 새로운 선택지들도 보이는 것 같다. 물론 실력이 좋아지면 더 많은 선택지에서 상황에 맞는것들을 취할 예정이다. 이제 막 신입으로 취업하게 될 녀석이 이런 소리를 하나 싶기도 하고, 몇년 뒤 이 글을 보면 웃길 것 같다. 하지만, 지금은 더 많은 선택지들이 생겨났음을 느끼고, 추후에는 더 상황이 좋아질것이라는 생각이 든다.
최고의 노예가 되면 오히려 선택권이 많아지는건가 싶기도 하다. 뭐 잘 모르겠다. 사실 지금은 똥인지 된장인지 알기 어려운 것 같다. 낙관적으로 생각되긴 하지만, 내 인생이 어떻게 흘러갈지, 최근 5개월간의 행보들이 어떤식으로 영향을 주게될지 모르겠다. 정글선택을 후회하지는 않지만, 정글을 택함으로써 얻은 이점들을 지금당장 정확한 가치를 측정하기 불가능하다는 뜻이다. 그러므로, 정글을 택하길 정말 잘했다~ 정글이 최고다~ 이런 말은 하지 못하겠다. 많은것을 얻었고, 이것들이 매우 유용할 것이라는 생각이 든다.
더 나은 선택지들이 있었을 ‘수’도 있고, 없었을 ‘수’도 있다. 그저 지금 시점
에서, 근 몇개월간 노력했던, 그 순간들이 그립고, 고맙고, 많은 영감을 얻었음을 인정한다. 후회하지 않는 선택이였으며, 좋은 룸메이트와, 좋은 동기들을 만나게 해준 운이 내게 있었음에 감사한다.
이렇게 시원스럽지 못하게 5개월 회고를 마친다. 실제 마음도 시원스럽지는 않다. 취업을 하고, 내게 baby가 생기기 전까지는 준-정글처럼 살게되지 않을까 싶다. 뭘 하면 될지 알게되었지만, 쉽지 않은 길이기에 괜시리 답답한 마음이 드나 싶다.
이게 좋은건지 안좋은건지도 모르겠다. 똥인지 된장인지도 모르겠다. 또 만나게 될 가시밭길을 걸어나갈 내공이 생겨있기를 기대한다. 그저, 공부할수 있는 환경, 5개월을 응원해준 주변사람들, 5기a반 동기들, 이 모든것이 내게 있었음에 그저 감사할 뿐이다. 회고 끝!
(사진: 267호, 정글-forever 뭐 그런 뜻)
😵배우면서 깨달은 내용을 정리해 보았습니다. 틀린 것 같은 개념을 아래 댓글에 달아주시면 감사합니다😵
🌜 Thank you for reading it. Please leave your comments below😄
댓글 남기기