[OKKYCON] 협업의 기술 : 2021

2021.03.06

코로나로 인해 재택근무가 늘어나면서 협업 소통 능력이 중요해지고 있습니다.

1. 키노트 : 한빛미디어 의장 - 박태웅

⇒ 모든 회사의 컨텍스트를 일원화하고 공유하는 것이 회사 내의 커뮤니케이션 문제를 해소하는 방법이 된다.

  • 나는 누구인가 커뮤니케이션은 무엇인가? 커뮤니케이션은 나를 통해서 시작된다. 우리는 내가 누군지 정확하게 알지 못하고, 말과 글은 모든 메세지를 명확하게 담아내지 못한다. 우리는 모두 부족한 커뮤니케이션 능력을 가지고 있고 그럼에도 불구하고 다른 사람과 커뮤니케이션을 통해 일을 해야한다. 오늘은 이 상황에서 발생하는 문제들을 어떻게 해결해야하느냐에 대해 말하는 시간이 될 것이다.
  • 의도와 행동 나의 행동은 의도로 판단하고 남의 행동은 행동으로 판단한다. 이 기준을 공평하게 나누면 커뮤니케이션이 편해진다.
  • 짐작과 사실 짐작과 사실을 구분해야한다. 짐작은 내가 정의하는 것이고, 사실과 짐작을 구분하지 못할 때 오해가 발생한다.
  • 무엇이 아닌 왜를 전달하는 것이 더 나은 커뮤니케이션을 만든다. 텍스트가 아니라 컨텍스트를 전달해야 한다.
  • 모든 컨텐츠를 위키로 모으는 이유 메세지를 파편화 시키면 맥락을 알 수 없다. 지라를 도입하는 이유도 채널을 단일화시켜 누구든지 맥락을 파악할 수 있도록 하기 위함이다. 채널 단일화는 탑다운 형식으로 진행되어야 가능하다.
  • 보고 기간을 줄여야 사고가 줄어든다. 짧은 기간 단위의 보고를 해야 플랜 B를 준비할 수 있다.

2. 네오위즈 애자일 코치 - 홍영기

우리는 왜 함께 일을 하는가? 혼자서를 해결할 수 없는 일들을 함께 해결하기 위해 일한다. ⇒ 협력의 조건 만들기
협력 : 특정한 목적을 달성하기 위해 서로 힘을 합하여 도움

  • 온전한 협력을 만들기 위한 조건의 과정

    • 공통의 목적
    • 목적을 달성하기 위한 체계(전략적 협동, 협업)
  • 협력을 선택하면 더 좋은 상황들

    • 일이 어려울 때보다 복잡할 때
    • 작업 절차 공정을 명확하게 나누기 어려울 때
    • 불확실성이 높을 때
  • 협력의 환경 조성 : 심리적 안전 구축하는 것

    • 협력은 지시할 수 없지만, 환경을 조성할 수는 있다.
    • 심리적 안전(비폭력 대화, 퍼실리데이션) ⇒ 투명성 (Jira , daliy sync up) <=> 피드백 ⇒ 일의 의미(일의 의미와 가치를 이해하는 것)
    • 사례 ) Team Competency Matrix
    • 팀이 필요로하는 역량을 모델링
    • 모든 것은 다 연결되어 있다.
    • 한번 무너진 신뢰는 다시 복구하는데 큰 비용이 든다.
    • 시스템을 구축하자. ( 사람에 의존하면 안된다. 시스템을 만들고 관리하고 훈련하고 코칭하는 사람이 필요하다.)

3. 우아한형제들 - 박재성 교육이사

