개발자는 시험의 연속이다
어느정도의 규모이상의 기업에 가고싶다면 코딩테스트는 필수적이다. 기업이나 경력에 따라서 과제나 라이브코딩 인 곳도 있긴 하지만 대부분 알고리즘테스트를 실시하고 있고
이 테스트(이하 코테)를 통과하지 못한다면 면접도 가지 못한다.
언제부터 생겨난건지는 잘 모르겠다만 내가 파이썬을 배울 무렵 코테라는것에 대해서 알게되었고 중견기업 이상을 도전하려면 매우 필수적인 부분이었다
코테는 알고리즘을 물어보는 문제가 대부분인데
개인 경험상 전문 IT 대기업의 코테는 (네카라 등) 난이도가 상당히 높고 일반 대기업 ( 삼성 Sk 현대 등) 은 어느정도 난이도가 평이하다.
네카라정도가 아니라면 사실 한두달정도 좀 공부한다면
어느정도 익숙해져서 풀법한 부분인데 ( 응용문제가 아니라면 알고리즘 자체만 이해해도 풀수있는 문제가 많다)
오늘은 꽤 고경력자인 시니어의 불만에 대해 이야기해보겠다.
이분은 유니티를 꽤 오랫동안 해왔고 심지어 실력도 괜찮은 개발자이다. 다만 코테에 관하여 굉장히 부정적인 시각을 가지고 있다.
그런건 실무에 전혀 쓸모가 없는데
왜 하는거지?
사실 난 별대답은 안하지만 동의를 하지는 못한다
코테를 하다보면 자주 나오는 알고리즘중에 유명한
bfs dfs dp 라는 삼인방이 있다
셋다 효율적인 탐색 알고리즘인데
다른 직무에서는 몰라도 유니티에서는 굉장히 자주 볼 수 있는 알고리즘이다.
길찾기와 스프링본. 자식오브젝트 탐색등등
이런 알고리즘을 아는것과 모르는것의 차이를
스프링본을 만들며 한번 경험해보았다.
그리고 지금와서 생각해보면
기본적인 알고리즘들은 알고리즘 자체보다는
문제를 이해하는것과 내가 가진 스킬들의 조화로써 이루어진다
기업들은 기본도 안된 개발자들이 수두룩하기에 어느정도 변별력을 가려낼 필요성이 있을 수 있는것이다.
그러한 의미로 추구하는 방향에 따라 기업들도 난이도가 다른것을 보면 비단 쓸모없는 시험은 전혀 아니겠다.
그리고 이런 코테에 은근히 겁을 먹는 사람들도 많기에
아무나 막 도전하는부분도 미연에 방지할 수 있지 않았을까라는 생각도 갑자기 드는 부분이다.