데이터 엔지니어, 대학원을 나오지 않아도 가능할까요?
멘티 질문
ⓒCharles 🇵🇭
멘토 답변
데이터 엔지니어는 이런 일을 합니다
ⓒadult-analysis-chart
1. 데이터 파이프라인을 구축
2. 비즈니스적으로 가치 있는 데이터를 찾아내고 / 생성하며 서비스에 제공될 수 있도록 도움
3. 사내 구성원들이 데이터를 활용하는 데 있어 불편한 점을 제거 / 개선하기 위해 툴을 만드는 등의 업무
1. 데이터는 그냥 생성되지 않습니다. 어떤 모양이고, 어떤 데이터가 언제 남아야 하는지 Data의 Schema (정의)를 누군가는 정해야 하고 서비스 (앱 또는 서버)에서 남겨야(로깅) 합니다. 예를 들어 새로운 기능이 추가될 경우 얼마나 이 기능이 사용되는지 보고 싶다면 형태를 정하고 데이터를 남겨야만 나중에 확인해 볼 수 있습니다
2. 서비스에서 전송된 데이터를 어디에 / 어떻게 저장할지도 정해야 합니다. 데이터의 수가 많은지, 하나 당 사이즈가 큰지, 나중에 데이터를 확인할 때 어떻게 저장해야 사용하기 편리한지 등 많은 것들을 고려해 시스템 (인프라)를 구축합니다.
3. 데이터가 때로는 앱의 버그 등의 이유로 비정상적일 수 있습니다. 이 경우 사용 전에 중복을 제거하거나, 잘못된 데이터를 보정하는 등 (전) 처리 작업이 필요할 수 있습니다. 또는 사내의 다른 데이터 소비자들이 사용하기 쉽도록 데이터의 형태를 변경하는 등 정제할 수 도 있습니다.
4. 저장된 데이터에는 다양한 소비자가 있을 수 있습니다. 자신이 만든 기능이 많이 사용되는지 알고 싶은 디자이너나 기획자부터, 통계 (사용자 수 등) 를 확인해야 하는 분석가가 있을 수도 있고, 데이터를 이용해 서비스를 만들어 내는 (예를 들어 검색 광고라면, 검색어와 관련된 광고를 연결하고 불필요한 광고는 필터링하는 등) 다른 팀의 다른 엔지니어가 있을 수 있습니다.
5. 따라서 이 소비자들이 사용하기 쉽도록 별도의 툴을 제공해야 합니다. 각 소비자마다 필요로 하는 툴이 다를 수 있을 테지요. 예를 들어 영업 담당자는 버튼을 눌러 정산 데이터를 조회할 수 있는 툴이 필요하고, 자신의 필요에 맞게끔 데이터를 뽑길 원하는 기획자는 쿼리를 통해 직접 뽑을 수 있을 겁니다. 엔지니어의 경우에는 코드를 통해서 조금 더 복잡한 작업이 가능할 수도 있을 테고요.
ⓒAnnie Spratt
사례로 살펴보는 머신러닝
ⓒCharles 🇵🇭
검색 기능은 어떻게 만들어지나요?
- CNN으로 문장 분류하기 19 Mar 2017
- 그래프로 중요 기사 걸러내기 13 Mar 2017
- Sequence-to-Sequence 모델로 뉴스 제목 추출하기
- 통계 기반 감성사전 구축 25 Jun 2017
-
형태소 분석기 성능 비교