⇒ 현재보다 조금씩 나아지고 있다는 방향성이 중요하다!!
⇒ 함께 성장하고 협업하는 문화를 만들어가는 과정 : 리더의 인내심과 용기가 필요

  • 새로운 문화를 만들면서 초기 학습비용 등으로 인해 생산성이 저하된다.

  • 안정화 하는데 최소 1년 이상의 시간을 투자해야한다.

  • 개발 문화는 어떻게 만들 것인가?

    • 실패 경험이 많은 개발자가 리더가 되어
  • 모두의 이상향 : 지식을 공유하고 같이 성장하면서 유지보수하기 좋은 코드를 구현하는 문화

    • HOW? → 온라인 코드 리뷰, TDD
      • ⇒ 아웃사이드 인 접근방식 === 필패의 지름길
    • 리더는 문화의 방향성만 정하고 구체적인 개발 프로세스는 최대한 뒤로 미룬다.
    • 면담&회고 ⇒ 선택 ⇒ 한가지에 집중 ⇒ 변화
  • 문화를 만들기 전에 생각해 볼 점

    • 사람은 기본적으로 변화를 거부하는 성향을 가지고 있다.
    • 팀은 변화를 거부하는 성향이 더 강하다.
    • 대부분의 사람들은 병활에 실패한 경험을 가지고 있다.
    • 구글 내부에서 성공한 팀의 특성 중 첫 번째로 소개된 것은 심리적 안정감이다. 심리적 안정감 : 어떤 의견을 냈을 때, 보복 당하거나 불합리함을 당하지 않을 것이라는 안정감
    • 인사이드 아웃 방식을 선택하면 성공을 높일 수 있다.
    • 합리적인 것을 선호하는 개발자라고 하더라도 사람이기 때문에 감정선을 건드리는 것이 중요하다.
    • 작은 성공을 맛보게 하는 것이 중요하다.

4. SAP- 김영욱 UX/PM

⇒ 당신에게 협업의 대상은 무엇입니까? ⇒ 생각과 협업하기 위해 기본 원칙을 얼마나 잘 지키고 있는가?

  • 협업의 대상을 명확하게 해야 커뮤니케이션 성공이 올라간다.
  • 19세기 현대의학의 2가지 혁명 : 마취법 & 소독법
    • 패스트아이디어 (마취법) : 이해 당사자의 편의성, 가시적으로 즉각적인 효과, 경제적 인센티브, 기술적 복잡성
    • 슬로우 아이디어 (소독법) : 타인 편의성, 근본적이고 장기적인 효과, 사회적 인센티브, 절차의 귀찮음
  • 기본원칙을 잘 지키는 것이 시작이다.
    • 형식에 맞는 이메일 쓰기, Wiki에 정보 모으기, 미팅 시간 지키기, 회의에 집중하기 등등
  • 소외된 고객과의 협업 고객에 얼마나 충실한가? 고객을 선택적으로 배제하고 있지는 않는가? 소외된 고객까지 고려한 개발을 해야한다. 포용적 사고, 행동을 해야한다.
  • 자율 머신과의 협업
  • 미래고객과의 대화 준비

5. 라인플러스 - 김영재 Fellow

