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

+ Recent posts