Data Engineer로 일하다가 얼마전 DataOps Engineer라는 직무를 듣게 되었다.
처음 들었던 만큼, 뭘 하는 직무인지가 궁금해졌고 서치를 하다보니 DataOps 선언문이라는걸 보게 됐다.
이번 글은 https://dataopsmanifesto.org/en/ 에 나온 선언문을 번역한 글이다.
DataOps의 최우선순위는 수 분(minutes) ~ 수 주(weeks) 를 통해 얻을 수 있는 가치있는 분석 결과를 초기에 지속적으로 전달하여 고객을 만족시키는 것이다.
데이터 분석 성능의 주요 척도는 강력한 프레임워크 및 시스템 위에서 정확한 데이터를 통합하고 insightful한 분석 결과가 제공되는 정도라고 생각한다.
진화하는 고객의 니즈를 환영하고, 이를 수용하며 경쟁 우위를 창출해라. 고객과의 가장 효율적이고 효과적이며 빠른 소통 방법은 직접 얼굴을 맞대며 하는 대화라고 믿는다.
분석 팀에는 항상 다양한 역할, 기술, 선호하는 도구 및 타이틀을 가진 사람들이 존재한다. 팀 내의 이러한 다양한 배경과 의견은 혁신과 생산성을 높인다.
고객과 분석 팀, 그리고 운영은 프로젝트를 통해 매일 함께 일해야 한다.
최고의 분석 통찰력과 알고리즘, 아키텍쳐, 요구사항 및 디자인은 모두 스스로 조직화한 팀에서 나온다고 믿는다.
개인적으로 무슨 말인이 이해가 가지 않는다..
분석 통찰력에 대한 요구의 질과 양이 계속 증가함에 따라 분석 팀은 영웅주의를 줄이고 지속 가능하고 확장 가능한 데이터 분석 프로세스를 만들기 위해 노력하는 팀이 되어야 한다고 생각한다.
분석팀은 고객과 자기 자신이 제공한 피드백 및 운영 통계를 정기적으로 확인하고 반성하며 운영 능력을 높여야 한다.
분석 팀은 다양한 개별 도구를 사용하여 데이터에 대한 접근, 통합, 모델링 및 시각화를 진행한다. 기본적으로 이러한 각 도구는 인사이트를 제공하기 위해 코드 및 config 정보를 통해 데이터에 대해 수행된 작업을 설명한다.
데이터, 툴, 코드, 환경과 같이 분석의 시작부터 끝 단 까지의 조화는 분석을 성공적으로 이끌어내는 키이다.
같은 입력에 같은 결과가 나오도록 재생산성을 높여야 한다. 따라서, low-level의 하드웨어 및 소프트웨어 구성, toolchain 안의 각 툴과 특정한 코드 및 구성, 이 모든 것을 버전화해라.
생산환경을 반영하는 "생성하기 쉽고", "격리되고", "안전하고", "일회용인" 기술 환경을 제공함으로써 분석 팀원의 실험 비용을 최소화하는것이 중요하다고 생각한다.
기술 우수성과 좋은 디자인에 대한 지속적인 관심이 속도를 향상시킨다고 믿는다. 마찬가지로 단순성(완료되지 않은 작업량을 최대화하는 기술)이 필수적이다.
the art of maximing the amount of work not done 을 뭐라고 해석해야하지...?
분석 파이프라인은 제조 라인에 빗댈 수 있다. DataOps의 기본 개념이 분석 인사이트 '제조'에서 지속적인 효율성 달성을 목표로 하는 프로세스 사고에 초점을 맞추는 것이라 믿는다.
분석 파이프라인은 코드, 구성 및 데이터의 이상(jidoka) 및 보안 문제를 자동으로 감지할 수 있는 기반으로 구축되어야 하며, 오류 방지(poka yoke)를 위해 운영자에게 지속적인 피드백을 제공해야 한다.
우리의 목표는 예상치 못한 변화를 감지하고 운영 통계를 생성하기 위해 지속적으로 성능, 보안 및 품질을 측정하는 모니터링 서비스를 갖추는 것이다.
우리는 분석 인사이트 제조 효율성의 기본 측면이, 개인 또는 팀에 의한 비슷한 작업들을 반복하는 것을 피하는 것이라고 믿는다.
우리는 고객의 요구를 분석 아이디어로 전환하고, 개발 단계에서 그 아이디어를 실현하고, 반복 가능한 생산 프로세스로 배포하고, 최종적으로 해당 제품을 리팩토링하고 재사용하는 데 드는 시간과 다른 비용을 최소화하기 위해 노력해야 한다.
내 번역 실력이 엉망일 수 있으니 원문도 포함시키기로 했다.
Our highest priority is to satisfy the customer through the early and continuous delivery of valuable analytic insights from a couple of minutes to weeks.
We believe the primary measure of data analytics performance is the degree to which insightful analytics are delivered, incorporating accurate data, atop robust frameworks and systems.
We welcome evolving customer needs, and in fact, we embrace them to generate competitive advantage. We believe that the most efficient, effective, and agile method of communication with customers is face-to-face conversation.
Analytic teams will always have a variety of roles, skills, favorite tools, and titles. A diversity of backgrounds and opinions increases innovation and productivity.
Customers, analytic teams, and operations must work together daily throughout the project.
We believe that the best analytic insight, algorithms, architectures, requirements, and designs emerge from self-organizing teams.
As the pace and breadth of need for analytic insights ever increases, we believe analytic teams should strive to reduce heroism and create sustainable and scalable data analytic teams and processes.
Analytic teams should fine-tune their operational performance by self-reflecting, at regular intervals, on feedback provided by their customers, themselves, and operational statistics.
Analytic teams use a variety of individual tools to access, integrate, model, and visualize data. Fundamentally, each of these tools generates code and configuration which describes the actions taken upon data to deliver insight.
The beginning-to-end orchestration of data, tools, code, environments, and the analytic teams work is a key driver of analytic success.
Reproducible results are required and therefore we version everything: data, low-level hardware and software configurations, and the code and configuration specific to each tool in the toolchain.
We believe it is important to minimize the cost for analytic team members to experiment by giving them easy to create, isolated, safe, and disposable technical environments that reflect their production environment.
We believe that continuous attention to technical excellence and good design enhances agility; likewise simplicity–the art of maximizing the amount of work not done–is essential.
Analytic pipelines are analogous to lean manufacturing lines. We believe a fundamental concept of DataOps is a focus on process-thinking aimed at achieving continuous efficiencies in the manufacture of analytic insight.
Analytic pipelines should be built with a foundation capable of automated detection of abnormalities (jidoka) and security issues in code, configuration, and data, and should provide continuous feedback to operators for error avoidance (poka yoke).
Our goal is to have performance, security and quality measures that are monitored continuously to detect unexpected variation and generate operational statistics.
We believe a foundational aspect of analytic insight manufacturing efficiency is to avoid the repetition of previous work by the individual or team.
We should strive to minimize the time and effort to turn a customer need into an analytic idea, create it in development, release it as a repeatable production process, and finally refactor and reuse that product.