Slide 1

Slide 1 text

리디의 개발 문화 적응기 - 커뮤니케이션 관점에서 - 오길원

Slide 2

Slide 2 text

리디에서 일한지 2년이 되었습니다

Slide 3

Slide 3 text

지난 시간을 돌이켜 보았습니다 나는 리디에서 누구인가? 나는 무엇에 에너지를 가장 많이 쏟았는가?

Slide 4

Slide 4 text

과일과 견과류 먹기

Slide 5

Slide 5 text

과일과 견과류 먹기 출근 전 운동 하기

Slide 6

Slide 6 text

과일과 견과류 먹기 출근 전 운동 하기 Tears Of Customers 발표하기

Slide 7

Slide 7 text

과일과 견과류 먹기 출근 전 운동 하기 Tears Of Customers 발표하기 동료들 더욱 알아가기

Slide 8

Slide 8 text

과일과 견과류 먹기 출근 전 운동 하기 Tears Of Customers 발표하기 동료들 더욱 알아가기 개발언어와 도구 적응하기

Slide 9

Slide 9 text

과일과 견과류 먹기 출근 전 운동 하기 Tears Of Customers 발표하기 동료들 더욱 알아가기 개발언어와 도구 적응하기 리디 개발문화 적응하기

Slide 10

Slide 10 text

좋은 개발문화 = 그것을 잘 가꾸어가는 사람들 = 좋은 회사 / 좋은 서비스

Slide 11

Slide 11 text

좋은 개발문화의 핵심은 그것을 만들어가는 사람간의 커뮤니케이션

Slide 12

Slide 12 text

리디의 독특한 개발문화에 적응할 때 가장 도전적이었던 점도 커뮤니케이션

Slide 13

Slide 13 text

이전 회사에서는... 커뮤니케이션 문제에 대해서 크게 고민해 본적이 없었습니다

Slide 14

Slide 14 text

Java 개발자로서 API Management에 종사하던 저는 솔루션 개발과 커스터마이징 업무가 주력인 수직적 조직에 익숙

Slide 15

Slide 15 text

수직적 조직의 특징 정형화된 언어/개발 가이드/기술셋 창의성보다는 기동성 지시형 커뮤니케이션 역할의 명확한 분리

Slide 16

Slide 16 text

그러나 리디에서는…? 시행 착오 4단계

Slide 17

Slide 17 text

1. 수습 기간 때 시행착오 수평조직 적응하기

Slide 18

Slide 18 text

점심시간에도 느껴지는 수평적 문화 지금은 아무렇지도 않은 1/n 카드! 수직에 익숙하던 수습 때는 충격!!

Slide 19

Slide 19 text

수직구조의 잔재 - 나이와 경험치에 대한 부담감

Slide 20

Slide 20 text

수직구조의 잔재 조급함 - 나이와 경험치에 대한 부담감 - 빨리 회사에 공헌하고 싶었던 과욕

Slide 21

Slide 21 text

수직구조의 잔재 조급함 과시 - 나이와 경험치에 대한 부담감 - 빨리 회사에 공헌하고 싶었던 과욕 - 당장 필요하지 않은데도 잘 아는 기술들 어필

Slide 22

Slide 22 text

불통 - 회의시간에 혼자만 다른 이야기

Slide 23

Slide 23 text

불통 충고 - 회의시간에 혼자만 다른 이야기 - 동료들의 솔직한 커뮤니케이션을 받아드림

Slide 24

Slide 24 text

불통 충고 회복 - 회의시간에 혼자만 다른 이야기 - 동료들의 솔직한 커뮤니케이션을 받아드림 - 수습기간에 필요한 기본에 충실

Slide 25

Slide 25 text

불통 충고 회복 축 수 습 기 간 통 과 - 회의시간에 혼자만 다른 이야기 - 동료들의 솔직한 커뮤니케이션을 받아드림 - 수습기간에 필요한 기본에 충실

Slide 26

Slide 26 text

2. 업무 습득시 시행착오 코드리뷰 적응하기

Slide 27

Slide 27 text

코드 리뷰 = 공동 책임 엄격한 코드 리뷰로 너덜너덜~

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

개발환경 학습 미흡? 가이드 숙지 X 언어에 익숙 X Java언어 사용 습관 O

