본문 바로가기

카테고리 없음

 지난 7개월 간의 멘토링을 회고하며 (feat. F-Lab)

0. 들어가며

"🎶... 🎶..."

평범한 어느 날 오후, 그 어느때와 같은 일상이 진행되던 와중, 평소와 다름 없이 같은 벨소리가 울려퍼지기 시작했다. 별 생각 없이 평소처럼 전화를 받았는데, 수화기 넘어로 내가 맞는지 묻는 소리가 들려왔다.

"안녕하세요. 000님 전화 맞나요?"

"네"

"축하드립니다. 최종 면접에 통과하셨습니다. ..."

"... 네?!"

그 동안 가장 기다렸던 말이었기에, 놀라움에 몇 초간 그 자리에 멍하니 서 있을 수밖에 없었다. 믿기지 않았다. 얼마 전까지만 해도 나는, 되고 싶은 것은 있지만 무엇을 해야 할지 모르는 상황이었다. 불안했다. 그동안 개발과 관련된 접점이 전무했으니 더욱 그랬다. 인터넷에서 잘 정리되어 있다는 로드맵을 보았으나, 어마어마한 그 스케일에 압도되고 말았었다. 그랬던 내가, 불과 반 년이 조금 넘는 시간만에 채용이 되었다는 안내를 받고, 개발자로서의 커리어를 이끌어 나갈 수 있게 되었다. 이것은 혼자였다면 아마 꿈꾸지 못했을 그런 값진 성과였다.



1. 만남, 그리고 시작

F-Lab을 접하게 된 것은 정말 우연히 보게 된 한 광고였다. 당시 개발자가 되려면 무엇을 해야하는지 여기저기 검색해보던 시기여서 그런지 유튜브, SNS, 구글 등 사이트를 막론하고, 개발관련 맞춤광고 세례를 받고 있었다. 지나친 선택의 늪에서 결정장애에 빠져있던 내게, 눈에 띈 것이 바로 F-Lab의 광고였다. 처음에는 누구나 알만한 기업출신의 멘토 분들이 멘토링을 한다는 사실에, 무이 다를까'하고 혹해서 클릭했다. 그리고 나를 확 사로잡았던 것은 뛰어난 멘토분들이 방향을 제시해준다는 것과, 멘토링 종료 후에도 어떻게 성장해나가야 할지를 배우게 해준다는 그런 문구였다.

당시의 내가 갈피를 못잡고 있었던 이유는 시작점과 방향성의 부재였다. 여러 매체에서 각각 효율적이라고 강조하는 공부법이 달랐기에, 혼란스러웠다. 힘들게 강의 하나를 골라서 그것을 들으면서, 화면에 나오는 코드를 열심히 따라서 쳐봐도 항상 그 때 뿐이었다. 강의를 끄고 혼자서는 아무것도 하지 못했다. 때문에 내가 간절히 필요했던 것은 믿고 따라갈 수 있는 방향과 이후의 홀로서기였다. 그리고 F-Lab에서 제시하는 바가 이에 딱 부합하고 있었다.

문제는 멘토링 비용과 (당시에) 정보의 부재였다. 다행히 그때, 영어학원에서 파트타임으로 일하고 있었기에, 월급여를 온전히 멘토링과 추가 공부비용에 사용한다면 비용 문제는 해결할 수 있을 것으로 보였고, 비용을 많이 들이더라도 좋은 개발자가 되는 방법을 배울 수만 있다면 미래에 충분히 가치있는 투자가 될 것이라 생각했다. 정보의 경우는, 사실 처음에는 반신반의 했었다. 이제는 F-Lab이 좋은 성과를 바탕으로 규모가 굉장히 커져서 다양한 정보와 후기를 찾을 수 있게 되었지만, 당시에는 홈페이지 한 곳이 내가 찾을 수 있는 모든 것이었다. (아니면 내가 검색 능력이 부족해서 못찾았던 것일 수도 있다...) 그래도 좋은 성과를 내고 있음을 확인할 수 있었기에, 수많은 고민 끝에 나도 좋은 개발자가 되고 싶는 법을 배우기 위해 멘토링을 신청하게 되었다.



