연말이라 올해 활동도 점검할 겸
10월 쯤 합격한 SQLD 후기를 풀어놓고자 한다.
사실 SQLD나 ADSP는 다른 데이터 분석 자격증보다
난이도가 그리 높지 않고, 그렇기에 희소성도 떨어지기 때문에
이 자격증을 취득하는 필요성 자체에 조금 의문이 들었다.
그러나, 내가 SQLD를 따기로 마음먹었던 이유는
이렇게 정리할 수 있다.
1. SQL 문풀을 이미하고 있었기 때문에 공부 input량이 많지 않으리라 생각
2. 자소서 및 면접에서 데이터분석 역량을 어필할 때 포문을 터줄 공인된 무언가가 필요하다고 생각
3. 문풀이 아닌 데이터베이스 설계에 원론적인 공부를 해보고 싶었음
즉, 이 후기는 SQLD 자격증만을 필요로 하는,
자격증 취득 자체에 의의를 두는 사람들에게는 옳지 않다.
그러나, SQLD를 계기로 SQL을 잘 다루기를 원하거나
자격증을 계기로 더 깊이 있는 이해를 목표로 하는 이들은
내가 준비했던 방법이 도움이 되리라 생각한다.
먼저 SQLD의 전반적인 내용에 대해
살펴보자
1. SQLD란?
: 데이터 모델링 이해과목을 바탕으로 SQL 기본 및 활용을 수행하는 능력을 검정
: 주로 데이터분석 역량을 어필할 목적으로 취득한다.
2. 합격기준
SQLD의 과목은 총 2가지로 나뉘어진다.
-1과목 : 데이터 모델링
-2과목 : SQL 기본 및 활용
두 과목 점수를 합쳐 60점 이상이면 합격,
한 과목당 40%를 맞추지 못하면 과락이다.
3. 24년 시험 일정
SQLD는 1년에 4번 시행된다.
- 미리미리 신청하자
그중 선착순으로 지역별 고사장이 마감되니
첫 신청날 되도록 일찍 신청을 완료하자
-되도록 방학기간에
학부생은 시험기간과 겹칠 수 있다.
시험기간에 시험을 친 사람이 누구냐고? 그게 나다 ㅋㅋ
방학기간에 시행되는 시험을 보는 게 좋을 듯 싶었다.
4. 준비방법
1단계. 개념 훑기
SQLD 시험을 준비하는 이들은 모두 공통적으로 노랭이 책을 이야기한다.
물론 나도 노랭이 책을 중고로 사서 풀긴 했는데..
문제는 SQLD 노랭이책은 말 그대로 문제풀이 책이지 개념을 설명한 책이 아니다.
중간중간에 옆 주석에 조금씩 써져있긴 한데 그 개념만으로는 문풀을 못한다.
그래서 먼저 SQLD 개념을 요약한 강의를
1.5배속으로 빠르게 들어주었다.
목적은 외우는게 아니다.
그냥 이게 대충 뭘 의미하는 건지 감을 잡는 용도이다.
2단계. 노랭이 책 + 요약자료
블로그 후기들을 살펴보니 SQLD/ ADSP 준비할 때 유용한 네이버 카페가 있다고 하는데
결국 그 카페를 가입하는 목적은 유저들이 정리한 요약자료를 다운받기 위함이다.
다양한 요약자료 중에서는 이 정리본이
가장 잘 핵심들을 잘 정리해놓은 듯 했다.
이 요약자료를 노랭이 책과 함께 병행했다.
노랭이 책은 사실상 그대로 연계되는 이상 선택이 아닌 필수인 분위기다.
(책은 알라딘 중고를 이용하자.. 너무 비싸다)
이 책에서 SQLD 시험범위는 136쪽까지지만
사실상 SQL 최적화는 거의 안나오는게 추세라
127쪽까지만 풀어도 충분하다.
그럼 이걸 어떤 방식으로 풀어야 할까?
만약, 시간이 많다면
- 1. 요약자료에서 개념 외우기
- 2. 개념 외운데까지 노랭이 책 풀고 오답검토하기
- 3. 틀린 문제 반복하며 풀기
- 4. 기출 문제 확인하기
이런 루트가 정상적일 것이다.
그러나, 만약 시간이 없다면
먼저 SQL 문풀 강의를 그냥 들으면서
개념을 하나씩 익히는 방식을 추천한다.
즉, 개념 -> 문제가 아니라
문제풀이를 하며 그때그때 하나씩 개념을 익히는 방식이다.
SQLD는 사실상 노랭이 문제 선지까지
거의 그대로 나오는 문제가 60%정도이기 때문에
그냥 문제를 통해 개념에 익숙해지는 방식이
단기간 준비방법 중에는 최선이라 생각한다.
유투브 어쩌다 DBA에는
SQLD 노랭이 책 전체 문제를 풀이한 강의 16개가 있다.
배속을 돌리면 4시간이면
문풀 강의가 모두 끝난다.
그 말은 쭉 문풀을 하며
개념을 익히는 시간을 생각해도
적어도 10시간 정도면 합격 가능성이 생기는 시나리오가
가능하다는 이야기이다.
먼저 이 강의를 통해 같이 문제를 풀고
강조하는 개념을 요약자료에서 읽거나 체크해놓자.
(체크해놓은 파트는 시험들어가기 전에 한번씩 더 보기!)
또, 내가 생각했을 때 요약자료에서
다음 파트들은 건너뛰어도 큰 상관이 없을 것 같다고 생각한 부분들이다.
1과목 : 데이터 모델링의 이해 -스킵 가능 파트
- 3/4차 정규화 개념 : 1/2차 정규화는 많이 나오는데 3차는 거의 안나옴
- 로우 체이닝/ 로우 마이그레이션 개념
-분산 데이터베이스 적용기법(위치분산-분할분산 등등)
2과목 : SQL기본
- p22 >> Rdferential Action(Insert/Delete 등등)
- p24 -p25 >> TCL (commit이랑 rollback 정도만 알아놓자)
- p30 : 날짜형 함수/ 반환형 함수
- p34 : non-equi join 개념
- p39 : 계층형 질의
- p43 : 그룹함수
- p53. Oracle 권한부여
이 파트를 제외하고는 꼭 한번씩을 개념을 잡고 가야 한다.
사실 SQLD는 내용적인 어려움보다 범위의 방대함이 시험에 가장 어려운 부분이기에
중요한 부분들에서는 꼭 개념을 확실히 이해하고 넘어간다는 느낌으로 시간을 투자할 수 밖에 없다.
+) 번외
만약 이렇게 하고도 시간이 남았다! 라고 하면
개인적으로는 프로그래머스 SQL lv1.2문제들을 건드려보는 걸 추천한다.
SQLD를 취득하더라도 SQL 쿼리를 한 줄도 짜지 못한다면
그게 무슨 의미가 있을까...?
SQL 문제들을 직접 건드려보는 건 2과목. SQL 기본을
가장 확실하고 실전적으로 이해하는 방법이다.
반대로 나는 이 문제들을 모두 풀어보았기에
2과목에 시간이 거의 안들일 수 있었다.
5. 시험장에서 받았던 느낌들과 개인적인 팁들
- 시험문제는 생각보다 쉽다.
만약 노랭이 책을 다 풀었다면 시험문제는 정말 쉽게 느껴질 것이다.
50회 시험이 유난히 쉬웠는지는 몰라도 정말 문제 난이도가 낮았다.
지금 생각나는건 서술형 답이 DENSE_RANK / ROLLBACK 뭐 이런 키워드 쓰는 문제가 나왔다는 것...
정말 생각보다 난이도가 너무 낮았다.
그러니, 노랭이 책이 힘들다고 좌절하기보다
어차피 시험은 이것보다 쉬울테니 지금 풀고 있는 노랭이 책 문제를 이해했다면,
실전은 더 수월할 것이다! 라는 마음가짐을 가지는게 좋을 듯 하다.
- 현실적인 SQLD 최소 준비 시간 : 일주일
만약 당신이 데이터의 ㄷ도 모르는 노베이스라면,
정말 일주일은 필요하다고 생각한다.
SQLD시험이 다루는 개념은 어려운 개념이 아니다.
그러나, 범위가 방대하기에 난이도가 있다.
즉, 중요한 파트라도 이 범위를 익히는데에는
최소한의 시간이 필요하다고 생각한다.
그렇기에 노베이스 기준에서는
최소 일주일은 필요하다는 게 내 의견이다.
3일 합격- 2일 합격이라는 말이 나오는데
그건 전공생이나 데이터베이스에 대한 이해도가 있는 분들일 가능성이 크다.
나 또한 SQL 쿼리를 짤 줄 알고, 어느정도 이해도가 있는 상황에서
이 시험을 준비했는데 5일정도가 걸렸다.
만약 이 글을 읽고 있는 분이 노베이스인데
시험까지 2-3일이 남았다면 사실상 3일 밤샘을 하지 않는 이상
비상한 사람이 아니라면 모든 범위를 이해한 상태로 가긴 힘들 것이라 생각한다.
- 이 자격증이 왜 필요한지를 생각해보자
무엇보다 강조하고 싶은 것은
SQLD 는 그리 가치있는 자격증이 아니라는 것이 내 개인적이 의견이다.
즉, SQLD만으로는 데이터분석역량을 크게 어필하지도
또, SQLD가 없다고 데이터 분석 역량을 어필할 다른 수단이 없는 것도 아니다.
그렇기에 데이터 분석에 대해 진지한 생각을 가진 이들이라면
SQL 공부를 병행하면서 SQLD를 겸사겸사 준비한다는 태도를 가지는 게 좋다.
즉, SQLD 자체가 목표가 되기보다
SQLD 준비과정에서 얻은 지식을 바탕으로
사후, 무엇을 준비하고 싶은가? 라는 더 높은 정당성이 필요하다고 생각한다.
그럼에도 불구하고 SQLD를 따기로 마음먹었다면
시험기간을 길게 잡고, SQL 쿼리를 짜고 활용할 수 있는 정도까지 되도록
80점 이상을 목표로 진지하게 준비에 임했으면 좋겠다.
수많은 벼락치기 후기들에서
SQL 개발자 자격증은 있는데 SQL 쿼리를 짤 줄 모르는 사람들을 보았다.
공갈빵같은 자격증을 가지는게 무슨 의미가 있을까?
자기만족 이외의 성과를 달성하기엔 무리가 있다고 생각한다.
나는 이 자격증을 준비하면서
SQL의 원론적인 부분에 대한 이해도를 높일 수 있었고
그동안 알지못했던 명령어 들이나 기능들도 알게되었다.
몇가지 오개념들도 자리잡을 수 있었다.
그러니 자격증을 준비하기로 마음먹은 시점부터
SQLD 하나만을 위해 그정도까지 준비할 필요 없다는 이야기를 들을 정도로
미련하지만 꼼꼼히 이론을 공부하고, 실제 쿼리도 짜보면 좋을 듯 싶다.
'데이터 분석' 카테고리의 다른 글
A/B test란? - 기초부터 간단한 예제까지 (0) | 2023.11.19 |
---|---|
[DB분석 실무 테크닉 100] ch2. 대리점 데이터를 가공하는 테크닉10 (0) | 2023.10.15 |
[미니 프로젝트] Yammer case 분석2. 검색기능 문제 (0) | 2023.08.21 |