Slide 31

Slide 31 text

미니 리디 만들기! 신규 입사자 과제로 연습용 서점 사이트 만들기 개발환경을 숙지할 충분한 시간 제공 리디의 리뷰 문화를 먼저 학습할 수 있는 기회

Slide 32

Slide 32 text

서비스코드 개발시작시 시행착오? “이거 이렇게 하시면 안되는데...” 문서만으로는 의도 전달이 어려움

Slide 33

Slide 33 text

다양한 해결방법! 간단한 문제라도 해결책은 많을 수 있음 먼저 동료와 의견을 충분히 교환

Slide 34

Slide 34 text

찜찜함 제거! 요구사항이 완벽히 이해되지 않으면 명확해질 때까지 끈질기게 확인

Slide 35

Slide 35 text

롤백 발생? 충분히 공유되었다고 생각했음에도 2주간 개발했던 내용이 롤백 리뷰어도 리뷰이도 당황!

Slide 36

Slide 36 text

단계별 리뷰! 개발부터가 아닌 설계부터 리뷰 리뷰어와 점진적인 합의 및 공유

Slide 37

Slide 37 text

여러가지 이유로 망설였지만... 사전에 충분히 많은 의견을 교환하는 것이 빠르게 리뷰를 통과하는 길

Slide 38

Slide 38 text

3. 신입사원과 일할 때 시행착오 배려하기

Slide 39

Slide 39 text

배경지식의 동기화 실수 발생시 “이분이 어떤걸 몰라서 발생했을까?” 신입사원이 업무를 모르는 건 당연하다 문서화가 안되있거나, 숙지가 덜 되었거나

Slide 40

Slide 40 text

너무 구체적이지 않은 안내 “XX함수를 고치세요” 보다 “XX클래스를 살펴보세요”

Slide 41

Slide 41 text

너무 구체적이지 않은 안내 대신 코딩만 할 사람이 아닌, 함께 일하는 팀원을 만드는 방법

Slide 42

Slide 42 text

실은 제가 수혜자였습니다... 그러한 배려를 받아 지금에 이르렀는데 자꾸 잊어버립니다 배경지식의 동기화 너무 구체적이지 않은 안내

Slide 43

Slide 43 text

4. 태스크 할당 시행착오 아사나 태스크 적응하기

Slide 44

Slide 44 text

플랫폼팀은 프로젝트별 담당자를 두어 교차 업무를 기본 원칙으로 합니다

Slide 45

Slide 45 text

교차업무? 특정 업무를 한 사람만 알고 있으면 팀의 리스크 업무별 최소 2인 이상이 알고 있어야 함

Slide 46

Slide 46 text

교차업무의 장점 2차 책임자를 지정 하여 리스크 분산

Slide 47

Slide 47 text

교차업무의 단점 본인의 업무뿐 아니라 다른 업무도 파악 개인마다 역량 차이로 인해 시간이 더 필요

Slide 48

Slide 48 text

처음에는 업무를 나눌 때 각자가 프로젝트 내에서 원하는 태스크를 선택 (물론 중요 업무는 할당)

Slide 49

Slide 49 text

목표, 시급성, 중요도를 명확히!

Slide 50

Slide 50 text

우선순위

Slide 51

Slide 51 text

우선순위

Slide 52

Slide 52 text

우선순위 기재 태스크에 시급성과 중요도 라벨을 추가하여, 우선순위를 알려줌으로써 자발적 참여를 유도

Slide 53

Slide 53 text

월간 개인목표 팀 목표내에서 개인별 월간 목표를 팀 미팅을 통해 결정

Slide 54

Slide 54 text

그래서 현재는...

Slide 55

Slide 55 text

그래서 현재는... - 시급성, 난이도, 중요도가 높은것이 우선

Slide 56

Slide 56 text

그래서 현재는... - 시급성, 난이도, 중요도가 높은것이 우선 - 담당 프로젝트

Slide 57

Slide 57 text

그래서 현재는... - 시급성, 난이도, 중요도가 높은것이 우선 - 담당 프로젝트 - 새로운 기술을 적용

Slide 58

Slide 58 text

그래서 현재는... - 시급성, 난이도, 중요도가 높은것이 우선 - 담당 프로젝트 - 새로운 기술을 적용 - 배우고 싶은 업무 관련

