brunch

You can make anything
by writing

C.S.Lewis

by nuli May 05. 2023

1인 주니어 데이터 분석가 살아남기

분석가로 살기

Intro.

안녕하세요. 저는 2년 1개월째 일하고 있는 주니어 데이터 분석가입니다.

현재 직장으로 이직 전, 저는 약 100명 정도의 스타트업에서 데이터 분석가라는 이름으로 업무를 진행하였습니다. 시니어 선배가 없는 1인 주니어 데이터 분석가가 어떻게 살아남았는지 이야기해보려고 합니다.

( 심지어, 저의 팀장님은 백엔드 개발자이셨습니다. )

이러한 상황 속에서 저의 커리어를 발전시키고, 결국 이직에 성공한 이야기를 하겠습니다.


1. 스타트업 데이터 분석 환경과 상황

1-1.  <데이터 분석가> 직무 자체가 존재하지 않았던 회사이었습니다.

제가 다녔던 회사에서 저는 제1호 데이터 분석가 였습니다.


그래서 저의 상황은 다음과 같았습니다.   


1. 데이터 분석가가 무슨 일을 하는지 회사에서 충분히 이해하지 못하고 있으며 데이터 분석가에게 ‘데이터 분석 요청’ 이 아닌 ‘데이터 추출 요청’만을 하였습니다. 업무 20일 중 18일을 데이터 추출만 하면서 3개월을 보냈습니다.


2. 시니어도 없고 팀장님도 데이터 분석가가 아니었습니다. 나의 커리어에 대해 피드백을 해 줄 사람이 존재하지 않았습니다.


1-2.  데이터 분석가를 위한 ‘데이터 환경’이 없었습니다.

데이터 분석가 혹은 데이터를 사용하는 모든 이용자가 편하게 추출할 수 있는 DB가 없었습니다.

데이터 엔지니어가 존재하지 않았습니다.

( 제가 입사한 후, 약 10개월이 흐른 다음에서야 주니어 데이터 엔지니어가 입사하게 되었습니다. )


그럼 데이터 추출은 어떻게 했나요?   

1. 개발자가 개발하는 DB를 이용했습니다.    

- 구매 / 회원 등과 같은 서버 데이터는 LIVE DB를 복제한 replica DB에서 추출했습니다.

- 입사 초에 1년 데이터를 뽑으려고 쿼리 날렸다가 DB 무리 간다고 팀장님께 호출받았습니다.


2. 로그 데이터의 경우, 최근 3개월은 ElasticSearch에 적재, 그 외 기간 데이터는 S3에 적재되었습니다.  

- 3개월 유저 퍼널 데이터를 ES 쿼리로 뽑으면, 하루가 걸렸고

- 단순 pageview 수를 1년 치 뽑으려면, EMR을 띄운 후, Spark 코드로 S3 데이터를 추출 및 가공 작업하여, 8시간 동안 추출해야 했습니다.  


심지어, SQL 쿼리가 아닌 ES 쿼리로 데이터 추출을 해야 했기 때문에 한 번에 데이터 추출을 하지 못하고, Python으로 불러와서 pandas로 원하는 형태에 맞춰 가공하는 작업이 필요했습니다.


통계 등을 위한 데이터 마트 자체가 존재하지 않았습니다.

( MAU / PV 수 / PU 등의 데이터를 보려면 …… raw 데이터부터..^^ )


2. 데이터 분석 역량을 쌓고 회사에 데이터 문화를 만들기 위한 고군분투

1번과 같은 상황 속에서 데이터 분석가로 살아남기 위해 아래와 같은 일을 했습니다.


2-1. 주말 출근해서 마케터와 사이드 보고서 만들기.

1-1의 문제는 데이터 추출업무를 하느라, ‘제대로 된 데이터 분석’을 하지 못했다는 점입니다.

이직할 때, ‘저는 데이터 추출 업무만 했고 다른 업무 경험은 없습니다. ’라는 말은 절대 하고 싶지 않았습니다.


그래서, 주말에 출근해서 데이터 분석 보고서를 쓰자 ^^라고 생각하였습니다.

바보 같고 멍청할 순 있었으나 (주말에 왜 출근해?!) 나름 절실하여 선택한 방법이었습니다.

