필자는 막 대학교를 졸업하고 취업전선에 뛰어든 초짜 취업준비생이다.
대기업, 중소기업, 스타트업 가리지 않고 내가 원하는 회사의 조건에 맞는다면 지원하고 있다.
그 과정에서 다양한 코딩테스트 플랫폼을 경험했고, “이런 코딩테스트 플랫폼이 있다고?”라는 감정을 느낄 때도 있었다.
이 경험을 나누고자 이 글을 써본다.
취업을 준비하기 이전에는 프로그래머스를 대표적으로 알았다.
그리고 취업을 시작한 뒤로는 세상에 많은 코딩테스트 플랫폼이 있다는 것을 알았다.
programmers, codility, goorm, testdome 네가지의 플랫폼에 대해 소개해보려 한다.
가장 대중적으로 사용하는 코딩테스트 플랫폼이다.
네이버와 카카오에서 해당 플랫폼을 사용하여 2020년 공채를 진행한 이력이 있다.
programmers는 코딩테스트 뿐만 아니라 코딩테스트를 준비하는데도 적합한 플랫폼이다.
코딩테스트 고득점 kit에서 큐, 해시와 같은 자료구조/알고리즘에 맞게 분리하여 문제를 제공한다
또한, 코딩테스트 모든 문제에서는 레벨 / 언어 에 따라 문제를 필터링하여 풀 수 있다.
카카오 공채 코딩테스트 문제를 programmers에서 제공한다.
해당 플랫폼을 통해 코딩테스트를 진행했을 때 아래와 같은 특징을 가지고 있다.
문제 : 한글
입력값 : parameter로 제공
프로그래밍 언어제공 : 다양함
Ctrl +c/v : 대부분 가능 (하지만 회사마다 다르니 안내사항을 숙지하길 바람)
필자는 해당 플랫폼을 11번가 2020년 공채에서 접한 경험이 있다.
해당 플랫폼 또한 테스트 이전에 문제를 풀어볼 수 있게 제공되고 있다.
lesson에서는 실제 시험을 보는 것 처럼 지정된 시간에 맞춰서 문제를 풀어볼 수 있다. 또한 레슨을 체계적으로 분리하여 순서에 맞게 자료구조와 알고리즘을 접할 수 있도록 구성되어 있다.
challenge은 위와 유사하게 지정된 시간에 지정된 문제를 풀어볼 수 있다. 진행되고 있는 challenge을 진행할 경우 현재의 순위를 확인할 수 있다. 과거의 challenge또한 진행할 수 있다.
해당 플랫폼을 통해 코딩테스트를 진행했을 때 아래와 같은 특징을 가지고 있다.
문제 : 영어
입력값 : parameter로 제공
프로그래밍 언어제공 : 다양함
Ctrl +c/v : 대부분 가능 (하지만 회사마다 다르니 안내사항을 숙지하길 바람)
이와에 특이 사항은 1번의 제출만 가능하다는 것이다. 다수의 플랫폼에서 최근 제출을 최종 제출로 취급하여 여러번 제출할 수 있으나 11번가의 공채에서 경험한 codility는 한번의 제출만을 허용했다.
필자는 해당 플랫폼을 마이리얼트립의 코딩테스트에서 접한 경험이 있다.
해당 플랫폼 또한 적지 않은 문제를 소지함으로써 코딩테스트 준비하는 용도로 나쁘지 않다고 생각한다.
하지만 입력값을 직접 받아야하는 불편함이 있어 오로지 자료구조와 알고리즘에 집중하기에는 어려움이 있다고 생각한다.
하지만 실제 테스트에서 입력값을 직접받아야 하는 경우가 없지 않기 때문에 해당 플랫폼으로 준비를 하는 것도 추천한다.
실제 코딩테스트 진행시, 입력값을 받는 것과 받지 않는 것은 다르기 때문이다.
(입력값을 받는 코딩테스트 준비 사이트로는 대표적으로 백준이 있다.)
해당 플랫폼을 통해 코딩테스트를 진행했을 때 아래와 같은 특징을 가지고 있다.
문제 : 한글
입력값 : 직접 입력받아야 함
프로그래밍 언어제공 : 다양함
Ctrl +c/v : 필자 경험에서는 안되는 경우가 많았음
필자는 해당 플랫폼을 하이퍼커넥트의 코딩테스트에서 접한 경험이 있다.
진행했던 코딩테스트 중 가장 특이한 코딩테스트 경험이라고 할 수 있다.
자료구조/알고리즘 이외에 언어에 대한 이해를 요하는 문제를 제공한다.
생소한 유형의 문제이기에 test에서 직접 경험해보는 것을 추천한다.
(미리 문제를 풀어보지 않는다면 상당히 당황스러운 테스트가 될 확률이 높다.)
언어의 특성에 맞게 문제가 구성되어 있기에 언어별로 문제가 나누어 지는 것을 확인할 수 있다.
해당 플랫폼을 통해 코딩테스트를 진행했을 때 아래와 같은 특징을 가지고 있다.
문제 : 영어
입력값 : 입력값 이외 일부 코드를 제공
프로그래밍 언어제공 : 한정되어 있음
Ctrl +c/v : 대부분 가능 (하지만 회사마다 다르니 안내사항을 숙지하길 바람)
많은 이들이 코딩테스트라고 하면 문제를 제공하고 해당 문제에 맞게 자료구조 및 알고리즘에 대한 코드를 짜는 것으로 생각하는데, 이와 다른 결을 가지고 있다. test를 해보면 알겠지만 일부의 코드를 제공하고, 해당 코드의 버그를 해결하거나 코드를 원하는 요구사항에 맞게 수정하는 상황을 볼 수 있다.
자료구조 및 알고리즘에 대한 지식을 요하는 것이상으로 해당 언어에 대한 지식을 요구하는 문제를 제공한다. 예를 들어 java로 시험을 보는 경우 try-catch문을 사용하거나 overloading에 대한 문제가 나오곤 한다.
플랫폼 정리된 내용은 참고사항일뿐 실제 코딩테스트를 진행할 때는 회사에서 제공하는 유의사항을 꼭 확인하기를 권장한다. 동일한 플랫폼이라고 할지라도 회사에 따라 다른 규정이 적용될 수 있기 때문이다.
필자 또한 아직 취준생이지만 도움이 되고자 작은 경험을 서술해보았다.
모든 취준생이 자신이 원하는 회사에 좋은 사람들과 함께 출근하기를 항상 바랍니다!