데이터 분석가 코딩테스트
데이터 분석가 코딩테스트, 과제 전형 준비 방법 ver. 2023 상반기
제로베이스 데이터 취업 스쿨
Chapter 1.
기업에서는 데이터 분석가를 어떻게 뽑을까?
안녕하세요, 저는 데이터 분야 취업을 돕는 멘토로 활동하고 있는 Sue 입니다. 멘토 활동을 하며 최근 들어 많은 분들이 ‘데이터 분석’에 대해 여쭤봐주시는데요. ‘데이터 분석’에 대한 관심이 나날이 늘어감을 체감하고 있어요.
‘데이터 분석’도 기업마다 세부적으로 직무가 나눠져있는데요. 예를 들어 ‘ 비즈니스 분석가’, ‘프로덕트 분석가’, ‘마케팅 데이터 분석가’, ‘HR 데이터 분석가’ 등 생각보다 훨씬 세부적으로 나뉘어져 있죠. 기업마다 직무별로 ‘데이터 분석’ 신입을 어떻게 채용되고 있는지, 과정을 하나씩 살펴볼게요!
데이터 분석가는 개발과 비즈니스의 중간 직무라고 할 수 있어요. 실제로 기업마다 데이터 분석가 채용 공고가 개발팀으로 분류되는 경우가 있고 비즈니스 부분으로 분류되는 경우도 있습니다.
이미지 = 우아한형제들 비즈니스 분석가 포지션 공고
우아한형제들 비즈니스 분석가 포지션의 경우 경영지원(비즈니스) 부분으로 분류되어 있죠.
데이터 분석 직무가 비즈니스 부분으로 분류되어 있는 경우에도 채용 절차는 개발 직무처럼 진행되는 경우가 많습니다. 대표적인 채용 전형은 (1) 서류 전형 (이력서, 포트폴리오) → (2) 데이터 분석가 코딩테스트 혹은 사전 과제 전형 → (3) 면접 전형 으로 구성되어 있어요. 기업의 규모 및 특성에 따라 인적성 시험 등 추가 전형이 포함될 수 있답니다.
Chapter 2.
개발자가 아닌데,
데이터 분석가 코딩테스트를 본다고?
이미지 = 카카오 2022 겨울 인턴십 공고 내 필수 역량
데이터 분석가에게도 ‘프로그래밍 언어’를 사용하는 기술적 역량을 요구합니다. 데이터 분석가는 Python 을 통해 데이터 수집 및 전처리를 하고, SQL을 통해 데이터 추출 업무를 담당하기도 합니다.
데이터 분석가 활용 기술 언어
- Python : 파이썬은 데이터 분석에서 가장 많이 사용하는 프로그래밍 언어로 다양한 데이터 분석 라이브러리와 툴을 제공합니다.
- R : 통계 분석 및 데이터 마이닝 분야에서 주로 사용하며 R을 사용하여 데이터 수집, 전처리, 분석, 시각화를 수행할 수 있습니다.
- SQL : 데이터베이스에서 데이터를 추출하고 조작하는 데 사용하는 언어로 데이터 추출 시 주로 활용합니다.
이미지 = 카카오 2022 겨울 인턴십 응용데이터분석팀 채용 공고
카카오 데이터 분석팀 JD를 살펴 보면 데이터 분석가 코딩테스트와 과제 전형이 필수임을 알 수 있습니다.
(심지어 네이버와 카카오는 프로그래밍 개발자와 동일한 코딩테스트를 본다는 사실…!!)
개발자랑 같은 코딩테스트라니 ‘헉’ 하는 분들이 많을 거 같아요. 일반적인 개발자 코딩테스트와 데이터 분석 직무에서 보는 코딩테스트가 어떻게 다른지 소개해드릴게요.
데이터 분석가 코딩테스트에서 “SQL”을 활용하는 경우가 점차 늘어나고 있습니다. SQL 코딩테스트만 보는 기업도 있고, 기본 알고리즘 코딩 테스트와 함께 SQL 테스트를 보는 경우도 있습니다. 코딩테스트는 결국 제한된 시간 안에 주어진 문제를 얼마나 잘 풀었는지 평가하는 과정입니다. 예를 들어 저희가 4와 2라는 숫자를 두고 8이라는 답을 만들어낸다고 할 때, 누군가는 ‘4 * 2 = 8’ 이라는 짧은 식으로 답을 구해냅니다. 하지만 다른 누군가는 ‘(4-2) * 4 = 8’ 이라는 비효율적인 식으로 답을 구할 수도 있어요. 답은 동일하게 나왔더라도 코드를 짜기까지 걸리는 시간, 해당 코드가 작동할 때 필요한 시간과 메모리에서 차이가 발생합니다. 코딩 테스트에서는 이렇게 주어진 문제를 잘 풀었는지 그 기술 역량을 확인하는 단계로 정리할 수 있죠.
데이터 분석가 코딩테스트
어디서 준비해야 하나요?
코딩테스트 전형 준비, 어떻게 해야 할까요? 코딩테스트 준비에서 가장 중요한 것은 ‘꾸준한 학습’입니다. 서류 전형 이후 준비해야지 라는 생각으로 벼락치기 공부를 하는 분들이 굉장히 많은 것으로 알고 있는데요. 제가 수강생 분들께도 강조하지만, 데이터 분석가 코딩테스트 고득점은 단기간 내 뚝딱 생겨날 수 없습니다. (1) 주요 출제 유형 및 개념을 익히고 (2) 꾸준히 예제를 풀어보며 역량을 키워야 합니다.
결국 코딩테스트는 ‘체화’가 중요합니다. 주어진 문제에 맞춰 적절한 이론, 알고리즘을 도출해내고 빠르게 코드를 작성해나가는 것은 결코 쉬운 일이 아닙니다. 여러 번 반복하고 오랜 시간 체화했을 때 긴장감을 이기고 제한된 시간 속에서도 정답을 빠르게 찾아갈 수 있습니다. 반복해서 풀어보기 좋은 연습 문제들을 모아둔 사이트를 공유 드릴테니 학습에 참고하시길 바래요!
데이터 분석가 코딩테스트 예제 사이트
1. 해커랭크 ( https://www.hackerrank.com/ )
2. 리트코드 ( https://leetcode.com/ )
3. 프로그래머스 ( https://www.programmers.co.kr/ )
4. solvesql ( https://solvesql.com/ )
Chapter 3.
데이터 분석가 코딩테스트 겨우 넘겼더니
과제를 하라고…?
데이터 분석 직무를 한 마디로 정의하면 ‘흩뿌려진 데이터를 정리하여 숨겨진 답을 찾는’ 직무입니다. 데이터를 통해 현상의 원인을 파악하는 일을 하고 있어요. 예를 들어, ‘온라인 쇼핑몰에서 A 상품의 매출이 떨어졌다’는 현상을 두고 데이터 분석가들은 그 원인을 찾기 시작합니다. 온라인 쇼핑몰 자체에 방문하는 사람이 줄었는지, A 상품의 경쟁 상품이 최근 증가하지는 않았는지, A 상품 후기에 부정적인 변화가 있었는지 다양한 가설을 수립하고 데이터로 증명하며 답을 찾아나가고 있어요.
그렇다면 답을 찾는 직무에서 어떤 역량이 필요할까요? 바로 논리력 입니다. 논리력이라고 하니 무척 추상적으로 느껴지실 것 같은데요. 논리력은 문제를 해결하기 위해 적합한 과정을 수행하는 역량입니다. 예를 들어, ‘A 상품의 매출이 떨어졌어요’와 같은 실무 문제를 직면하게 되었을 때 (1) 해결 방안에 대한 가설을 세우고 (2) 어떤 데이터가 필요한지 파악하고 (3) 문제를 해결하기 위한 핵심 지표를 설정하여 분석하는 것이 바로 논리력이에요.
‘A 상품 매출 하락’을 두고 조금 더 자세하게 이야기해볼까요?
A 상품의 매출이 하락한 것에는 특정할 수 없이 다양한 원인이 있을 거에요. 경쟁 상품이 리뉴얼되어 A 상품의 경쟁력을 잃었다거나, A 상품에 대한 외부 노출이 줄었다거나, A 상품이 계절에 영향을 받는 상품이라 자연스럽게 비수기로 접어들었을 수도 있어요. 이렇게 많은 원인들 중에서 가장 핵심적인 요소를 찾아 주요 가설을 선정해야 합니다.
‘경쟁력을 잃었다’라는 것을 가설로 세웠다면, 동일 카테고리 내 상품별 매출 데이터, 동일 카테고리 내 프로모션 효과 데이터 등 필요 데이터를 선정해서 살펴봐야 합니다. 또한, 지표로는 전달 A 상품 구매자 중 타 경쟁 상품을 구매한 비율을 주요 지표로 두고 분석을 해볼 수도 있겠죠. 이렇게 문제를 해결하기 위해 논리구조를 전개해나가는 것은 데이터 분석가에게 반드시 필요한 역량입니다.
여기서 중요한 것은 채용 과정 속에서 ‘사전 과제 전형’이 여러분의 논리력을 확인하기 위한 전형이라는 것입니다. 단순히 프로그래밍 언어 또는 기술역량만을 확인하는 것이 아닌 지원자의 문제 해결 과정을 전체적으로 확인하는 전형인 거죠.
데이터 분석가 사전 과제 예시
데이터 관련 사전 과제는 보안 상의 이유로 외부 공개가 어려운 경우가 많습니다. 그래서 도대체 어떤 과제들이 출제되는지 궁금해하실 텐데요. 크게 두 가지 유형으로 나누어 출제됩니다. 첫 번째로는 수요 예측 과제, 두 번째로는 개선/제안 과제입니다.
(1) 수요 예측 과제
수요 예측 과제는 기업에서 직접 관련 데이터셋을 주고 지원자가 선택한 주제에 대해 예측해보는 것으로 진행됩니다. 전년도 진행한 카카오의 데이터 분석 전형에서는 카카오에서 운영하는 서비스 하나에 대한 현황을 분석하고 신규 유저를 예측하는 프로젝트를 주제가 나왔습니다. 무려 5gb가 넘는 데이터셋을 제공하여 전처리 과정에서부터 데이터 분석가의 논리력을 평가합니다.
이러한 예측 과제는 어떻게 준비할 수 있을까요? 캐글이나 데이콘을 통해 정해진 주제와 데이터셋에 대한 연습을 여러 번 반복하는 것을 추천드려요. 실제 수강생 분들 중에는 캐글 랭커 분들의 분석 내용을 통채로 암기하셨다는 분들도 있습니다. 모범 교과서이기 때문에 도메인이나 데이터가 다르더라도, 기본 프레임을 잡고 응용하기에 암기가 무척 많은 도움이 되었다고 전달주셨어요.
참고 예시1. 자전거 수요 예측하기 (
링크 )
이미지 = 월 기온에 따른 자전거 수요 예측
특히 이 방법은 EDA에 집중하여 수요 예측을 진행했기 때문에 SK 계열사의 코딩 테스트를 대비하는 데에도 좋은 콘텐츠 입니다. EDA 관련 코딩 테스트와 사전 과제를 모두 준비하고자 하는 분들께 추천드려요!
참고 예시2. 미국 월마트 매출 예측하기 (
링크 )
이미지 = 월마트 매출 예측
위의 자전거 수요 예측만큼 많이 필사되는 콘텐츠는 아니지만, 모든 기업에 가장 관심을 가지고 있는 ‘매출’ 관련 콘텐츠입니다. 매출과 관련된 데이터의 종류를 살펴보고, 매출을 어떤 방식으로 분석하는지 그 흐름을 파악해두세요.
이미지 = 클립아트코리아
(2) 개선/제안 과제
기업의 제품, 서비스, 사업에 대한 개선 아이디어를 제안하는 것 역시 사전 과제로 출제합니다. 사실 데이터 분석 직무 자체가 문제 발생에 따른 답을 찾아내는 직무이기 때문에, 실제 업무와 가장 맞닿아 있는 과제라고 보시면 됩니다.
또한, 이러한 유형은 대기업보다는 스타트업에서 많이 출제되고 있어요. 이것은 스타트업과 대기업의 규모 차이에서 나타나는 차이라고 볼 수 있는데요. 대기업의 경우, 업무가 매우 작게 쪼개져 있기 때문에 한 사람이 하나의 제품, 서비스, 사업을 담당하는 경우는 많지 않습니다.
반면, 스타트업은 한 사람이 담당하는 경우가 많아 그 만큼 담당 내용에 대한 깊이 있는 이해가 필요해요. 그렇기 때문에 사전 과제에서 부터 담당 업무에 대한 깊이 있는 이해와 고민을 요구하고 있습니다.
실제 기업에서 출제되었던 사전 과제의 3가지 예시를 전달드립니다. 기업마다 사전 과제가 다르고, 동일 기업 내 동일 직무라고 해도 팀마다 사전 과제가 상이할 수 있어요. 아래에서 공유드리는 주제를 참고하시어, 기업의 도메인 데이터를 최대한 많이 경험해보셔야 하는 점을 꼭 명심해주세요.
- (1) 기업이 수집하고 있는 데이터를 제공 -> 해당 데이터와 기업의 서비스를 어떻게 연결지어 개선할 수 있을 것인지 아이디어 제안
- (2) 기업 내 사업과 관련하여 필요한 데이터를 지원자가 요구 -> 해당 데이터를 활용하여 사업 개선 방향 제시
- (3) 기업 관련 도메인에 대한 레포트/논문 요약 -> 기업 서비스에 도입 가능한 부분 제안
- (4) 그 외 데이터 모델 개발
보시는 것처럼 데이터를 주고, 기업과 관련된 인사이트를 제시한다는 것은 거의 유사합니다.
하지만, 기업이 데이터를 먼저 주느냐 혹은 지원자가 역으로 요구해야 하느냐에는 차이점이 있어요. 이 두 가지를 두고 보았을 때 필요한 데이터를 요구하는 것이 난이도가 더 높다고 볼 수 있습니다. 기업이 해당 사업과 관련하여 어떤 데이터를 사용하고 있을지 가늠해야, 그 데이터를 요구할 수 있기 때문이죠. 도메인과 기업에 대한 이해가 있어야 필요한 데이터를 빠르게 선정하여 요구할 수 있게 됩니다.
마지막 세번째는 앞 두가지와는 조금 달라보입니다. 데이터 분석을 통해 아이디어를 내는 것이 아니라, 도메인과 관련된 데이터 직무 트렌드를 알고 있는지를 확인하는 유형이기 때문입니다. 데이터 직무에서는 석박사 학위를 요구하는 경우가 종종 있는데요. 이는 데이터 분야의 특성과 관계가 있습니다. 데이터 직무는 계속해서 발전하기 때문에 오늘 배운 지식과 기술이 1년 뒤에는 더 이상 사용하지 않는 옛날 지식이 되어 있을 수 있어요. 실무를 하면서도 새로운 지식과 기술을 공부하며 발전하는 역량이 필요하기 때문에, 공부의 기반이 되는 대학원 경험을 요구하는 것입니다. 그리고 이러한 특성이 세번째 사전 과제 유형에도 반영이 된 것이죠. 관련 도메인 내 데이터 분야의 발전에 계속해서 관심을 가지고 있었는지, 학습하기 위해 노력하고 있었는지를 확인하는 것입니다.
이렇게 코딩 테스트와 사전 과제 전형에 대한 설명을 마무리 지어 보려고 합니다.
멘토로서 데이터 분석가 취업을 준비하는 분들께 마지막으로 이야기하자면, 데이터 분석 취업은 희망 기업을 정확하게 타겟하고 준비하는 것이 중요합니다.
기업마다 팀마다 데이터 직무를 어떻게 정의하는 지가 굉장히 상이합니다. 어떤 기업에서는 데이터 분석 직무에게 A까지 요구하지만, 어떤 기업에서는 A부터 C까지 요구하는 경우도 있어요. 후자의 기업이라면 코딩 테스트와 사전 과제에서 더 고난이도를 요구할 수도 있으니, 기업에 맞춰 취업 전략을 세워야 하는 것입니다. 제가 앞에서 말씀드린 것들만 잘 준비하신다면, 데이터 분석 취업 절대 어렵지 않으실 거예요. 여러분들께 응원의 메시지를 전합니다.
데이터 분석 코딩테스트부터 사전과제까지 함께 살펴보았는데요. 결국 데이터 분석가 취준생 분들께 중요한 건 직무에 대한 이해와 꾸준한 학습 경험이일 거 같아요. 과제 전형도 결국 지원자가 가지고 있는 직무 경험에 대한 검증 단계니 앞으로는 과제 혹은 직무 경험이 점점 더 중요해지고 있어요.
직무에 대한 경험이 없으신 분들은 직무 경험이 막연하게 느껴지실 것이라고 생각합니다. 저희 제로베이스 데이터 취업 스쿨에서는 ‘인턴 경험’을 필수로 경험하실 수 있게 취업 연계 프로그램을 운영하고 있어요. 실제 데이터를 두고 ‘문제 정의 - 가설 수립 - 지표 설정 - 데이터 분석’을 기업에 출근하여 경험할 수 있는 곳 바로 제로베이스 데이터 취업 스쿨입니다.
아직 본인만의 경쟁력이 부족하다 혹은 데이터 분석가 코딩테스트, 사전 과제의 두려움이 크다면 스쿨에서 전문가와 함께 하는 건 어떨까요?
데이터 분석 취업까지 6개월.
데이터 전문 교수진이 여러분을 기다립니다.
>> 데이터 취업 스쿨 바로가기
추천 컨텐츠