다행히 저와 마음이 맞는 마케터분이 계셔서 같이 주말에 나와 외롭지 않게 같이 보고서를 썼습니다.


저희는 2달 동안 매주 주말과 (야근)을 하면서 유저의 로그 데이터를 활용하여, 회원의 방문 리텐션에 대한 분석 보고서를 만들었습니다.

분석한 결론을 기반으로 프로덕트 개선점과 마케팅 액션 아이템까지 구체적으로 제시하였습니다.


주말을 갈아서 만든 보고서 결과

1. 저희 팀장님과 마케터 팀장님의 응원에 힘입어 ‘CEO’ 님과 각종 C레벨 분들 앞에서 저희 보고서를 발표하였습니다.

2. 충분히 저희 보고서에 대한 부분을 납득해 주시고 제안한 액션 아이템에 대해서 긍정적으로 반응해 주셨습니다. >> 투자보고서에 우리가 작성한 보고서 일부분도 들어갔습니다~ ><

3. 가장 큰 변화는 “단순 추출 업무 외에 분석 업무를 할 수 있도록 기회가 생겼다.”입니다.



이 주말 출근 이후, 저는 ‘00 유저 분석’ / ‘회원가입 프로덕트 분석’ 등 업무 시간에 분석 업무를 할 수 있었습니다.



2-2. 데이터 분석 환경 구축하기

1-2에서 언급한 것처럼, 분석 시간보다 추출 시간이 더 오래 걸리는 아이러니한 상황이었습니다.

이것을 개선하기 위해서 DW와 데이터 마트를 구축하였습니다.


구축하기 위한 사전 작업   

1. CTO님 설득하기            

- 왜 기존에 썼던 ‘DB’가 아닌, DataWarehouse인 ‘Redshift’를 사용해야 하는지       

- 젠킨스라는 배치 도구를 쓰고 있는데, 왜 ‘Airflow’를 써야 하는지  


2. 데이터 엔지니어 공부하기            

- AWS Redshift 및 환경 구축을 위해 AWS와 인프라(VPC, subnet, 보안그룹 등)를 공부하기  - Airflow를 도입하기 위해서 Airflow 도구 공부하기  


당연히, 1년 차 데이터 분석가와 1년 차 데이터 엔지니어로 이루어진 업무이었기에 시행착오가 많았습니다.

그러나 (또) 업무 외 시간에 업무를 하기 위한 공부를 하고 준비해서 결국, DW 및 통계 데이터 마트를 구축했습니다.


주니어 둘을 갈아서 만든 분석 환경 결과


1. 8시간 걸리던 PV 데이터 추출을 <단, 19초 만>에 추출할 수 있었습니다.

2. 로그 데이터의 경우, ES쿼리 혹은 Spark를 알아야만 추출이 가능했는데, 이제 SQL을 이용하여 추출이 가능해졌습니다. 따라서 기획자, 마케터, 전략기획팀, 투자팀 등 비개발자 분들도 SQL로 데이터를 손쉽게 추출할 수 있었습니다.            

즉, 데이터 추출 업무가 감소할 수 있는 환경을 만들었습니다!



2-3. 직원 모두가 데이터에 접근하도록 만들기

2-2로 인해, 모든 사람이 SQL만 안다면 앱의 데이터를 쉽게 추출 및 활용할 수 있게 되었습니다.

맞아요. ‘SQL을 안다면..’의 조건이 있습니다.


또한, 비개발자 분들은 우리 앱이 어떤 형태로 데이터를 쌓고 있는지 전혀 모르는 상황이기 때문에 사전 설명이 필요했습니다.


1) SQL 강의

매주 수요일 ‘네트워킹’ 시간이 존재하였는데, 해당 시간에 저는 자발적으로 ‘SQL 학습 클래스’를 열었습니다. 마케팅팀, 기획팀, 운영팀 등 다양한 팀에서 SQL을 배우기 위해 오셨고,

저는 1) SQL 기본 강의 2) 우리 회사의 데이터는 이렇게 있어요. 3) 실제 문제를 준비했습니다.

( 네.. 맞아요. 또 또 업무 외 시간에 강의 준비를 했어요..^^ )


