대학원 진학을 생각하고 있었기에 취준과는 거리가 많이 멀었다. 그러던 중 졸업을 앞두고 있는 시점에서 취업에 대한 욕심이 조금 생겨나게 되었다. 어느 정도 취업 요건을 채웠기도 했고 실무 경험을 꼭 해보고 싶었던 이유도 있었다.
하지만 취준에서 가장 중요한 코테가 걱정되었다. 전공 과목으로 알고리즘을 배웠긴 했지만 잘 안다고 자부할 정도는 아니었기도 하고, 자료구조도 거의 다 까먹어갔기 때문이다. 백준에서 쉬운 브론즈 문제는 잘 풀지만 어려운 브론즈 ~ 실버 사이에서는 항상 어려움을 겪기도 했다.
그래도 이대로 물러날 순 없다고 생각하던 와중 99클럽 코테 스터디 광고를 봤던 거 같다. 스터디에 참여하면서 알고리즘과 자료구조를 복습하면서 단기간에 문제 해결 능력을 기르는 것을 방학 동안의 목표로 잡았다.
관련 도서가 집에 많기도 했고, 봐야 하지만 밀린 강의도 있었기 때문에 학습 환경은 충분히 조성할 수 있었다. 하반기 취업을 생각하고 있기 때문에 지금 얼마 남지 않은 시점에서 최대한 효율적으로 공부를 하는 것이 내게 중요했다.
스터디는 1월 중순부터 2월 말까지 총 6주 동안 진행되었다. 평일에만 코테 문제가 출제되었기 때문에 실질적으로는 30일 동안 공부한 셈이다.
매일 오전 11시에 문제가 출제되고 그 다음날 11시까지 문제 풀이 인증과 TIL 링크를 제출하면 되었다. 특히 매주 월요일 오후 8시에는 디스코드 내에서 라이브 강의도 진행했었다.
가장 중요한 문제는 비기너, 미들러, 챌린저로 나누어서 출제되었으며 대부분의 문제들은 백준, 프로그래머스, 리트코드에서 출제된 것이었다.
나는 비기너 단계를 도전했는데, 처음에 입출력 문제로 시작해서 나중에는 자료 구조(딕셔너리, 큐, 힙 등) 관련 문제도 출제되었다. 자료구조를 모르면 살짝 어렵게 느껴질 수 있지만 정기 스터디의 라이브 강의에서 배울 수 있어서 괜찮았던 거 같다.
코테 문제 풀이 인증, 정기 스터디 출석(라이브 강의), TIL 제출 수에 따라 단계별로 보상이 나뉘었다. 최대 5레벨까지로 구성되어 있는데, 나는 가끔 깜빡해서 제출을 안 한 적도 있어서 3레벨에서 스터디를 마치게 되었다.
나의 현황뿐만 아니라 스터디 평균 현황도 볼 수 있어서 나름 동기 부여도 된다. 스터디 마지막에 자격증 시험이랑 대회로 인해 살짝 해이해져서 아쉬운 맘이 없지 않아 있다.
일단 가장 떠오르는 장점은 꾸준히 코테 문제를 풀 수 있다는 것이다. 예전에 한창 백준 문제 풀다가 놓은지 좀 되었는데, 현재는 스터디가 종료되고 나서도 풀고 있다. 꾸준히 공부하는 습관을 형성할 수 있어서 도움이 많이 되었다.
특히 수동적으로 공부하기보다는 스스로 자료를 서치해가면서 공부할 수 있게 되었다. 귀찮음으로 인해 공부의 범위가 좁혀지게 되고 의지도 사라지게 되는데, 방학 기간 스터디에 참여하면서 많이 극복해냈다.
또한 나는 밤 ~ 새벽 중에 공부를 더 많이 하기 때문에 문제 풀이 인증 시간대가 다음 날 오전 11시까지였던 것이 좋기도 했다. 학생들도 많지만 현직자 분들도 계실 것으로 예상되기 때문에 이렇게 설정해주신 것 같은데 정말 시간 투자에 있어서도 문제가 되지 않아 좋았다.
딱히 없긴 하지만 굳이 말한다고 하면 사이트가 조금 불편했다. 문제 풀이 시간 잴 때 가끔 오류가 나기도 했었고, 살짝 뎁스가 느껴지는 듯해서 홈페이지에 손이 잘 안 갔었다.
근데 정말 굳이 생각하는 아쉬웠던 부분이지, 스터디 자체에 있어 마이너스가 되는 요소는 아니라고 생각한다. 충분히 구축이 잘 되어 있고 디스코드나 카톡방처럼 다른 소통 수단도 잘 마련되어 있기 때문이다.
요즘은 알고리즘을 위한 코드보다는 서비스를 위한 코드를 많이 작성하다보니 생각보다 파이썬에서 많은 기능들을 놓치고 있었던 거 같다. 스터디 후에는 set()
, map()
, heap
등 다양한 함수들에 대해서 잘 알 수 있게 되었고, 더이상 코테 문제가 두렵지 않게 되었다.
예전에는 문제를 풀 때 두려움이 앞섰는데 지금은 두려움보다는 '어떻게 이 문제를 해결할 것인지' 먼저 찾아 나서려고 하고 있다. 그러다보니 문제도 많이 풀게 되면서 백준도 브론즈에서 실버 4로 승급할 수 있었다.
스터디 처음 목표와 다르게 알고리즘 이론이나 자료구조 개념에 대해서 완전히 복습하는 시간은 가지지 못했지만, 문제 하나 풀면서 개념 정리를 하면서 간접적으로 해결할 수 있었다. 워낙 바빴던 탓이라 학기 초까지는 완료해 놓겠다고 다시 마음을 먹었다.
그리고 예전 스터디에서 했었던 백준 그룹 내 문제들도 다시 풀어봐야겠다. 너무 어려워서 아직도 못 푼 문제가 있는데 개념 공부만 다시 하면 쉽게 풀 수 있을 것 같다. (BFS, DFS 문제들) 그래도 생각했던 목표에서 70-80%는 달성했다고 생각하며, 참가비 3만원이 정말 아깝지 않게 공부할 수 있었다.
스터디에 참여하면서 작성한 코드들은 모두 깃허브에 업로드 해두었다. 벨로그에서 현재 시리즈에 코드 및 풀이 등에 대해서도 작성해 두었다.
TIL을 쓰다 보면 점점 많아져서 괜히 쓰기 싫어질 때가 있는데 그래도 꾹 참고 쓰니까 되게 보람차다. 다른 거 공부할 때도 TIL은 꾸준히 쓸 생각이다.
코테를 준비 중이거나 코테 공부를 처음 시작하는 개발자라면 99클럽을 통해 코테 공부를 꾸준히 하는 방법도 나쁘지 않은 것 같다. 특히 혼자 공부하기 어렵다면 더욱 동기 부여가 되리라 생각한다.