시작하며
안녕하세요. 카카오페이만의 기술 노하우와 개발 문화를 사내외로 널리 알리고 싶은 로라, 댄입니다.
카카오 개발자 컨퍼런스 if(kakao)가 12월 7일 수요일부터 12월 9일 금요일까지 3일간 열렸습니다. if(kakao)는 카카오를 대표하는 개발자 컨퍼런스인 만큼 카카오와 카카오의 모든 공동체(카카오는 자회사를 공동체라고 칭합니다.) 크루들이 함께 준비하는 행사인데요. 카카오페이 합류 전, if(kakao) 같은 대규모 개발자 컨퍼런스는 실제로 어떻게 준비하고 운영하는지 궁금한 점이 많았습니다. 저와 같은 궁금증을 가지고 있는 분들의 궁금증 해소와 개발자 컨퍼런스를 준비하는 분들께 도움이 될 수 있도록 카카오페이의 if(kakao) 2022 준비 과정 및 운영 경험을 공유합니다.
if(kakao) 이프카카오란?
if(kakao), 카카오 개발자 컨퍼런스
if(kakao)는 2018년부터 시작해 어느덧 다섯 번째 진행하는 카카오의 연례 개발자 컨퍼런스입니다. 컨퍼런스에서는 카카오와 카카오 공동체에서 서비스를 개발하고 운영하며 겪은 크루들의 가치 있는 경험들을 공유하고 있습니다. 코로나 이전에는 오프라인으로 진행해 경험과 고민을 나눌 수 있는 개발자 교류의 장이었는데요. 코로나 이후인 2020년부터는 시간과 장소에 구애받지 않고 온라인으로 진행하는 만큼 이전보다 다양한 세션을 준비해 공유하고 있습니다.
카카오의 개발자 컨퍼런스 if(kakao)는 카카오와 카카오 공동체 크루들이 함께 준비하는 행사라고 말씀드렸는데요. 다양한 크루들이 어떻게 모여 if(kakao)를 준비하고 운영하는지 좀 더 자세히 알아볼까요?
if(kakao), 함께 만드는 개발자 컨퍼런스
if(kakao)는 카카오를 대표하는 개발자 컨퍼런스로 전반적인 진행은 카카오에서 담당합니다. 컨퍼런스 개최 일정 기준으로 대략 5개월 전부터 준비를 시작했는데요. 길다면 긴 기간동안 컨퍼런스를 함께 준비할 공동체별 컨퍼런스 담당자도 모집했습니다. 공동체의 컨퍼런스 담당자 대부분은 저와 댄처럼 기술전략팀 소속이거나, 기술기획팀 등에 속해 Developer Relations 업무를 담당하고 계신 크루였습니다.
공동체별 컨퍼런스 담당자 확정 후, 주 1회 모여 컨퍼런스 준비를 위한 정기 미팅을 진행했습니다. 공동체별 담당자들이 한 자리에 모인 만큼 다양한 의견을 교류할 수 있었는데요. 올해 if(kakao)는 오프라인 진행으로 준비를 하다가 코로나 재확산이 시작될 시점에는 공동체 담당자들의 의견을 취합해 온라인 진행으로 결정하기도 했습니다. 컨퍼런스 주최는 카카오지만, 카카오와 카카오 공동체가 함께 준비하고 만들어 나가는 행사임을 몸소 느낄 수 있었습니다. 정기 미팅에서는 이처럼 공동체별 이슈와 진행 상황 공유 및 전체적인 컨퍼런스 진행 방향을 논의했습니다.
각 공동체의 발표 준비는 공동체 컨퍼런스 담당자들의 몫인데요. 카카오페이 if(kakao) 담당자인 저와 댄은 카카오페이를 대표해 발표를 진행하는 크루들의 준비가 헛되지 않도록 다양한 것들을 준비하고 지원했습니다. 발표자 모집부터 발표 자료, 촬영 리허설, 실제 촬영까지 기술전략팀에서 구체적으로 어떤 업무들을 진행했는지 살펴보겠습니다.
카카오페이의 if(kakao) 준비 과정
1. 발표자 모집
4월 말 카카오에서 if(kakao) 개발자 컨퍼런스 발표자를 모집하는 공지를 올렸습니다.
행사 공지가 올라오면 각 카카오 공동체에서 발표자를 모집합니다. 저희 카카오페이도 발표자를 모집하게 되었고요, 최종적으로 12명의 크루가 8개의 세션을 발표했습니다. 발표자 모집은 자발적으로 진행하되, 발표할 콘텐츠를 팀 리더와 상의하여 결정하도록 안내했습니다. 카카오페이가 그간 쌓아 온 지식과 경험, 노하우 중 외부에 도움이 될 만하다고 판단되는 콘텐츠를 발표 주제로 삼았습니다.
2. 발표 자료 작성
발표 자료 작성은 다음과 같은 절차로 진행했습니다.
2-1. 발표 주제, 개요, 목차 작성
먼저 발표 주제와 개요, 목차를 작성하도록 안내합니다. 필요시 해당 콘텐츠의 방향에 대해 문의하고, 청중에게 좀 더 도움되는 내용이 될 수 있게 안내합니다. 이후 발표 자료 초안이 완성되면, 이때부터 자료 리뷰를 시작합니다. 발표 자료는 총 세 차례의 리허설을 통해 더욱 정교하게 다듬는 과정을 거치게 됩니다.
2-2. 발표 자료 리뷰 체크 리스트 생성
발표 자료 리뷰를 위한 체크 리스트를 만들고, 여러 차례 진행한 발표 자료 리뷰 진행 시 체크 리스트 중심으로 수정 사항을 전달했습니다. 체크 리스트를 만들어두고 이를 기준으로 자료를 리뷰하니, 카카오페이 발표 자료 전체적으로 통일성을 유지할 수 있었습니다.
내용 전달의 명확성
- 발표 목적: 발표에서 전달하고자 하는 메시지를 담고 있는가?
- 제목: 내용이 무엇인지 한눈에 알 수 있는 구체적인 제목을 달았는가?
- 목차: 목차만 읽어도 발표의 흐름, 내용을 짐작할 수 있는가?
- 결론: 강조하고자 하는 결론을 3가지 이하로 표현하고 있는가?
- 약어 설명: 약어가 처음 나올 때는 괄호 안에 풀어서 부연했는가?
- 시작과 끝의 일치: 발표 자료 전체에서 설명하는 내용이 일관적인가?
- 내부 용어 부가 설명: 사내에서만 쓰는 용어인가? 그렇다면, 일반 용어로 바꿨거나 부가 설명(각주)을 포함했는가?
용어의 일관성
- 용어 일관성: 동일한 의미인 용어가 여러 가지 표현으로 작성되어 있는가? ex. 사용자, 유저, 회원, 고객
표현의 명확성
- 핵심 문구: 장표에서 핵심 문구를 잘 표현하는가?
- 이미지: 장표에 이미지만 들어간 경우, 이미지가 내용을 충분히 설명하는가?
- 그래프: 장표에 그래프가 들어간 경우, 어떤 부분에 주목해야 하는지 잘 표현하고 있는가?
보안
- 보안 상 문제없는 공개 가능한 수준의 내용인가?: 콘텐츠에 포함된 기술, 회사의 구체적인 서버 명, 도메인 명 등
- 내부 개인정보 암호화 가이드를 잘 따르고 있는가?: 콘텐츠에 내부 패스워드, 개인 정보, 콘텐츠 내 코드에 내부에서 사용하는 패스워드 등이 포함되어 있는가?
출처 확인
- 인용 시 출처는 정확한가?
3. 리허설 진행
리허설은 총 세 차례에 걸쳐 진행했습니다. 1차부터 3차 리허설 이후 리뷰 의견은 구글 시트와 영상으로 남겼습니다. 리허설 시 발표 내용을 들으면서 구글 시트에 리뷰어의 의견을 남기도록 하고, 리허설 직후 리뷰 작성 순서대로 발표자에게 리뷰어가 직접 의견을 전달했습니다. 리허설은 온라인으로 진행해 해당 과정을 녹화본으로도 남겨, 추후 발표자가 리뷰 의견을 구글 시트 및 녹화본으로 다시 살펴볼 수 있게 했습니다.
3-1. 1차 리허설
1차 리허설은 팀원, 팀장, 그리고 저희 기술전략팀이 함께 진행했습니다. 1차 리허설 과정에서는 앞서 소개한 체크 리스트와 함께 주로 글의 흐름, 문장 구성을 살펴봤습니다. 팀원과 팀장이 함께 살펴 보므로 발표 주제에 대한 고민과 함께 전체적인 발표 흐름에 대한 의견이 많이 나왔습니다. 앞뒤 장표의 설명 연결이 매끄럽지 않다거나, 청중이 듣기에 식상하지 않은 내용일까, 너무 일반적인 내용이라 굳이 발표에 포함될 필요가 있을까, 청중에게 유익한 내용인가, 이해하기 쉽게 전달될까 등을 검토했습니다.
3-2. 2차 리허설
2차 리허설은 외부 스피치 코치를 섭외하여 진행했습니다. 스피치 코치와 발표자 간 1:1 방식으로 진행했으며, 기대 이상으로 많은 발표 팁을 익힐 수 있었습니다. 각 발표자에 맞추어 적절한 개선 의견이 제시되므로 모든 발표자들이 코칭에 만족해했습니다. 이 과정은 발표자 개인에게도 자신의 발표 기술을 체크할 수 있는 좋은 기회가 되었고, 앞으로도 계속 맞춤형 스피치 코칭을 활용할 계획입니다. 발표 시 비치는 시선/이미지, 음성, 발표 내용에 대한 코칭 팁은 뒤에서 따로 간단히 소개드리겠습니다.
3-3. 3차 리허설
3차 리허설은 CTO와 차상위 조직장 및 팀장이 필참 하고, 팀원의 참석을 허용했습니다. 역시 저희 기술전략팀이 함께 했고요. 이쯤 되면 더 이상 고칠 게 없다는 생각이었는데, 의외로 의견은 계속 나왔습니다. 정말 끝날 때까지 끝난 게 아니더라고요. 청중에게 좀 더 나은 내용을 전달해 드리고자, 수많은 과정을 거치며 수정에 수정을 거듭한 발표자들에게 다시 한번 감사의 말씀을 드리고 싶네요.
4. 발표 자료 디자인 수정
발표 자료의 수정은 내용이나 문장 표현에 그친 것이 아니었습니다. 저희 브랜드 디자인팀에서 디자인 시인성, 일관성을 높이는 작업을 통해 더욱 이해하기 쉬운 자료로 거듭나게 하고자 노력했는데요. 이 자리를 빌려 거듭 감사드립니다. 카카오에서 제공하는 발표 자료 템플릿이 있어, 해당 템플릿을 기준으로 전반적인 디자인 컨셉을 맞춥니다. 해당 템플릿에는 표지, 목차, 간지, 내지의 디자인과 다양한 아이콘 등을 제공하고 있습니다. 발표자들이 해당 템플릿을 제공받기 전부터 발표 자료를 만들기 시작하므로, 템플릿 기준에 맞지 않는 경우가 종종 있어 브랜드 디자인팀에서 디자인 컨셉의 일관성을 맞추는 작업을 진행합니다.
발표 자료 디자인 수정은 최종 발표 자료 작성 완료 이후에 진행하는 것이 좋겠지만, 일정 상 결코 쉽지 않았습니다. 발표자들이 좀 더 나은 내용을 만들고자 끊임없이 자료 수정을 지속했기 때문에 발표자가 작성한 최종 버전을 대상으로 디자인 수정을 진행하기가 힘들었습니다. 따라서 발표 자료 작성 중간 시점에 디자인 수정을 시작할 수밖에 없었는데요.
올해는 다음과 같이 진행했습니다.
- 1단계: 1차 리허설 완료 후, 디자인 수정을 희망하는 특정 장표만 수정
- 2단계: 2차 리허설 완료 후, 전체 장표에 대한 디자인 검수 및 수정
- 3단계: 이후는 발표자가 해당 디자인으로 반영하면서 수정 진행
내년에는 발표자들 대상으로 발표 자료 템플릿 소개
세션을 브랜드 디자인팀에서 따로 마련하기로 했습니다. 발표자들과 교류 없이 템플릿만 제공해서는 내용이 잘 전달되지 않는 부분이 있더라고요.
카카오페이 if(kakao) 발표 소개
위 카카오페이의 if(kakao) 준비 과정을 기반으로 오랜 시간 열심히 준비한, 카카오페이 크루들의 경험과 고민을 청중들과 나누기 위한 카카오페이의 if(kakao) 8개 발표를 소개합니다.
🔗 Batch Performance 극한으로 끌어올리기: 1억 건 데이터 처리를 위한 노력: 수 천만 건 이상의 대량 배치 처리를 하기 위한 최고의 노하우를 전달합니다.
🔗 카카오페이 MLOps 적용기 (feat. AWS): MLOps의 핵심 구성요소인 모델 학습 파이프라인, Feature Store, 모델 Serving의 구축 과정을 상세하게 설명합니다.
🔗 카카오페이 프론트엔드 개발팀의 Client Side Rendering 환경 고도화: 프론트엔드 서비스가 제공되는 환경의 관점에서 개발자 경험과 사용자 경험을 개선하기 위한 카카오페이 프론트엔드 팀의 작업을 사례를 통해 이야기합니다.
🔗 Sentry를 이용한 에러 추적기, React의 선언적 에러 처리: 카카오페이 프론트엔드에서 선언적 에러 처리로 사용자 경험과 개발자 경험 증대 및 Sentry를 통한 웹뷰 환경에서의 에러 추적, 장애 대응, 사용자 경험 개선을 얘기합니다.
🔗 카카오페이 iOS 웹뷰 소개 및 리팩토링 이야기: 다양한 시도를 통해 현재 사용 중인 웹뷰로 발전하게 된 과정을 소개합니다. 여러 타입의 웹뷰를 핸들링하는 방법과 리팩토링 스토리를 포함하여 카카오페이 서비스의 특성상 카카오페이 앱 및 카카오톡 앱 2개의 앱을 개발해야하는 환경에서 어떻게 코드를 관리하는지에 대해 알아봅니다.
🔗 다리는 걸을 뿐.. 만보기 서비스 개발기: 카카오페이 만보기 서비스 소개와 함께 주니어 개발자가 만보기 서비스를 개발하기 위해 어떤 과정을 경험했는지 공유합니다.
🔗 카카오페이 앱 리빌딩 스토리: 카카오페이 앱을 리빌딩하면서 겪은 과정들을 소개합니다.
🔗 QA엔지니어가 바라본 모바일 자동화 테스트: 카카오페이 QA팀에서 모바일 자동화 테스트를 통해 얻은 다양한 경험들을 공유합니다.
아울러 카카오페이 채용과 개발 문화가 궁금하시다면 다음 세션도 참고해 주세요.
🔗 이력서 작성이 처음이라면, 채용팀이 알려주는 개발자 이력서 작성 꿀팁!: 이력서 작성이 낯선 분들을 위해 ‘나의 매력’을 극대화하는 이력서 작성 꿀팁을 공개합니다.
🔗 카카오페이 워크플랫폼 개발자로 일한다는 것: 카카오페이 크루가 사용자인 업무 시스템을 만들기 위해 어떤 부분에 중점을 두고 만들어가는지 소개해 드립니다.
🔗 카카오페이 서버 개발자로 일한다는 것: 카카오페이 서버 개발자들이 참여하는 프로젝트와 사용하는 기술, 협업 방식과 기술 문화에 대해 이야기합니다.
🔗 카카오페이 성장스토리와 일하는 문화 카카오페이는 어떻게 성장할 수 있었을까요? 카카오페이가 빠르게 성장할 수 있었던 DNA를 소개합니다.
마치며
카카오페이 Developer Relations 업무 중 하나인 if(kakao) 개발자 컨퍼런스 준비 과정 전체를 소개해 드렸는데요. if(kakao)는 규모가 큰 행사인 만큼 준비 기간도 길고, 준비해야 할 부분도 많았습니다. 그럼에도 카카오페이 크루들이 직접 겪은 가치 있는 경험을 많은 분들에게 알릴 수 있는 기회라고 생각하니 준비하는 내내 더 잘해야겠다는 욕심이 들었던 것 같기도 하네요. 올해는 온라인으로 진행해 아쉬움이 살짝 남지만, 내년에는 오프라인으로 진행해 많은 개발자분들과 소통하는 자리를 가질 수 있겠죠?
이번 글이 개발자 컨퍼런스를 준비하는 분들께 조금이라도 도움이 되었으면 좋겠습니다. 그리고 카카오페이에서 준비한 발표들 놓치지 말고 많은 시청 부탁드립니다! 🙇🏻♀️
스피치 코칭 팁
스피치 코치님이 알려주신 몇 가지 코칭 팁을 소개합니다.
시선/이미지 미소로 청중을 반기고, 시선은 고정하며, 표정이 굳지 않게 합니다.
미소: 오프닝과 클로징은 더 화사한 미소로 청중을 반긴다.
시선: 스크립트를 읽을 때 눈이 돌아가지 않게 한다.
표정: 나를 셀카 모드로 영상 촬영해보고, 표정 연습을 한다.
제스처: (특히 오프라인 발표인 경우) 강조하고 싶은 내용에 제스처 정해놓고 표현한다. 좀 더 전문적이며, 여유 있어 보인다.
음성 스크립트를 읽을 때 지루하지 않게 하며, 명확하게 발음합니다. 자연스럽게 발음된 건지 녹음해서 들어봅니다.
문장을 덩어리로 구분하여 말하며, 덩어리 간 잠깐 쉬어 간다.
강조 단어에 톤의 강약을 주어 리드미컬한 소리를 만들어서 지루하지 않게 한다.
입을 많이 벌려 발음을 명확하게 한다. (문장에서 모음만 떼서 입모양 미리 연습 후 발음)
발표 내용 오프닝에는 청중이 궁금해하는 것을 질문으로 던지고, 클로징에선 청중이 얻어갈 것을 콕 집어 얘기해 줍니다. 장표 간 내용이 잘 연결되게 합니다.
오프닝/클로징에 청중이 원하는 것을 말한다.
목차에선 내용이 어떻게 전개되는지 소개하되, 너무 긴 설명은 하지 않는다.
장표 간 설명이 매끄럽게 연결되도록 한다.
이미지와 애니메이션을 잘 활용하여 지루하지 않게 한다.
하이라이트를 적극 활용하여 내용을 강조한다.
한 장표에 많은 내용을 담기보다, 내용을 세분화하여 여러 장표에 표현하는 것이 좋다.