Slide 59

Slide 59 text

그래서 현재는... - 시급성, 난이도, 중요도가 높은것이 우선 - 담당 프로젝트 - 새로운 기술을 적용 - 배우고 싶은 업무 관련 - 레거시 개선

Slide 60

Slide 60 text

그래서 현재는... - 시급성, 난이도, 중요도가 높은것이 우선 - 담당 프로젝트 - 새로운 기술을 적용 - 배우고 싶은 업무 관련 - 레거시 개선 - 기타 등등

Slide 61

Slide 61 text

플랫폼팀 커뮤니케이션의 단점 (저의 경험을 바탕으로)

Slide 62

Slide 62 text

모든 사람의 의견에 귀 기울이고 많은 단계를 거쳐서 검증하므로 시간이 많이 걸립니다

Slide 63

Slide 63 text

충분히 주의하지 않으면 논리보다 특정 사람 혹은 사람과의 관계에 의해 결정 될 수 있습니다

Slide 64

Slide 64 text

플랫폼팀 커뮤니케이션의 장점 (저의 경험을 바탕으로)

Slide 65

Slide 65 text

의견을 자유롭게 낼 수 있어 미처 생각하지 못했던 개선점을 발견하거나 개발에 대한 창의적인 접근이 가능

Slide 66

Slide 66 text

모두 함께 책임의식과 의무를 나누어 지는 민주적인 문화

Slide 67

Slide 67 text

업무에 대한 다양한 성찰을 통해 개인이 성장을 할 수 있는 토대

Slide 68

Slide 68 text

여러 커뮤니케이션을 경험해보니, 궁극의 커뮤니케이션이란?

Slide 69

Slide 69 text

1. 고정적이 아니라 변동적 반드시는 없다

Slide 70

Slide 70 text

1. 고정적이 아니라 변동적 특정언어를 썼을 때의 고정관념

Slide 71

Slide 71 text

2. 의도를 충분히 생각보다 자주 발생하는 오해

Slide 72

Slide 72 text

2. 의도를 충분히 문제상황 공유없이 질문을 한다면?(XY 문제)

Slide 73

Slide 73 text

3. 주장에는 납득할 근거가 있어야 트렌드나 취향이라는 이유로 주장하는 것을 경계

Slide 74

Slide 74 text

3. 주장에는 납득할 근거가 있어야 “이쁜것 같습니다.” “어울리지 않나요?”

Slide 75

Slide 75 text

4. 목표에 명확히 집중 대부분의 의견 충돌은 숨겨져있는 진짜 목표를 잊고 있기 때문

Slide 76

Slide 76 text

4. 목표에 명확히 집중 “CP사이트 리뉴얼 방법”의 충돌은 “CP사이트를 통한 리디의 목적”을 정의해야 함

Slide 77

Slide 77 text

5. 틀릴 수 있음을 받아들임 성인이라고 해서 모두 완성되어있는 것은 아니다

Slide 78

Slide 78 text

5. 틀릴 수 있음을 받아들임 틀린걸 받아들이는 것이 성장을 위한 최고의 방법

Slide 79

Slide 79 text

6. 의견 교환은 예의있게 개발 커뮤니케이션은 사람간 커뮤니케이션의 하위 집합이다

Slide 80

Slide 80 text

6. 의견 교환은 예의있게 백종원 왈 : “물론 아시겠지만”

Slide 81

Slide 81 text

마무리

Slide 82

Slide 82 text

리디의 수평적 구조의 장점을 잘 운용하기 위해서는 성숙한 소통과 문화가 필수

Slide 83

Slide 83 text

일의 진취적인 진행과 성공적인 완성을 위해, 때에 따라서는 리더의 균형잡힌 판단과 실행력도 필요

Slide 84

Slide 84 text

저의 작은 경험을 나누었지만, 이것을 통해 자신의 커뮤니케이션을 돌아보고 보다 성숙한 개발문화를 만들어 나가는데 도움이 되었으면 좋겠습니다

Slide 85

Slide 85 text

RIDI Style Guide https://github.com/ridi/style-guide 규칙을 정하는 규칙 슬랙 사용 규칙 UI 텍스트 작성 가이드 코드리뷰 규칙

Slide 86

Slide 86 text