본문 바로가기

SQL - Mysql & Oracle/SQL 실전 코딩 테스트

데이터 분석가의 코딩테스트 대비 A to Z(feat. 예제, 사이트, 계획)

반응형

데이터 분석가 혹은 사이언티스트가 취업할 때 반드시 거쳐가야 하는 과정이 바로 코딩 테스트이다. 그중에서도 가장 대표적인 것이 SQL 테스트인데, 어떻게 준비해야 할지 모르는 사람들을 위해서, 공부 방법, 코딩테스트 예제, 그리고 문제 풀이 사이트에 대해서 공유해보고자 한다. 

 

목차

    1. 데이터 분석가 - 코딩테스트는 어떤 언어를 볼까?

    2. SQL 코딩 테스트 문제를 풀 수 있는 추천 사이트 및 장단점

    3. SQL 코딩 테스트 공부 방법론 소개

    4. SQL 실전 코딩 테스트 꿀팁 대방출

     

     

    1. 데이터 분석가 - 코딩테스트는 어떤 언어를 볼까?

     

    데이터 분석가 공고에 약 10개가 넘는 기업들에 지원하면서 수많은 코딩 테스트를 보았고, 한결같이 코딩테스트 언어는 SQL이었다.그래서 데이터 분석가가 취직 및 이직을 하기 위해서는 SQL 중에서도 한 가지는 자기가 능숙하게 다룰 수 있는 실력을 대비해야 하는 것이 필수적이다. 네이버, 카카오 등 소수 다른 기업들은 알고리즘, 자료구조와 같은 문제도 보는 것으로 알고 있으니, 자기가 지원하는 회사 및 직무에 관련해서 자세히 알아보는 것을 권장한다. 보통 HR이나 채용팀에 물어보면 어떤 언어 보는지는 알려주었었다. 

     

    코딩 테스트에 합격하기 위해서는 먼저 두 가지를 확인해야 한다. 첫 번째는 자기 실력에 대해서 냉정하게 평가해 보는 것이다. 만약에 자기가 SQL 초보자인데 무작정 문제만 풀어도 소용이 없을 것이다. 반대로 어느 정도 실력이 쌓였음에도 불구하고, 너무 기초적인 이론만 보고 있으면 그것 또한 효율적인 코딩 테스트 대비 방법이 아니라고 생각한다. 

     

    두 번째는 실력 파악이 되었다면 앞으로 어떻게 대비를 해야 하는지 전략을 세우는 것이 필요하다. 그래서 아래의 질문들을 통해서 자신이 어떻게 SQL 코딩 테스트를 준비하면 되는지 알아보길 권장한다. 

     

     

     

    🔎 자기가 초보자인지 실력이 쌓였는지 어떻게 알 수 있을까요?

    개인적으로 인터넷에 흔히 있는 SQL Cheat Sheet에서 모르는 함수와 내용이 있다면 아직 초보자로서 기본 이론 공부를 해야 하는 것이 맞다고 생각한다. SQL Cheat Sheet는 간단하게 말해서 실무에서 사용되는 아주 기초적이면서 필수적인 함수를 모아둔 페이지인데, 많은 사이트들에서 Cheat Sheet를 정리해서 배포하고 있는데, 개인적으로 Learn SQL 사이트에서 배포한 시트가 가장 깔끔한 것으로 보인다.  

     

     

    SQL Cheat Sheet 내용
    Learn SQL의 Cheat Sheet

     

    만약 위의 함수들을 처음 보거나 손에 익숙치 않다면, 시중에 나와 있는 많은 강의들을 통해서 SQL 기초를 탄탄하게 만드는 것이 가장 빠르고 정확하게 SQL 테스트를 대비하는 방법이라고 생각한다. 

     

     

     

    🔎 SQL을 어느 정도 다룰 수 있지만, 실전 문제는 너무 무서워요. 어떻게 코딩 테스트에 대비해야 할까요?

     

    이제 위의 함수들과 자기가 더 공부를 해서 활용할 수 있는 함수들이 많다고 가정했을 때, 지금부터 준비해야 하는 것들은 바로 실전 문제 풀이이다. 하지만 사람에 따라서 문제 풀이 능력이 능숙할 수도 있고, 아닐 수도 있어서 자신에 상황에 맞는 문제 풀이 사이트를 추천해보고자 한다. 

     

     

     

     

    2. SQL 코딩 테스트 문제를 풀 수 있는 추천 사이트 및 장단점

     

     

    ✅ 첫 번째. 프로그래머스 - SQL 고득점 Kit의 장단점 ( 사이트URL)

     

    프로그래머스는 국내 개발자 및 데이터 관련 종사자분들은 다 알 수 있을 정도로 유명하다. 이 사이트에서 SQL 고득점 KIT 문제들을 제공하고 있는데, SQL 테스트 예제에 대해서 개인적으로 느낀 장단점을 정리했다. 

     

    • 장점
      • 초보자나 아직 실전 문제 풀이에 익숙하지 않은 사람들에게 시작하기 좋다.
      • 플랫폼이 한글이라서 문제 풀기가 아주 용이하다.
      • 문제 구성 및 해답을 볼 수 있는 환경이 아주 깔끔하다.
    • 단점
      • 실전 코딩 테스트와 거리가 다소 멀다.
      • 문제 수가 너무 적다.
      • 이것만 풀어서는 대비가 확실히 부족하다

     

     

    ✅ 두 번재. Hacker Rank의 장단점 (사이트 URL)

     

    Hacker Rank는 대표적으로 문제를 풀 수 있는 아주 유용한 외국 사이트이다. 많은 기업들에서 Hacker Rank와 계약을 맺어서 테스트 환경을 구축하기도 하니 꼭 방문해서 문제를 풀어보는 것을 권장하다. 개인적으로 여기 있는 모든 문제를 풀어보면서 많은 것을 배울 수 있었다.

    Hacker Rank 문제풀이 인증
    Hacker Rank 문제풀이 인증

     

    • 장점
      • 초보자부터 중급자까지 풀어볼 수 있는 문제 스팩트럼이 넓다.
      • 많은 기업들에서 Hacker Rank 환경에서 SQL 문제를 구성한다.(총 58개 문제)
    • 단점
      • 가끔 가다가 너무 억지스러운 문제가 있다.
      • 문제 풀이에서 시공간 복잡성 채점을 하지 않는다.
      • 무료 버전은 다소 느려서 속이 터질 때가 있다. 

     

     

     

     

    ✅ 세 번째. Leet Code의 장단점 (사이트 URL)

     

    Leet Code도 Hacker Rank와 쌍두마차를 이루는 대표적인 코딩 테스트 문제 풀이 사이트이다. 여기서도 문제를 풀어보는 것도 아주 좋은 접근이 될 것이다.

     

    • 장점
      • 문제 수가 압도적으로 많다. 
      • 유료 서비스를 결제하면 풀 수 있는 문제가 제일 많은 플랫폼이다.
      • 무료 버전이어도 속도가 굉장히 빠르고, 내 해답의 시공간 복잡도까지 고려할 수 있다.
    • 단점
      • 무료 버전으로 풀 수 있는 문제가 그닥 많지는 않다. (50문제)
      • 역시 억지스러운 문제가 다소 있다. 그래도 Hacker Rank보다는 좀 덜 한 느낌이다.
      • 영어라서 개인에 따라 다소 불편할 수 있다.

     

     

     

    🔎 그렇다면 여기 있는 문제를 다 풀어봐야 하나요?

    그렇지는 않다고 생각한다. 만약 자신이 초보자라면 프로그래머스는 반드시 풀어보고 오답노트를 작성하고, 그 다음에 Hacker Rank나 Leet code를 하나 선택하여 반복적으로 풀어보는 것이 가장 효율적일 것이다. 개인적으로 준비할 때는 Hacker Rank의 문제를 다 풀어보고, 조금 부족하다고 생각해서 Leet Code로 넘어가서 어려운 문제만 풀어서 대비를 했는데 모든 SQL 코딩 테스트를 통과할 수 있었다. 

     

     

     

    다음 포스팅에서는 어떻게 실전 문제 풀이 연습을 해야하는지, 그리고 어떻게 코딩 테스트에서 거의 모든 문제를 풀어냈는지 실전 꿀팁을 공유하려고 한다. 

     

     

     

     

    반응형