Ch2. 코딩 테스트 개요16~20년 코테 기출 유형 분석
1. 최신 출제 경향과 준비 방향
- IT 직군에서 코딩 테스트를 보는 대표적인 기업은 삼성전자, 카카오, 라인이 있다.
- 보통 2~5시간 동안 8개 이하의 알고리즘 문제들을 풀도록 한다. (얼마나 정확하고, 빠른 알고리즘인지 순위를 매김)
1-1. 코딩테스트는 문제 해결 능력을 확인하는 시험
- 잘못된 편견
: 기업에서 주관하는 코딩 테스트는 매우 높은 사고력이나 어려운 알고리즘 기반의 지식을 요구하지 않는다.
따라서 코딩 테스트에는 주로 기초 알고리즘에 기반하는 문제가 출제된다.
- 코딩 테스트 기출 유형 빈도수
simulation or BFS/DFS > greedy >> sort or dynamic programming > binary search or shortest path
(구현 or BFS/DFS > 그리디 > 정렬 or 다이나믹 > 이진 탐색 or 최단 경로)
1-2. 기업별 문제 출제 경향
- 카카오는 문자열을 처리하는 구현 문제와 다양한 케이스를 고려해야 안정적으로 만점을 받을 수 있는 문제들이,
삼성전자는 문제를 바르게 읽고, 예외 상황을 적절히 처리하는 방식으로 소스코드를 작성해야 하는 문제들이
출제되었다.
- 보통 합격자는 문제의 평균 69%를 풀었으며, 불합격자는 평균 38%의 문제를 풀었다고 한다.
2. 연도별 코딩 테스트 유형 분석
- 알고리즘 대회 수상 경험이 있는 응시자는 삼성전자, 카카오, 라인 모두 합격권에 있다.
(국제 알고리즘 대회 기준, 코드포스 블루 이상, ACM-IMPC 서울 지역 대회 본선에 안정적으로 진출할 수 있는 수준)
- 공채를 기준으로 설명하지만, 인턴 채용의 경우에도 비슷한 수준과 유형의 문제로 출제된다.
2-1. 2020년
- 삼성전자(완전 탐색, 시뮬레이션, DFS/BFS)
: 완전 탐색 유형에서 시뮬레이션 유형으로 바뀌고 있는 추세이다. 둘 다 요구하는 문제가 출제되고 있으므로
사소한 조건을 고려하면서, 약간 응용된 BFS/DFS 소스 코드를 작성할 수 있는 수준으로 공부하자.
- 라인(시뮬레이션, 문자열, 자료구조 [4/6])
2-2. 2019년
- 삼성전자(완전 탐색, 시뮬레이션, DFS/BFS)
: 기출문제가 잘 알려져 좋은 성적을 받고 있기 때문에 2문제를 맞혀야 통과할 수 있었다.
- 카카오(1차:시뮬레이션, 이진 탐색, 자료 구조 중 7문제 [3/7]예상)(2차:추천 시스템 개발 1 문제)
: REST API, JSON 등의 원리에 대해 이해하고 있어야 풀 수 있는 개발형 코딩 테스트가 출제되었다. -> 부록 C
- 라인(상:탐색,시뮬레이션,문자열,다이나믹 프로그래밍 [3/5]예상)(하:자료구조,완전탐색,시뮬레이션 [4/6])
2-3. 2018년
- 삼성전자(완전 탐색, 시뮬레이션, DFS/BFS)
- 카카오(1차:시뮬레이션, 그리디, 자료 구조 중 7문제 [3/7]예상)(2차:시뮬레이션 개발 1 문제)
: REST API, JSON 등의 원리에 대해 이해하고 있어야 풀 수 있는 개발형 코딩 테스트가 출제되었다. -> 부록 C
- 라인(상:탐색,시뮬레이션,그리디,다이나믹 프로그래밍 [2/5])(하:그리디,탐색,시뮬레이션,문자열 [2/4]예상)
2-4. 2017년
- 삼성전자(완전 탐색, 시뮬레이션, DFS/BFS)
- 카카오(1차:시뮬레이션, 그리디, 문자열 중 7문제 [4/7]예상)(2차:클롤러 개발 1 문제)
(3차:시뮬레이션, 그리디, 문자열 중 5문제 [3/5]예상)
: REST API, JSON 등의 원리에 대해 이해하고 있어야 풀 수 있는 개발형 코딩 테스트가 출제되었다. -> 부록 C
- 라인(상:탐색,시뮬레이션,그리디 [3/5])(하:그리디,시뮬레이션,문자열 [2/5]예상)
2-5. 2016년(이하 생략)
3. 성공적인 취업을 위한 가이드
3-1. 채용 프로세스
: [서류 검토] -> [코딩 테스트] -> [기술 면접] -> [인성 면접]
3-1.1) 대기업과 스타트업의 채용 프로세스 비교
- 대기업은 코딩 테스트에, 스타트업은 기술 면접에 더 비중을 둔다.
3-1.2) 알고리즘 문제만 잘 풀면 될까?
- 알고리즘 외에도 컴퓨터 구조, 운영체제 등 컴퓨터 공학 전반에 대한 다양한 지식에 관해 공부해야 한다.
- 인성 면접에 대한 질의 응답도 준비해야 한다.
3-2. 기술 면접의 대표 유형
: 알고리즘 문제 풀이와 질의응답/ 포트폴리오 질의응답/ 컴퓨터공학 지식 질의응답 유형으로 진행한다.
: 본질은 업무에서 요구하는 만큼의 컴퓨터 이론 지식을 갖추고 있으며, 필요한 관련 프로젝트에 경험이 있고,
알고 있는 내용을 논리 정연하게 설명할 수 있으면 된다.
3-2).1) 알고리즘 문제 풀이와 질의응답 형식
3-2).2) 포트폴리오 질의응답 형식
3-2).3) 컴퓨터 공학 지식 질의응답 형식
// 추후에 p73
3-3. 기술 면접의 준비
: 기업에서 원하는 직원은 문제를 풀어 정답 판정을 받는 지원자가 아니라, 자신이 어떤 방법으로 문제에 접근하여
어떠한 알고리즘을 사용했는지를 논리 정연하게 설명할 수 있는 지원자를 원한다.
-> 평소 기술 블로그나 깃허브 저장소를 운영하며 능력을 키워갈 수 있다.
3-3).1) 깃허브 사용하기
3-3).2) 기술 면접의 어려움
3-3).3) 인성 면접 질문 리스트
Q1.
Q2.
Q3.
3-4. 알고리즘 문제 사이트
: 외국계 기업에 취업하려는 취업 준비생이나 국제 알고리즘 대회를 준비하는 학생은 아래 사이트를 추천한다.
(영어 문제를 해석하는 능력 또한 필요하다)
3-4).1) 코드 시그널
3-4).2) 코드 포스
3-4).3) 정올
3-5. 커뮤니티 사이트
3-4).1) 생활코딩
3-4).2) BOJ Slack
'Algorithm&Problem > [Algorithm] 이.코.테.다' 카테고리의 다른 글
[6일차] 이.코.테.다! Ch5 DFS/BFS (0) | 2020.09.22 |
---|---|
[5일차] 이.코.테.다! Ch4 구현 Implementation (0) | 2020.09.20 |
[4일차] 이.코.테.다! Ch3 그리디 greedy (0) | 2020.09.16 |
[2일차] 이.코.테.다! Ch1 코딩테스트 개요 (0) | 2020.09.11 |
[1일차] 이.코.테.다! Ch0 들어가기 전에! (0) | 2020.09.10 |