비투엔 라이프/스토리

[B2EN Story] SQLP 합격수기 _ DB 전문가만을 위한 자격증이라 오해하지 마세요

알 수 없는 사용자 2015. 5. 7. 14:55




반갑습니다. BIS본부 임현종 전임입니다.

우선 제 소개를 하자면 우연한 기회로 인해 Web 개발자로 IT를 시작한 주니어 컨설턴트입니다. 합격한지는 꽤 오랜 시간이 흘렀지만, 미래의 후배들과 앞으로 시험 응시를 계획하신 분들을 위해 도움이 됐으면 하는 바람으로 제가 생각하는 내용을 공유하려 합니다.


1. SQLP 응시대상의 오해

많은 분들이 SQLp는 DB 전문가들을 위한 자격증으로 생각하고 있는 것 같습니다. 혹시 이 글을 읽고 계신 여러분도 그러신가요? 저는 DB 전문가만을 위한 자격증은 아니라고 생각합니다. 


저의 경우 입사 전 '전문 개발자 양성과정'을 수료했습니다. 전문 개발자 양성과정은 교육 커리큘럼에 DB 내용을 심도 있게 다루지 않고 있기에 비투엔에 입사 후 SQLP 취득을 목표로 하였던 당시 저의 SQL 작성 능력은 단순 CRUD 정도의 SQL만 가능했다고 할 수 있겠습니다. (물론, 지금도 많은 교육센터에서 이러한 커리큘럼으로 진행되고 있으며, 어쩔 수 없는 부분이라는 것은 알고 있습니다.)


개발자는 현업에 발을 딛는 순간부터 학습해야 할 대상이 너무나도 많고 Struts, Spring 프레임워크 등 과목별로도 심도 있는 학습이 요구됩니다. 그야말로 상용 솔루션과 오픈 소스와의 전쟁이었습니다. 저처럼 초보 시절에 SI 사업에서 개발을 담당해보신 분이라면 아시겠지만, 어플리케이션 아키텍처 팀에서 기본 골격 안에서 코딩할 수 있도록 다양한 라이브러리가 제공됩니다. 결국 핵심은, 주요 비즈니스 로직을 처리하는 SQL 작성 부분이라는 것입니다. 그런데 대부분의 초급 개발자들은 DBMS의 내부 수행 원리를 이해하지 않은 상태에서 수많은 SQL을 작성하고 있습니다. 그래서 대부분의 시스템에서는 필요 이상의 많은 SQL들이 사용되고 있고, 하나의 악성 SQL로 인해 서비스 장애의 요인이 되기도 합니다. 


저의 경우 SQLP 자격 검증을 준비하면서 SQL 작성 능력을 한 단계 업그레이드할 수 있었으며, 그로 인해 어플리케이션단에서 처리해야 할 복잡한 로직을 SQL을 통해 해결할 수 있는 능력이 생겼습니다. 또한 DBMS의 내부 수행 원리를 이해하게 되면서 전체 시스템 성능을 생각하면서 SQL을 작성할 수 있게 되었습니다. SQLP는 저처럼 초보 개발자에서 상급 개발자로 성장시켜 줄 수 있는 자격증이라고 생각합니다. 실무와 밀접한 학습을 하는 것이기 때문에 설령 자격 취득을 하지 못해도 학습의 과정만으로도 능력을 업그레이드해줄 것이라고 생각합니다.



2. SQLP 준비 전략

첫째, SQL 작성 능력을 업그레이드 하자!

반드시 선생 학습이 되어야 하는 부분이라고 생각됩니다. SQL 작성 능력은 별도의 노하우가 있는 것은 아니지만, TIP을 드린다면 잘 작성된 SQL을 찾아 분석해보시는 것을 추천드립니다. 관련 커뮤니티 사이트에서 어렵지 않게 SQL 관련 Quiz 및 Example을 찾을 수 있습니다. 눈으로만 익히려고 하지 마시고, 직접 Sample 데이터를 만들고 다양한 형태의 syntax로 작성해보는 것도 하나의 방법입니다. [추천도서] SQL의 컨셉 for ORACLE _ 저 변동구


둘째, 혼자보단 함께 하자!