⇒ ++++ 자동화로 프로덕트에 집중하는 힘!!!을 만든다. +++++

  • 이슈 트래커는 전사적으로 사용해야 한다.
  • 개발자가 이슈트래커를 잘 쓴다는 기준
  • 절대 상태를 손으로 바꾸지 말자!
  • 핵심 기능 : 커밋메세지로 상태 변화가 가능한 것
  • DEMO
    • jetBrains Task & Context
    • IDE와 status의 연계는 중요하다.
  • TDD ⇒ 커밋메세지 주도 개발 : 이슈 생성 ⇒ 테스트&코드 ⇒ 커밋 ⇒ 푸시 ⇒ 릴리즈
  • 이슈를 많이 만들고, 많이 닫자!
  • 이슈 처리가 곧 개발 속도감을 더해준다.
  • 개발자에게는 커밋 단위로 상상하는 것이 가장 좋음
  • 이슈를 빠르게 만들고 싶은 욕구가 자연스럽게 나타남
  • CI/CD Builder 목표 : 원숭이도 릴리즈 할 수 있게, 아무때나 릴리즈해도 깨지지 않게 TIP : 자동 트리커 빌드는 제목을 재시로 시작하면 혼란이 적다, Prompt를 띄워서 실수를 줄인다.
  • 버전 형식 : ⇒ head(수동).yearweek(자동).build(자동)
  • 모든 숫자는 의미가 있다.
  • 빌드서버가 버전을 만들어주면, 같은 버전에 같은 바이너리를 확신할 수 있다.
  • 빌드서버에서만 빌드만 하면 버전 관리는 전혀 신경쓰지 않아도 된다.
  • API 자동화!!!
    • 조직이 커질수록 자동화에 제약이 생긴다.
    • API를 살펴보면 자동화에 답이 있다.
    • 자동화 스크립트 TIP
      • 기능이 곧 파일명
      • 여러개를 실행하더라도 작은 기능단위로
      • config 가능성을 폭넓게
      • 팀, 조직, 회사 밖에서도 쓸 수 있게한다.
    • 자동화 스크립트의 수명을 길게 만드려면?
      • 라이브러리 사용 최소화
      • 하나의 repo에 모아놓는다. : 빌더 서버에 공용으로 참조하기에 좋음
      • 개인 repo가 아니라 팀 repo에 쌓는다.
      • 거의 동일한 형식으로 작성 : 형식을 개선하면 과거의 모든 것도 개선하며 꾸준히 유지보수
      • 예시 : 기획자와 일하기
        • 지금 릴리즈한 앱은 내가 말한게 적용된 버전인가
        • 이슈의 상태와 개발의 상태가 최대한 일치하도록!
        • 풍부하고 친절한 디버그 모드
  • 방법론 : 질문발견 (2회 이상)⇒ 질문을 없애버리자 ⇒ 프로세스 관찰 ⇒ 프로세스 개선 ⇒ 문서화
  • 프로세스 개선 기준 : 계속 나오는 질문, 단순 반복 작업, 실수를 줄이는 것, 권한을 넓히는 것, 시각적으로 표현할 수 있도록 ⇒ 문제에 적중하는 시스템이 없다면, 만들자! 펌웨어 관리 시스템
  • 문서화 ⇒ Wiki
  • 수명이 긴 글, Reference가 충실한 글, 수정 가능성을 열어둔 글, 일관된 구성
  • 잘 만든 버저닝 규칙 ⇒ 잘 훈련된 이슈 관리 ⇒ 쾌적환 빌드, 배포 ⇒ 릴리즈노트, 리포트 자동화 ⇒ 고도화된 도구와 시스템 ⇒ 프로젝트 템플릿 ⇒ 높은 집중력

6. 번개장터 - 이동주CTO

조직 구성원 수의 성장으로 인한 오버헤드 증가

  • 협업 : 함께 목표를 달성하는 과정
  • 환경의 변화에 맞춰 꾸준히 진화하여 조직이 커져도 효과적인 방법
  • 협업을 위해 사용하는 도구들 : 위키를 통해 정보공유와 공동작업을 쉽게 => 협업 프로세스가 잡히고, 전반적인 업무 생산성이 향상됨
  • 협업의 시작은 목표에 대한 공감 : OKR & CELL
    • 제품영역, 개발조직 2가지 관점
    • 목표와 핵심 결과가 너무 많으면 안된다.
    • 임직원 수에 비해 CELL이 너무 많았다.
  • 번개장터의 결론
    • 공동의 목표를 인식하는 것이 협업의 시작
    • 정량적 성과로 업무의 마무리를 명확하게 함
    • CELL 기반의 조직 운영 및 여러 목표 동시에 추구

7. 쏘카 - 김상우 데이터 그룹 그룹장

⇒ 7년간 방치되어 있던 가격 시스템 개발 이야기

  • MSA 로 변환 :PHP >> python

8. 당근마켓 - 정창훈 CTO

⇒ 기업의 생애주기에 따른 협업 방식의 차이

  • 공동창업 3명 ⇒ 비전를 맞춰가는 과정 ⇒ 다같이 회의 &운영 ⇒ 협업에 대한 고민을 할 필요가 X
  • 당근의 히스토리 : 하루에 배포 몇번 >> 전문영역이 생기는 시기 >> 140명 >> 사업 + 플랫폼
  • 개발문화는 어떤가요?
    • 하고 싶은 것들을 할 수 있는 환경을 만들어주는게 중요하다,
    • 강제하는 것이 없는 것이 문화
  • 회사를 만들어가는건 결국 사람 : 사람이 제도를 만들어갑니당
© Copyright 2020 marveloper All rights reserved.