2. 멘토링 전 상담

멘토링 신청서를 제출하고 다음 스텝은 화상으로 상담을 받는 것이었다. 이런 저런 이야기를 듣고, 궁금한 점을 물어보는 시간이었다. 이제는 시간이 조금 지나서 정확히 어떤 대화를 주고 받았는지 모두 기억이 나지 않지만, 이 상담 이후로 책으로 개발을 공부하는 것에 대한 내 생각이 바뀔 수 있었다. 이전에 나는, 요즘 특히 개발 기술이 트렌드에 맞게 빠르게 변화하기 때문에 책으로 하는 공부는 바람직하지 않고, 트렌드를 즉각 반영해서 그때 그때 출시되는 인터넷 강의가 개발 공부에 가장 적합하다고 생각했었다. 하지만 멘토님의 설명을 들으면서, 기술은 빠르게 변화하지만 그것을 담고 있는 핵심 이론들은 크게 바뀌지 않았으며, 그것을 가장 잘 담고 있는 것이 잘 정제된 책임을 배울 수 있었다. 사실 당시만 해도 '아 그렇구나'정도로 끄덕이고 끝났었는데, 멘토링을 진행하면서 책으로 계속 공부를 해보니 이때 했던 말들이 실감이 가기 시작했다.

 

3. 프로젝트 준비과정

멘토링 진행 방식은 기본적으로 이론 공부 + 프로젝트 병행이었다. 다만, 특이한 점은 처음부터 프로젝트를 진행하는 것이 아니라 기본적인 이론에 대한 학습을 먼저 진행한다는 점이다. 이 시기에 자바와 객체지향 등의 이론에 대해서 깊은 학습을 진행하게 되는데, 이 때가 가장 힘들었던 시기였다. 멘토링 후기를 살펴보면 단점으로 자주 언급되는 것이 '깊게 학습하다 보니 진도가 나가지 않아 조급함을 느끼게 된다.' 이다. 나 또한 이 단계에서 같은 생각을 많이 했었다. 지금와서야 꼭 필요했던 과정이었음을 느끼고 있지만, 당시에는 딱히 큰 성과 없이 책만 들여다 보고 있으니 때때로 자신만의 외로운 싸움처럼 느껴지기도 했다. 

다행인 점은 내 상황을 들어주고 이에 대해 논의할 만한 대상이 존재한다는 점이었다. 의구심이 들 때마다 멘토님께 올바른 방향으로 가고 있는지 여쭤보고, 답변을 들으면서 잘 하고 있다는 확신을 조금씩 채워갈 수 있었다. 매주 공부한 내용에 대해서는 멘토님이 질문주실 때마다 제대로 답변하지 못하는 내 모습에 부족함을 많이 느끼고 더욱 열심히 해야겠다는 자극도 받을 수 있었다. 회고록을 작성하면서 느낀점이 멘토링을 진행하면서 여러 내용을 학습하고, 올바른 공부 습관이 조금씩 잡히다보니 자연스럽게 학습 속도에도 가속도가 붙었다는 점이다. 즉, 열심히하면 나중에 자연스럽게 해소될 단점이었던 것이다. 자신이 지금까지 공부한 양 외에도 앞으로 투자할 시간과 노력여하가 멘토링의 효율을 결정하는 것도 큰 장점이었다고 생각한다. 결국 한 만큼 얻을 수 있기 때문에 노력에 대한 정당성을 부여받게 되고, 더욱 열심히 하게되었던 것 같다. 실례로 나는 자바에 대해 아무것도 모르고 시작했다. 그래서 하루에 못해도 8시간 정도를 투자하려고 노력했다. 덕분에 멘토님도 일정이 생각보다 빠르게 진행되고 있다고 하셨고, 선수 지식이 없었음에도 프로젝트 준비 기간을 한 달 ~ 한 달 반 정도로 단축시킬 수 있었다.

 

4. 프로젝트 진행