혼자서 학습한다는 것은 외롭고 힘든 싸움입니다. 해당 분약에 대한 지식이 전무하다면 반드시 함께 하시길 추천드립니다. 친구 또는 회사 동료도 좋고, 온라인상의 스터디 그룹 활동도 좋습니다. 수험서를 확인하신 분이라면 아시겠지만, 생각보다 학습범위도 넓으며 깊은 지식을 요구하고 있습니다. Chapter 별로 배분하여 이를 공유하는 자리를 갖는다면 학습효과는 배가 될 것입니다.


셋째, 생각하고 또 생각하자!

컴퓨터에서 두뇌라고 할 수 있는 CPU도 0과 1 밖에 모른다고 합니다. DBMS의 수행 원리도 사람의 상식에서 벗어나지 않습니다. 학습하면서 중간중간 나오는 키워드는 리스트 업 해두고 Map 형태로 나만의 연결고리를 만들어 보는 것도 좋은 방법입니다.


넷째, 실전 학습! 집착하지 말자!

저는 이 부분이 가장 중요하다고 생각합니다. 덧셈을 완벽히 이해해야만 곱셈을 익힐 수 있다? 물론 맞는 말이지만 거꾸로 곱셈을 학습하다 보면 덧셈을 이해하는 경우가 생길 수 있습니다. 주변에 함께 학습하던 분들 중에서도 반드시 해당 내용을 완벽히 이해하고 다음으로 넘어가시는 분들이 계십니다. 이해가 되지 않기 때문에 끊임없이 집착하고, 그렇게 집착하다 보면 지쳐 포기하게 됩니다. 수험서 및 참고서를 보실 때에는 여러 번 가볍게, 두세 번 깊게 학습하시길 추천합니다.



3. SQLP 응시 과목별 학습별 접근 노하우

SQL 전문가 자격시험의 과목은 총 3과목으로 구성되어 있으며, 데이터 모델링의 이해 과목을 바탕으로 SQL 기본 및 활용, SQL 고급 활용 및 튜닝을 수행하는 능력을 검정합니다.


① 데이터 모델링의 이해

수험서의 내용을 한 두 번만 정독하신다면 충분히 고득점을 받을 수 있습니다. 기본적인 데이터 모델링의 이해 수준이며, 엔터티, 속성, 관계, 식별자, 정규화, 반 정규화의 개념을 익히시면 됩니다.


② SQL 기본 및 활용

기본 및 활용 부분에서는 실무에서 잘 사용하지 않는 함수까지도 나와 당황했던 기억이 있습니다. 수험서를 외우는 방법보단 함수 하나하나 SQL을 작성하여 실행해보고 차이점을 정리하시길 추천드립니다. SQLP 같은 경우 기출문제가 존재하지 않지만, 여러 방향으로 SQL을 작성해본다면 충분히 고득점을 받을 수 있습니다.


③ SQL 고급 활용 및 튜닝

SQLP의 핵심과목으로 당락을 결정합니다. 시간 배분을 가장 많이 해야 하며, 많은 생각을 해야 하고 혼자보단 함께 공부하셔야 될 과목입니다. 보통 수험서를 선택하여 학습하시는데 '오라클 성능 고도화 원리와 해법(저 조시형)' 참고서를 선택하여 학습하시길 추천합니다. 보통 1권을 먼저 보시는 분들이 많은데 내용이 다소 어려울 수 있습니다. 포기할 수 있으니 저 같은 초급 개발자라면 2권을 먼저 보시면 좋을 것 같습니다. 내용이 너무 어렵게 느껴지신다면 저자 직강도 비투엔 아카데미에서 진행하고 있으니 수강해보시는 것도 또 하나의 방법입니다. [추천도서] SQL 전문가 가이드 _ 한국데이터베이스진흥원, 오라클 성능 고도화 원리와 해법 1, 2권 _ 저 조시형



4. 마지막으로 

SQLP는 실무와 밀접한 관련이 있는 자격증이라 생각되며, 데이터베이스와 데이터 모델링에 대한 지식을 바탕으로 데이터를 조작하고 추출하는데 있어서 정확하고 최적의 성능을 발휘하는 SQL을 작성할 수 있고, 이를 토대로 SQL을 내포하는 데이터베이스 프로그램이나 응용 소프트웨어의 성능을 최적화하거나, 이러한 성능 최적화를 지원할 수 있는 데이터베이스 개체의 설계와 구현 등 여러 방면에 도움이 될 것입니다. 자격검정을 준비하시는 모든 분들에게 좋은 결과가 있었으면 좋겠습니다^-^