단순히, SELECT FROM GROUPBY를 알려주면, “그래서 어떻게 유저 수를 봐요? 이벤트 참여자를 봐요?”라는 질문이 오기 때문에 실제 현업에서 사용하고 있는 우리 앱 기준의 데이터 문제를 준비했고 실제로 SQL를 실습하면서 강의를 진행하였습니다.


2) 대시보드 구축 및 사용법 공유 세션 진행

너무 당연하게도 SQL에 관심은 없으나 데이터를 보고 싶은 분들이 존재합니다.

기존에는 EIS 시스템으로 직접 프런트 개발자, 백엔드 개발자가 대시보드를 개발하여 데이터를 제공하였습니다. 즉, 관리도 안 되고 리소스 투입이 큰 상황이었습니다.


따라서 AWS Quiksight라는 대시보드를 전사에 도입하였고, 기본적인 유저 데이터를 손쉽게 볼 수 있도록 구축하였습니다. 그뿐만 아니라 대시보드를 처음 본 분들을 위해서 사용법에 대해 공유하는 세션도 진행하였습니다.


접근할 수 있는 데이터 환경 제공 결과


1. 반복적으로 추출했던 데이터에 대한 요청이 사라졌습니다.

2. 유관부서 분들이 ‘쿼리’ 및 우리 앱의 데이터 환경에 대한 이해도가 높아져서, 요청 수준 및 커뮤니케이션 비용이 감소했습니다.           


ex, ‘유저의 구매 건수 알려주세요’ → ‘user_no 기준으로 order type이 1인 데이터를 알고 싶어요.’  


Outro.

분석가가 업무시간에 분석 보고서를 쓰는 그 당연한 일을 위해서, 당연한 지표를 손쉽게 보기 위해서, 업무 외 많은 시간을 투자하고 개발 업무를 직접 하였습니다.


그 결과,  (이직했습니다)   


1. 이직 면접에서 저는 할 수 있는 말이 많아졌습니다.     ( 물론 데이터 분석가 면접이기 때문에 DW 구축은 물어보지도 않았지만요.. ㅎ)

2. 이직 후에도 개발자와의 소통이 쉬워졌고, 이미 겪어본 업무라서 적응에도 어렵지 않았습니다.  ( 또 물론 아직도 부족하고 모르는 것들 투성이지만요..ㅎ )


즉, 현재는 더 좋은 환경에서 더 행복하게 분석 업무를 할 수 있게 되었습니다.


너무 꼰대 같을 수 있지만 어렵고 힘든 상황이기 때문에 제가 할 수 있는 많은 기회가 왔다고 생각합니다. 지금 이직한 회사의 면접관분께 왜 저를 뽑았냐고 했을 때 <개발 지식이 있어서 주니어지만 일할 때 편하리라 생각했다.>이었습니다. 그때는 불필요하다고 생각하고 분석 업무보단 개발 업무가 많아서 커리어 고민했던 점이 저의 이직의 기회가 되었습니다.


친한 기획자분이 한 말이 있습니다.

상황과 현재에 대해 불만이 많을 수도 있다. 그러나, 그럼에도 불구하고 극복하고 성장하는 사람이 있다. 네가 그런 사람이 되기를 바란다.


만약, 시니어도 없는 외로운 분석을 하고 계신 데이터 분석가가 계신다면

많은 한계점과 고민이 있으시겠지만, 그 환경을 기회로 삼아서

더 큰 역량을 쌓으시고 더 좋은 기회를 얻으시길 바랍니다.




-  데이터 분석가가 되기 위한 팁을 알고 싶다면!?

    : 문과생 현직 데이터 분석가의 취업 노하우 https://miniintern.com/happyfolio/94

문과생이었던 제가 직접 쓴 데이터 분석가가 된 꿀팁을 정리해 둔 전자책입니다 ㅎㅎ!!


전자책 구입 시 해택 ( 만원의 행복 ❤️ )

1. 미니인턴에서 멘토링 요청 주시면 1:1 로 1회 무료로 고민/궁금한점에 대한 답변 해드립니다.

2. 멘토링 요청 시 '포트폴리오/이력서 피드백' 요청 주시면 오픈톡 링크로 추가적인 피드백 드립니다.


- 더 많은 데이터 분석글을 보고 싶다면, PAP 블로그

( 해당 글 역시, PAP 퍼블리셔 활동 중 쓴 글 입니다 )

 https://playinpap.github.io/work-da-alone/


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari