코딩테스트 어느 정도 수준까지 준비해야 할까요?

네이버웹툰 · KW Server Tech

멘티 질문

안녕하세요. 3학년에 재학 중이며, IT 관련 학과에서 백엔드 개발을 공부하고 있는 학생입니다. 최근 코딩테스트 준비의 필요성을 절감하고 본격적으로 대비를 시작했는데, 온라인에서 접한 정보들이 조금씩 달라 혼란스러워 이렇게 질문을 드리게 되었습니다.


학년 대비 준비가 늦은 편이고, 학과 커리큘럼상 일부 중요한 CS 과목(알고리즘 포함)이 빠져 있어 더욱 막막하게 느껴지는 상황입니다. 그래서 중요도 높은 영역부터 우선적으로 학습하고자 합니다.


©Boitumelo


1.학교 알고리즘 강의나 전공 서적에서 다루는 지엽적인 알고리즘들도 코딩테스트나 기술면접에서 출제되는 편인가요? 예를 들어, AVL 트리, 세그먼트 트리, 해싱, 위상 정렬 같은 알고리즘 등을 별도로 공부할 필요가 있는지 궁금합니다.

2.전공 강의나 서적에서는 C/C++로 힙 자료구조를 직접 구현하거나, 다양한 정렬 알고리즘을 내부 동작까지 깊이 다루기도 하는데요. 이런 구현 중심의 내용들도 기술면접에서 질문될 수 있는 주제인지 알고 싶습니다. 즉, 단순히 라이브러리 사용법을 아는 것을 넘어서, 내부 동작이나 직접 구현 능력을 보는 경우도 있는지 궁금합니다.

멘토 답변

안녕하세요 :) 질문 주신 내용 하나씩 정리해 답변 드릴게요!


<코딩테스트 준비>

코딩테스트는 백준 기준 골드1 수준까지 문제 풀이 실력을 끌어올리는 것을 목표로 하시면 좋습니다. 세그먼트 트리 같은 고난이도 알고리즘은 대회 수준에서 자주 등장하는 편이고, 일반 기업 코테에서는 많이 나오지 않기 때문에 초반에는 우선순위를 낮춰도 괜찮습니다. 


다만, 힙 자료구조의 경우는 면접에서도 꽤 자주 나오는 주제라, C/C++로 직접 구현할 필요는 없더라도 작동 방식과 각 연산의 시간복잡도 정도는 꼭 이해해두시길 추천드립니다.


※ 참고로 백엔드 직무의 경우, 일부 기업에서는 Java 언어로 코테를 제한하는 곳도 있어요. 저는 C++로 알고리즘을 공부하다가, 실제 취업을 앞둔 마지막 방학 때 Java로 코테 연습을 따로 했던 경험이 있습니다. 사용 언어에 대해서도 미리 살펴보시면 좋아요.


©Mohammad Rahmani


<CS 지식 학습>

CS는 당연히 깊게 공부하면 좋지만, 자바/스프링처럼 실제 업무와 밀접한 기술에 시간을 더 투자하시는 것을 추천드려요. 만약 전공 서적이 부담스럽다면, 면접 기출 질문 위주로 리스트를 정리한 뒤, 하나씩 스스로 답을 만들어보면서 공부하는 방식도 아주 효과적입니다.


더하여 IT 업계에서는 대부분 어학 성적은 ‘지원 자격 충족’ 정도로만 보는 경우가 많습니다. 이미 성적이 좋다면 당연히 장점이 되지만, 일부러 점수만을 위해 시간을 쓰는 것은 효율적이지 않을 수 있어요. 서비스 기반 IT 회사들은 자격증이나 어학을 크게 중요하게 여기진 않지만, 금융 IT 계열은 자격증(SQLD, 정보처리기사, 빅데이터 분석기사 등)이 실제 채용에서 도움이 되니 목표하는 기업 성격에 따라 선택적으로 준비하시면 좋겠습니다.


추가로 궁금한 점이 생기시면 언제든 편하게 질문 주세요. 코딩테스트와 기술 면접 모두 잘 준비하셔서 좋은 결과 있으시길 진심으로 응원합니다!

이현석 멘토

네이버웹툰 · KW Server Tech

IT개발/데이터

안녕하세요, 네이버웹툰 백엔드 개발자 이현석입니다.
네이버웹툰, 카카오 등 여러 회사에 동시에 합격했으며,
취준 당시, 모든 회사에 서류 및 코딩테스트를 합격했습니다.
포트폴리오, 자소서 첨삭부터 공부 방향까지 도움 필요하신 점 멘티분들이 원하는 방향으로 멘토링 진행하고 싶습니다.