기초적인 이론 공부(자바, 객체지향, 스프링 등)를 마치고 드디어 프로젝트를 시작하게 되었다. 이전에 제대로 된 프로젝트를 만들어 본 적이 없었기 때문에 처음부터 난항을 겪었다. 다시 한 번 막막함이 밀려들어왔다. '대체 무엇부터 시작해야 하는가?' 이렇게 갈피를 못잡던 차에 멘토님께서 방향을 제시해 주었다. 일단 주제를 잡고 필요한 기능들을 정의해보는 것이었다. 그래서 그렇게 한 뒤, 필요한 기능을 하나씩 구현해나가다보니 프로젝트를 끝까지 완성할 수 있었다.

물론 돌이켜보면 아무것도 순조로운 것이 없었다. 예를 들어, 처음 프로젝트를 생성하고 DB를 프로젝트에 연결하는데, 알 수 없는 오류가 발생했다. 해당 문제를 이틀 째 해결하지 못해서 프로젝트의 진행이 멈추자 조급함이 들었다. 해당 내용으로 검색을 해봐도 별다른 성과가 없었다. 결국 멘토님께 도움을 요청했다. 곧바로 답을 제공해주는 것은 멘토링의 취지에 어긋나기 때문에 바로 정답을 주시지는 않았다. 대신 정답을 찾을 수 있는 키워드를 제시해 주셨다. 당시에는 프로젝트를 아예 진행하지 못하고 있었기에 좌절감이 들었고 속으로는 매우 답답하기도 했다. 이때도 멘토님께서 해주신 말씀이 도움이 많이 되었는데, 이렇게 무수한 삽질이 나중에 영양분이 된다는 것이었다. 돌아켜보니 실제로 덕분에 검색하는 방법과 문제 해결에 대한 훈련을 할 수 있었고, 무엇보다 에러 메시지를 꼼꼼히 읽어보는 습관을 들이게 되어 이후에 정말로 큰 도움이 되었다.

이외에는 멘토링을 받으면서 프로젝트를 진행하는 것이 참 다행이라고 여겼던 순간이 많이 있었다. 가장 먼저 프로젝트의 전반을 모두 다룰 수 있었다는 것이다. 프로젝트를 구상하고, DB 스키마를 설계하는 것부터 실제로 동작하는 애플리케이션을 만들고 배포하고 뒤이어 성능을 측정해보고 모니터링하면서 개선하는 것까지... 덕분에 프로젝트의 전체적인 구조와 각각의 과정을 배우고 프로젝트가 어떻게 진행되는지 익히게 되었다. 전반적인 과정을 익히고나니 다음은 어떻게 어떻게 해봐야겠다는 구상을 할 수 있게 되었고, 전체적인 그림 또한 머리 속에 그릴 수 있게 되었다. 그러면서도 진행사항을 모두 확인받을 수 있다는 것이 좋았다. 프로젝트를 진행하면서, 내가 과연 맞게 하고 있는지에 대한 의문이 여러 번 들었다. 아마 모든 것이 처음이라서 더 그랬던 것 같다. 그럴 때마다 코드 리뷰와 질문을 통해 내가 하고 있는 것에 대해 확신을 더할 수 있었다. 코드 리뷰는 '과연 내가 구상한 코드가 깔끔한가?' 혹은 '내 코드가 올바르면서도 효율적으로 동작할까'에 대한 답을, 추가적인 질문들은 '과연 내가 제대로 프로젝트를 수행하고 있는가'에 대한 답을 주었다. 혼자 진행했다면, 잘 하고 있다는 확신이 없어서 아마도 중간에 포기할 수밖에 없었을 것이다.

마지막으로는 코드를 구상할 때, 단순한 기능 구현을 넘어서 해당 코드가 성능에 미치는 영향까지 고려하는 법을 배웠다는 점이다. 이와 더불어 이론공부의 중요성도 함께 깨닫게 되었다. 예를 들면 데이터베이스에서 무언가를 가져올 때 쿼리 1000개를 각각 날리던 1000개를 모아 한 번에 날리던 같은 결과를 가져온다. 눈에 보이는 결과는 똑같다. 하지만, 전자는 오버헤드가 발생하게 된다. 실제로 쿼리를 실행하는 비용보다 이를 위한 준비 및 처리과정이 더 많은 비용을 소모하기 때문이다. 그리고 개별 처리는 준비 및 처리과정에 대한 비용을 매번 발생시킨다. 프로젝트를 진행하면서 DB 관련 이론을 공부하지 않았다면 이러한 부분을 고려할 수 있게 되었을까? 간단한 내용이라도 성능에 미치는 영향을 고려하게 되니 자연스럽게 이론의 중요성도 깨달을 수 있엇고, 덕분에 이론을 공부하는 것이 조금은 더 즐거워지는 경험을 할 수 있었다.

 

