2024 SQLD 자격증 시험 후기
SQLD(SQL Developer) 자격증
먼저 SQL
이란 무엇일까?
데이터자격검정 사이트에서는 SQL을 다음과 같이 정의하고 있다.
SQL(Structured Query Language)은 데이터베이스를 직접적으로 액세스할 수 있는 언어로, 데이터를 정의하고(Data Definition), 조작하며(Data Manipulation), 조작한 결과를 적용하거나 취소할 수 있고(Transaction Control), 접근권한을 제어하는(Data Control) 처리들로 구성된다.
그리고 SQLD 자격증
을 다음과 같이 소개하고 있다.
SQL 개발자(SQL Developer)란 데이터베이스와 데이터 모델링에 대한 지식을 바탕으로 응용 소프트웨어를 개발하면서 데이터를 조작하고 추출하는데 있어서 정확하고 최적의 성능을 발휘하는 SQL을 작성할 수 있는 개발자를 말한다.
즉, SQLD 자격증
은 데이터베이스와 데이터 모델링에 대한 지식을 바탕으로 SQL을 작성할 수 있는 능력을 증명하는 자격증이라고 볼 수 있다.
사실 SQLD 자격증이 꼭 필요한건 아니지만 그래도 서버 개발자로서 기본적인 데이터베이스 지식이 있다는 것을 증명할 수 있는 자격증이라고 생각되어 응시하게 되었다. 2024년 내에 SQLD 자격증을 취득하는 것을 목표로 삼았었는데 미루고 미루다.. 연말이 되어서야 응시하게 되었다.
SQLD 시험 과목은 크게 1과목인 데이터 모델링의 이해
와 2과목인 SQL 기본 및 활용
으로 나뉘어져 있고, 총 50 문항으로 문항당 2점씩이다. 시험 시간은 90분이며, 100점 만점에 60점 이상이면 합격이다. 다만 과목당 정답률이 40% 미만인 경우는 과락으로 불합격 처리된다.
참고로 SQLP(SQL Professional) 자격증도 있는데 SQLD 자격증이 있어야만 응시 가능하고 데이터베이스의 성능과 최적화와 관련된 더욱 깊이있는 내용을 담고있다. 개인적으론 데이터베이스 관리자(DBA)로 활동하려는게 아니라면 SQLD 자격증 정도만 취득해도 충분한 것 같다.
기본기
나는 비전공자이지만 백엔드 개발자로 5년 정도 일하며 기본적인 데이터베이스(RDBMS) 지식이 있는 상태이기 때문에 공부 기간은 그리 오래 걸리지 않았다. SQLD 시험은 OracleDB와 SQLServer를 기반으로 시험 문제가 나오기 때문에 이 두 DB를 다뤄봤거나 RDBMS를 다뤄봤다면 좀 더 수월하게 공부할 수 있을 것이라고 생각한다. 나는 해당 DB를 다뤄보진 않았지만 MySQL, MariaDB와 같은 RDBMS를 현업에서 다루고 있었기 때문에 공부 기간은 10일이면 충분했다.
전공자면 일주일정도만 공부해도 충분할 것 같고, 비전공자라면 2주 이상 잡고 공부를 해야할 것 같다.
공부 방법
시험 공부에 앞서 여러가지 후기를 찾아봤다. 이론적인 부분을 공부하고 기출문제를 푸는 경우도 있고 전공자의 경우 기출문제만 풀어보고 시험을 봐도 합격한 후기를 많이 볼 수 있다. 기본기도 다시 다질겸 이론적인 부분도 공부하고 기출문제를 풀기로 결정했고, 인강으로 공부하는 것을 좋아하기 때문에 이론을 설명해주는 인강을 찾아봤다.
유튜브에 홍쌤의 데이터랩 채널의 SQLD 강의가 평이 상당히 좋았고 2024년에 시험 내용이 변경된 부분도 리뉴얼되서 영상이 올라와 있었다. 짧게 들어보고 나름 이해가 되는 것 같아 해당 강의를 듣기로 결정했다. 강사님이 운영하시는 사이트에서 요약본도 만원 초반대로 판매하고 있었고 강의를 들으면서 필기도 할겸 같이 구매하였다.
1과목 - 데이터 모델링의 이해
1과목은 데이터 모델링의 개념, 종류, 설계, 절차, 정규화 등의 내용을 주로 다룬다.
데이터 모델링을 진행함에 있어서 중요한 개념들이 많이 나오기 때문에 나름 집중해서 공부하였다. 요약본에 필요한 내용만 잘 정리되어 있었고 강의에서도 예시를 들어 잘 설명해주기 때문에 이해하기에 큰 어려움은 없었다. 개인적으론 이미 아는 내용도 많았지만 관계형 데이터베이스의 근간이 되는 내용이기 때문에 다시 공부할 수 있어서 좋았다.
공부 시간은 2시간 정도 소요된 것 같다.
2과목 - SQL 기본 및 활용
2과목은 실제 물리적인 관계형 데이터베이스를 생성하고 조작하기 위한 SQL의 DML, DDL, DCL, TCL의 개념과 SQL의 기본적인 쿼리 문법을 다루고, 쿼리를 더욱 활용하여 사용하기 위한 서브쿼리, 조인, 함수 등의 SQL 활용 내용을 주로 다룬다.
1과목과 마찬가지로 유튜브 강의와 요약본을 함께 보면서 공부하였다. 사실 SQL의 활용은 현업에서 많이 사용되지만 제대로 알고 사용하지 않으면 문제가 될 수 있는 부분이 많기 때문에 꼼꼼하게 공부해야할 필요성이 있다. 공부하면서 아는 내용도 많았지만 잘 모르고 사용하는 문법도 있었고, 계층형 정렬 같이 유용하지만 까먹고 사용하지 않는 문법들도 많다는 것을 깨닫게 되었다. 어려웠던 부분은 Oracle, SQLServer DB 간에 약간의 차이점도 있고 기존 내가 주로 사용하던 MySQL에는 없는 개념들도 있어서 이 부분을 이해하는데 시간이 좀 소요되었다. DML, DDL, DCL, TCL에 대한 내용을 마지막에 자세하게 다루는데 어렵진 않지만 중요한 내용이므로 이 부분도 신경써서 공부하는 것을 추천한다.
공부 시간은 복습까지 5~6시간 정도 소요된 것 같다.
기출문제
기출문제는 SQL 자격검정 실전문제(노랭이 교재) 교재를 많이 추천하여 해당 교재를 구매하여 문제를 풀었다. 1과목 50문제, 2과목 126문제의 기출로 구성되어 있다.
매일 1~2시간 정도 풀었고, 중요하다고 생각한 문제에 별표를 치고 채점 후에 별표친 문제들을 다시 한번 봤다. 틀린 문제들은 다시 한번 풀어보고 다음 문제 풀기 전에 한번 더 복습하고 넘어갔다. 1과목의 경우 암기 과목이라 어려운 문제는 별로 없었던 것 같다. 2과목의 경우 지문에 나오는 SQL문이 길기 때문에 꼼꼼히 봐야 했고, 생각보다 어려운 문제들도 있어서 요약본을 다시 한번 보면서 문제를 풀었다. 특히 윈도우 함수 문제는 현업에서 자주 사용하지 않는다면 다소 생소하고 어려울 수 있다.(나처럼..)
시험 전날은 별표를 친 중요한 문제들과 틀렸었던 문제들을 한번 복습만 하였다.
시험 후기
오프라인 시험이기 때문에 시험장에 검정색 볼펜 or 컴퓨터용 사인펜을 가져가서 OMR 카드에 답을 마킹해야 한다. 시험 시간은 90분 이고 OMR 카드 마킹이 끝나면 제출한 후에 시험 종료 전에 나가도 된다. 나는 80분이 안되서 나왔던 것 같다. 문제가 쉬워서라기 보다는 아는 문제와 모르는 문제가 명확했기 때문이다.. 1과목은 데이터베이스 설계 과정에 대해 햇갈리는 문제 하나 말고는 어려움은 없었고 2과목도 풀었던 기출문제보다 쉽진 않았지만 SQL문이 비교적 짧은 편?이어서 시간이 오래 걸리진 않았다. 다만 역시나 생소한 함수들이나 Oracle, SQLServer 간의 차이점들은 잘 모르겠어서 그냥 찍었다..ㅎ
그래도 2과목에서 느낌상 절반 이상은 제대로 풀었다는 느낌이 들어서 왠지 합격은 할 것 같다는? 느낌이 들었다.
결과
결과는 합격이었다. 1과목에 햇갈리는 문제가 있었는데 다행히 맞았다..ㅎ 2과목은 절반이상 맞췄지만 개인적으론 반성해야 하는 결과라고 생각한다. 5년간 백엔드 개발자로 일하면서 아직도 잘 모르는 SQL 활용법들이 많다는 것은 그만큼 SQL을 잘 활용하지 못하고 있다는 뜻이기 때문이다..
여튼 시험은 70점으로 합격하였고, 총 공부 시간은 20시간 미만(대충 15시간?)인데 더 투자했다면 더 좋은 결과가 나왔을 것 같다. SQLD 시험이 큰 도움이 되진 않지만 나와 같은 비전공자이거나 SQL의 기본을 다시 한번 다지고 싶은 사람들은 공부하면 충분히 도움이 될 것 같다.