프로젝트 개요
내가 담당한 범위
현장 FDE로서 고객 요구사항을 기술적으로 직접 책임지는 창구였습니다. 고객 피드백으로 요청된 개발 대부분을 직접 수행했고, 검색 결과 화면 개선, 데이터 거버넌스 기능, Query Builder의 세부 기능을 직접 담당했습니다.
고객의 최초 요청
“임직원이 SQL을 사용할 수 없습니다. 데이터에 접근하고 활용할 수 있도록 해주세요.”
고객, 프로젝트 착수 시점
이 요청은 SQL 문법이 핵심 장애물이라는 가정에서 출발했습니다. 하지만 쿼리를 작성하려면 먼저 어떤 데이터가 존재하고, 어떻게 구성되어 있으며, 무엇을 확인해야 하는지 알아야 합니다.
실제 문제는 쿼리를 작성하는 단계보다 앞에 있었습니다. 현업 담당자에게는 데이터를 조회하기 전에 필요한 데이터를 찾고 이해할 수 있는 방법이 필요했습니다.
문제 발견: 작동하지만 실패한 화면
첫 번째 버전은 200명 대상 베타테스트까지 배포됐습니다. 그리고 검색 결과 화면이 충분한 맥락을 전달하지 못한다는 직접적인 피드백을 받았습니다.
“데이터를 많이 제공하려는 것은 알겠지만, 어떤 정보가 있고 무엇을 보여주려는지 모르겠다.”
베타 사용자 피드백 요약
화면은 데이터를 반환했지만, 사용자는 자신이 무엇을 보고 있는지, 그 데이터가 전체 구조에서 어디에 속하는지 이해하기 어려웠습니다. 표면적인 화면 수정에 그치지 않고 원인을 파악하기 위해 다른 데이터 검색 서비스들을 직접 사용하고 비교했습니다. 그 과정에서 계층 구조와 필터, 결과 맥락이 사용자의 해석 부담을 어떻게 줄이는지 확인했고, 이를 바탕으로 개선 방향을 정의한 뒤 탐색 경험을 다시 설계했습니다.
- 물류128
- 배송36
- 창고44
- 운송48
- 재무57
- 고객39
- 결과 중심 화면에서 단계적인 탐색 방식으로 전환
- 평면적인 검색 결과를 계층 구조와 필터 중심으로 변경
- 사용자가 데이터 카탈로그를 알고 있다고 가정하지 않고, 각 결과의 위치와 맥락을 함께 제공
제품을 결정한 제약조건
새로운 환경에서 처음부터 만드는 작업이 아니었습니다. 기존 엔터프라이즈 시스템과 협업 구조 안에서 작동해야 했습니다.
- Databricks 데이터 플랫폼이 이미 구축되어 있었고 파트너사가 운영하고 있었습니다.
- 포털이 기존 데이터 거버넌스와 접근 권한을 우회해서는 안 됐습니다.
- 주요 사용자는 분석가나 개발자가 아닌 현업 담당자였습니다.
- 여러 회사가 각기 다른 시스템 계층을 담당했기 때문에 기술과 업무의 책임 범위를 명확히 해야 했습니다.
- 베타테스트 2주 전에 투입되어, 기존 코드와 고객 상황을 빠르게 이해하면서 즉시 납기까지 맞춰야 했습니다.
- 첫 번째 버전은 200명을 지원하면서 향후 전사 확대와도 호환되어야 했습니다.
저희 팀은 포털 계층과 Power BI 제공을 담당했고, Databricks 플랫폼을 대체하지는 않았습니다. 저는 포털의 기술 방향과 직접 구현을 책임지면서, 보고서 업무에서는 고객사와 모델러를 연결하고 전체 진행을 총괄했습니다. 이 경계가 제품의 초점과 참여자별 책임을 명확하게 유지했습니다.
핵심 의사결정
01SQL 교육 도구가 아닌 데이터 탐색 계층을 만든다
고객의 최초 요청을 최종 명세가 아니라 문제를 찾기 위한 출발점으로 보았습니다. 쿼리 생성을 먼저 최적화하는 대신, 어떤 데이터를 사용할 수 있는지 발견하고 이해 가능한 범위까지 좁혀가는 경험을 중심으로 제품을 구성했습니다.
핵심 경험을 "더 나은 쿼리 작성"에서 "올바른 출발점 찾기"로 전환한 결정입니다.
02첫 번째 검색 결과 화면을 수정하지 않고 다시 설계한다
첫 버전은 베타까지 배포됐지만 사용자가 결과를 읽지 못했습니다. 화면을 조정하는 대신, 다른 데이터 검색 서비스를 직접 사용하며 구조가 실패한 이유를 찾고 계층 구조·필터·결과 맥락을 중심으로 정보 구조를 다시 만들었습니다.
03아키텍처 안에서 책임 범위를 명확하게 유지한다
포털은 Databricks에 연결되어 표준화된 내용을 현업 사용자가 탐색할 수 있는 형태로 보여줍니다. 정제된 Gold Mart 데이터셋으로 Power BI 보고서를 만들고, 완성된 보고서는 다시 포털에 임베딩합니다. 포털은 기존 데이터 플랫폼을 대체하지 않으면서 탐색, 쿼리, 보고서, 거버넌스 경험을 제공합니다.
기술적인 결정인 동시에 프로젝트 운영에 관한 결정이었습니다. 여러 조직이 함께하는 프로젝트에서는 불명확한 책임 범위 자체가 시스템의 위험이 됩니다.
04자연어 쿼리 생성을 PoC로 한정하고, 그렇게 표기한다
Query Builder는 Databricks 기반 LLM으로 사용자의 의도를 쿼리로 변환합니다. 사용자는 생성된 쿼리를 확인한 뒤 Databricks에서 실행하고, 반환된 데이터를 포털에서 확인한 다음 Excel로 내보낼 수 있습니다.
전체 흐름은 작동하지만, 현재 PoC에는 생성된 쿼리를 운영 수준에서 검증하는 계층이 없습니다. 이 계층을 생성기와 함께 설계해야 기능이 완성됐다고 말할 수 있습니다.
05데이터 품질을 실제 거버넌스 업무 흐름으로 만든다
거버넌스 기능은 품질 지표 대시보드에 그치지 않습니다. Databricks 데이터의 표준화 상태와 오염 정도를 측정하고, 거버넌스 관리자가 발견된 문제를 검토한 뒤 포털에서 수정할 수 있어야 합니다.
이 영역 전체를 담당하고 있습니다. 데이터 품질 신호를 관리자 검토와 수정으로 연결해, 표준화를 일회성 정제 작업이 아니라 조직이 반복 운영할 수 있는 프로세스로 만드는 중입니다.
서비스 아키텍처
Query Builder는 쿼리 생성과 실행, 결과 확인, Excel 내보내기까지 전체 흐름을 지원합니다. 남은 핵심 과제는 실행이 아니라 쿼리 검증 계층입니다. 거버넌스 기능은 Databricks의 데이터 품질과 오염 정도를 측정해 관리자에게 보여주고, 포털에서 표준화 상태를 검토·수정할 수 있게 합니다.
Query Builder — 직접 구현한 흐름
사용자가 질문을 그대로 적습니다
진입 시점에 SQL이 필요하지 않습니다. 탐색 단계에서 이미 좁혀 놓은 데이터셋 안에서, 사용자의 표현 그대로 의도를 입력합니다.
Databricks 기반 LLM이 쿼리를 생성합니다
실행 전에 생성된 쿼리를 사용자에게 보여줍니다. 운영 수준 검증 계층이 없는 PoC이기 때문에 둔 단계이며, 숨기지 않고 명시했습니다.
기존 권한 체계 안에서 Databricks에 실행됩니다
포털은 데이터를 따로 복제하지 않고 거버넌스를 우회하지도 않습니다. 데이터와 접근 권한이 이미 있는 곳에서 쿼리가 실행됩니다.
결과를 포털에서 바로 읽습니다
현업 담당자는 데이터셋을 찾은 그 화면에서 답을 확인합니다. 분석 도구로 이동할 필요가 없습니다.
| region_cd | failed_cnt |
|---|---|
| REGION-A | 184 |
| REGION-C | 121 |
| REGION-B | 96 |
| REGION-D | 43 |
Excel 내보내기로 실제 업무가 이어집니다
현업의 후속 작업은 스프레드시트에서 진행됩니다. 포털 안에서 흐름을 끝냈다면 문제를 해결한 것이 아니라 옮긴 것이 됩니다.
구현과 반복
현장에 투입
기존 코드와 진행 중인 고객 관계를 파악하면서 고객 요청 개발을 인수했습니다.
요청을 재정의
SQL 요청이 데이터 탐색 문제가 되면서, 첫 릴리스가 증명해야 할 것이 달라졌습니다.
200명 대상 베타 완료
네 개 조직이 참여한 전체 프로젝트 팀과 함께 마쳤습니다.
결정적인 피드백
"데이터는 많은데 무엇이 있는지 모르겠다." 기술적으로 정상인 화면이 실패하고 있었습니다.
수정이 아닌 원인 분석
타사 데이터 검색 서비스를 직접 사용하며 구조가 실패한 이유를 찾고 개선 방향을 정의했습니다.
검색 결과 화면 재구축
계층 구조, 필터, 결과 맥락을 직접 구현했습니다.
Query Builder 전체 흐름
생성, 확인, 실행, 결과 표시, Excel 내보내기.
거버넌스 업무 흐름
품질 측정, 관리자 검토, 표준화 수정. 전체를 담당하고 있으며 개발 진행 중입니다.
가장 중요한 개선은 기술적인 것이 아니었습니다
기술적으로 정상 동작하는 결과 화면도 사용자가 이해하지 못하면 실패한다는 사실을 인정하는 것이었습니다. 이는 제품 판단이고, 현장에서 그 말을 직접 들었기 때문에 드러났습니다.
결과 — 그리고 아직 끝나지 않은 것
완료
- 베타 2주 전 투입되어 200명 대상 베타를 완료했습니다.
- Databricks에 연결·표준화된 데이터를 기존 플랫폼 경계를 유지하면서 포털에 표현했습니다.
- Gold Mart 기반 Power BI 보고서를 포털에 임베딩했습니다.
- Query Builder의 생성·실행·결과 표시·Excel 내보내기를 구현했습니다.
진행 중
- 전사 확대
- 데이터 거버넌스 업무 흐름 — 측정, 관리자 검토, 수정
명확한 한계
- Query Builder는 PoC이며 운영 수준의 쿼리 검증 계층이 아직 없습니다.
- 사용자 만족도는 아직 측정하지 않았습니다.
- 약 3.5억 건은 플랫폼에 연결된 데이터 규모이며, 포털이 생성하거나 처리한 데이터가 아닙니다.
- 이 사례가 증명하는 범위는 200명 베타테스트이며 전사 구축 완료가 아닙니다.
배운 점
최초 요청은 업무 문제의 원인보다 가장 눈에 잘 보이는 장애물을 설명하는 경우가 많습니다. 이 프로젝트에서는 SQL이 눈에 보였지만, 데이터 탐색이 먼저였습니다.
다시 진행한다면 첫 주에 최소 기능으로 만든 검색 결과 화면을 현업 담당자 5명에게 먼저 보여줄 것입니다. 넓은 배포에 투자하기 전에 사용자가 정보 구조를 이해하는지 검증할 수 있습니다. 또한 쿼리 생성과 검증 계층을 처음부터 함께 설계할 것입니다.
모든 다이어그램은 실제 구조를 바탕으로 다시 그렸으며, 고객사명·데이터·식별자는 제거했습니다.