5. 취업지원

5 - 1) 이력서 작성

이력서를 업데이트할 때마다 작성한 내용에 대한 피드백을 제공받을 수 있었고, 덕분에 마지막에는 지원에 사용가능한 퀄리티를 가진 이력서를 탄생시킬 수 있었다. 사실 이 부분이 제일 막막했던 부분 중 하나였다. 그동안 마땅히 했던 활동이 없었고, 특히 개발과 연관있는 것들이 아예 없었기 때문이다. 그래도 멘토님의 피드백을 받으면서 사소한 활동까지 나의 성과를 반영해서 글을 쓰는 법을 익힐 수 있었다. 이후 프로젝트를 진행하면서는 내가 겪었던 기술적인 부분에 대한 이슈와 해결방안을 이력서에 좀 더 깔끔하게 녹여내는 법을 배웠고, 최종적으로는 모든 성과를 반영하면서도 한눈에 잘 들어오는 이력서가 만들어졌다.

5 - 2) 모의 면접

정말 좋았고, 많은 도움을 받은 부분 중 하나였다. 면접을 보기 전 내가 생각했던 것은, 그래도 기술면접에 대해서는 그동안 이론 공부와 프로젝트를 열심히 병행했기 때문에 잘 대비되어 있을 것이라 생각했다. 하지만 그러한 생각이 착각임을 깨닫는데에는 얼마 걸리지 않았다. 사실 나는 면접 자체에 대한 대비가 아예 되어 있지 않았다. 우연히 면접 당일 날 멘토링 시간이 겹쳐서 모의 면접을 보게되었는데 이때 이를 바로 깨닫게 되었다. 멘토님께서 면접관로서의 경험이 있다보니, 날카로운 면접관의 시선으로 모든 것을 분석하면서 어투, 카메라 각도(화상면접) 등 처리가 부족한 부분을 모두 짚어내주셨다. 당일이 면접 날이었던 만큼 두 배로 멘탈에 큰 충격을 받았었다. 그래도 멘토님께서 지금까지 잘 해왔으니 문제 없을거라고 격려해 주시면서 개선할 방안도 함께 제시해주셨다. 덕분에 남은 시간 동안 힘내서 같은 내용을 계속 반복하고, 피드백을 반영해가면서 모의 면접을 진행했다. 지금 돌아보니, 면접 두 시간 전이었지만 멘토링과 같은 날이었음은 정말 행운이었다. 이러한 도움 덕분에 채용으로의 첫 관문을 무사히 한 번에 지나갈 수 있었다.

 

6. 나오며

회고록을 작성하기 위해 지난 7개월 간의 멘토링을 돌아보는 시간을 가졌다. 당시에는 몰랐는데, 생각보다 많은 일들이 있었음을 다시 한 번 느낄 수 있었다. 우연히 접했던 하나의 광고가, 한 번의 선택이 이렇게까지 많은 영향을 미칠 것을 나는 예상하지 못했다. 더 많은 내용이 있는데, 글이 지나치게 길어질까 더 담을 수 없어 마음 한켠이 시린다. 문득 마지막 멘토링 시간에 들었던 멘토님의 말씀이 떠오른다. 여태까지 잘 해오셨으니 앞으로도 그렇게 하시면 된다고, 더 이상 멘토링의 도움이 없어도 잘 하실 것 같다고. 멘토링 종료 후 3개월, 나는 그간 잘 해오고 있었을까? 이번 회고록을 계기로 다시 한 번 반성하며 그때처럼 더 치열하게 고민하고, 학습하고 성장해나가야겠다고 다짐을 해본다.