SlideShare una empresa de Scribd logo
1 de 8
Smell
like sin spirits
한셀팀 l 2016.08.11
1) 코드리뷰 하자
2) 왜?
3) 어떻게?
4) 그래 하자!
1.코드리뷰의목적과방법1차
2.코드리뷰이제이렇게하자!(발전한다면?)
3.지나고보니...
3
1.코드리뷰 하자
실제 테스트가 아닌
코드만을 보고 생길 수 있는 결함이나
더 좋은 방향의 코드를 제시한다던지
코드속에 언젠가 들어가게될 실수를 찾거나
QA 나 실제 Filed 에서 앞으로 발생할 문제를 미연에 방지
여러 사람들의 코드를 보고 배워 나가는 과정
실제 작업은 함께 하지 않더라도 작업 이후 짝코딩이 갖던 이점을 나눠 갖을 수 있음
일상적인 해오던 업무 이외로 추가 로 주어지는 Job 이 아닌 나중에 해야될 일을 미리 하는것 뿐
4
2. 왜?
코드의 냄새를 찾고 제거 하거나 발전하자
타인은 내가 생각하지 못한걸 생각할 수있다
내가 생각하지 못한걸 타인의 코드를 보고 배울 수 있다
책임감 과는 별개의 문제
-내 코드는 똥이다
자신의 코드를 믿지 말자
타인의 코드도 믿지 말자
똥이라고 생각하면 편하다
-일하기도 바쁜데?
어차피 해야될일 미리 하는것 뿐
코드 검증이나 수정을 직접 하진 않는다
review 는 되도록 아주 짧게 commit 당 5-10분
5
2-1.어떻게?
논에서 피뽑는 버그잡기가 아닌
다함께 땅을 다지는 작업
6
2-2.어떻게?
-시니어가 주니어의 코드를 돌봐준다?
하향식 코드리뷰 는 모두에게 도움되진 않는다
일방적인 시니어의 성향을 강요 / 시니어->주니어 로의 일방적인 benefit
! 시니어도 주니어에게 코드 코칭을 받을 수 있다
누구나 실수하고 새로운것은 시니어보다 주니어로부터 나올 수 있다
*시니어 주니어 구분없이 코드를 리뷰
-코드리뷰는 그렇게 하는게 아니던데?
commit 을 merge 하거나 시스템에서 컨벤션을 맞춰 줄 수도 있으며
github 의 commit 에 reply 를 달수도 있고
여러 utility 를 통해 review 된 코드만 실제 branch 에 merge 되도록 하여 해당 branch 의 내용을
qa qc 가 확인 하도록 하는 방법 등 이 보편적
7
3. 그래하자!
-그래서 지금 당장?
1인이 같은 업무를 하는 고정 멤버를 포함한 2-3인의 코드를 보도록 단위 그룹을 구성
Weekly/Momthly 간격을 두어서 그룹을 랜덤 리매칭 (고정 멤버를 제외한 rotation)
그룹별로 문제발견시 서로 간단한 이야기를 전달 가급적 online 을 지향
필요시 미팅은 매우 짧은 시간 간단하게
그룹별 주 단위 팀원 모두가 공유할만한 내용은 팀원모두에게 Broadcasting On/Offline
-변화는 원래 쉽지 않다
당장 1달 안에 멈추게 되더라도 시도
리뷰는 과제가 아니라 문화라니 차차 점진적으로 차차 당연하게 받아들이도록
인간은 불편 하면 도구를 사용한다 불편한 부분은 차차 이용하도록 하자
하루이틀 해보고 아니다 싶어 그만둘 만한 문제는 아님
-그래도 난 하기싫어
Q/A

Más contenido relacionado

La actualidad más candente

Clean code chapter1
Clean code chapter1Clean code chapter1
Clean code chapter1ukjinkwoun
 
스타트업 인턴 개발자 3달간의 고군분투기 김은향
스타트업 인턴 개발자 3달간의 고군분투기 김은향스타트업 인턴 개발자 3달간의 고군분투기 김은향
스타트업 인턴 개발자 3달간의 고군분투기 김은향Eunhyang Kim
 
[부스트캠퍼세미나]조성동_야_너두_TDD_할_수_있어
[부스트캠퍼세미나]조성동_야_너두_TDD_할_수_있어[부스트캠퍼세미나]조성동_야_너두_TDD_할_수_있어
[부스트캠퍼세미나]조성동_야_너두_TDD_할_수_있어CONNECT FOUNDATION
 
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영ZIGZAG
 
코드 리뷰 시스템 소개
코드 리뷰 시스템 소개코드 리뷰 시스템 소개
코드 리뷰 시스템 소개Young-Ho Cha
 
새해 일어난 일
새해 일어난 일새해 일어난 일
새해 일어난 일Eunhyang Kim
 
C++ 코드 품질 관리 비법
C++ 코드 품질 관리 비법C++ 코드 품질 관리 비법
C++ 코드 품질 관리 비법선협 이
 
스마일게이트 서버개발캠프 - 5vengers
스마일게이트 서버개발캠프 - 5vengers 스마일게이트 서버개발캠프 - 5vengers
스마일게이트 서버개발캠프 - 5vengers ServerDevCamp
 
프로젝트 관리 및 지켜야 할 사항들
프로젝트 관리 및 지켜야 할 사항들프로젝트 관리 및 지켜야 할 사항들
프로젝트 관리 및 지켜야 할 사항들Lee Geonhee
 
개발하긴 싫지만 코딩은 하고싶어
개발하긴 싫지만 코딩은 하고싶어개발하긴 싫지만 코딩은 하고싶어
개발하긴 싫지만 코딩은 하고싶어Eunhyang Kim
 
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기Daniel Juyung Seo
 
엔지니어의 학습, 그리고 테스트 코드
엔지니어의 학습, 그리고 테스트 코드엔지니어의 학습, 그리고 테스트 코드
엔지니어의 학습, 그리고 테스트 코드Mijeong Park
 
오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰Daniel Juyung Seo
 
TDD: Test Driven Development 첫번째 이야기
TDD: Test Driven Development 첫번째 이야기TDD: Test Driven Development 첫번째 이야기
TDD: Test Driven Development 첫번째 이야기Ji Heon Kim
 
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발Daniel Juyung Seo
 

La actualidad más candente (19)

Technicalinterview
TechnicalinterviewTechnicalinterview
Technicalinterview
 
Clean code chapter1
Clean code chapter1Clean code chapter1
Clean code chapter1
 
스타트업 인턴 개발자 3달간의 고군분투기 김은향
스타트업 인턴 개발자 3달간의 고군분투기 김은향스타트업 인턴 개발자 3달간의 고군분투기 김은향
스타트업 인턴 개발자 3달간의 고군분투기 김은향
 
[부스트캠퍼세미나]조성동_야_너두_TDD_할_수_있어
[부스트캠퍼세미나]조성동_야_너두_TDD_할_수_있어[부스트캠퍼세미나]조성동_야_너두_TDD_할_수_있어
[부스트캠퍼세미나]조성동_야_너두_TDD_할_수_있어
 
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영
WTM2018 그것이 알고싶다 어쩌다 10년... 지그재그 손연미, 백서영
 
코드 리뷰 시스템 소개
코드 리뷰 시스템 소개코드 리뷰 시스템 소개
코드 리뷰 시스템 소개
 
Tdd bdd
Tdd bddTdd bdd
Tdd bdd
 
새해 일어난 일
새해 일어난 일새해 일어난 일
새해 일어난 일
 
Tdd ver.2
Tdd ver.2Tdd ver.2
Tdd ver.2
 
C++ 코드 품질 관리 비법
C++ 코드 품질 관리 비법C++ 코드 품질 관리 비법
C++ 코드 품질 관리 비법
 
스마일게이트 서버개발캠프 - 5vengers
스마일게이트 서버개발캠프 - 5vengers 스마일게이트 서버개발캠프 - 5vengers
스마일게이트 서버개발캠프 - 5vengers
 
프로젝트 관리 및 지켜야 할 사항들
프로젝트 관리 및 지켜야 할 사항들프로젝트 관리 및 지켜야 할 사항들
프로젝트 관리 및 지켜야 할 사항들
 
How to study
How to studyHow to study
How to study
 
개발하긴 싫지만 코딩은 하고싶어
개발하긴 싫지만 코딩은 하고싶어개발하긴 싫지만 코딩은 하고싶어
개발하긴 싫지만 코딩은 하고싶어
 
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
 
엔지니어의 학습, 그리고 테스트 코드
엔지니어의 학습, 그리고 테스트 코드엔지니어의 학습, 그리고 테스트 코드
엔지니어의 학습, 그리고 테스트 코드
 
오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰
 
TDD: Test Driven Development 첫번째 이야기
TDD: Test Driven Development 첫번째 이야기TDD: Test Driven Development 첫번째 이야기
TDD: Test Driven Development 첫번째 이야기
 
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
 

Similar a smell like sin spirits(codereview mindset)

Code Review - DevOn2013
Code Review - DevOn2013Code Review - DevOn2013
Code Review - DevOn2013호정 이
 
SWDeveloprStory201601
SWDeveloprStory201601SWDeveloprStory201601
SWDeveloprStory201601Suho Kwon
 
커뮤니티와 함께한 예비개발자 성장기- 조성수님
커뮤니티와 함께한 예비개발자 성장기- 조성수님커뮤니티와 함께한 예비개발자 성장기- 조성수님
커뮤니티와 함께한 예비개발자 성장기- 조성수님NAVER D2
 
초보개발자의 TDD 체험기
초보개발자의 TDD 체험기초보개발자의 TDD 체험기
초보개발자의 TDD 체험기Sehun Kim
 
홍성우, 게임 프로그래머는 어떻게 가르치나요?, NDC2018
홍성우, 게임 프로그래머는 어떻게 가르치나요?, NDC2018홍성우, 게임 프로그래머는 어떻게 가르치나요?, NDC2018
홍성우, 게임 프로그래머는 어떻게 가르치나요?, NDC2018devCAT Studio, NEXON
 
코드리뷰 공감하기
코드리뷰 공감하기코드리뷰 공감하기
코드리뷰 공감하기Sungmin Oh
 
애자일 도입과 사례 공유
애자일 도입과 사례 공유애자일 도입과 사례 공유
애자일 도입과 사례 공유agilekorea
 
[135] 우리 팀에서도 코드리뷰를 할 수 있을까 안오균
[135] 우리 팀에서도 코드리뷰를 할 수 있을까 안오균[135] 우리 팀에서도 코드리뷰를 할 수 있을까 안오균
[135] 우리 팀에서도 코드리뷰를 할 수 있을까 안오균NAVER D2
 
2022 01-okky-코드리뷰
2022 01-okky-코드리뷰2022 01-okky-코드리뷰
2022 01-okky-코드리뷰Myeongseok Baek
 
131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원NAVER D2
 
SWDeveloperStory201502
SWDeveloperStory201502SWDeveloperStory201502
SWDeveloperStory201502Suho Kwon
 
카카오스토리 웹팀의 코드리뷰 경험
카카오스토리 웹팀의 코드리뷰 경험카카오스토리 웹팀의 코드리뷰 경험
카카오스토리 웹팀의 코드리뷰 경험Ohgyun Ahn
 
김성훈 - 뛰어난 디버거가 되는 방법
김성훈 - 뛰어난 디버거가 되는 방법김성훈 - 뛰어난 디버거가 되는 방법
김성훈 - 뛰어난 디버거가 되는 방법성훈 김
 
NDC2019 - 게임플레이 프로그래머의 역할
NDC2019 - 게임플레이 프로그래머의 역할NDC2019 - 게임플레이 프로그래머의 역할
NDC2019 - 게임플레이 프로그래머의 역할Hoyoung Choi
 
애자일 프랙티스
애자일 프랙티스애자일 프랙티스
애자일 프랙티스한 경만
 
[FEConf 2018] Front-End 프로젝트의 Test code 작성경험기
[FEConf 2018] Front-End 프로젝트의 Test code 작성경험기[FEConf 2018] Front-End 프로젝트의 Test code 작성경험기
[FEConf 2018] Front-End 프로젝트의 Test code 작성경험기Ahreum Kim
 
[NDC18] 나는 테스트 정책대로 살기로 했다.(코멘터리)
[NDC18] 나는 테스트 정책대로 살기로 했다.(코멘터리)[NDC18] 나는 테스트 정책대로 살기로 했다.(코멘터리)
[NDC18] 나는 테스트 정책대로 살기로 했다.(코멘터리)Wooram Hwang
 
깨끗한 코드 (클린 코드, Clean Code)
깨끗한 코드 (클린 코드, Clean Code)깨끗한 코드 (클린 코드, Clean Code)
깨끗한 코드 (클린 코드, Clean Code)Jay Park
 

Similar a smell like sin spirits(codereview mindset) (20)

Code Review - DevOn2013
Code Review - DevOn2013Code Review - DevOn2013
Code Review - DevOn2013
 
SWDeveloprStory201601
SWDeveloprStory201601SWDeveloprStory201601
SWDeveloprStory201601
 
커뮤니티와 함께한 예비개발자 성장기- 조성수님
커뮤니티와 함께한 예비개발자 성장기- 조성수님커뮤니티와 함께한 예비개발자 성장기- 조성수님
커뮤니티와 함께한 예비개발자 성장기- 조성수님
 
초보개발자의 TDD 체험기
초보개발자의 TDD 체험기초보개발자의 TDD 체험기
초보개발자의 TDD 체험기
 
홍성우, 게임 프로그래머는 어떻게 가르치나요?, NDC2018
홍성우, 게임 프로그래머는 어떻게 가르치나요?, NDC2018홍성우, 게임 프로그래머는 어떻게 가르치나요?, NDC2018
홍성우, 게임 프로그래머는 어떻게 가르치나요?, NDC2018
 
코드리뷰 공감하기
코드리뷰 공감하기코드리뷰 공감하기
코드리뷰 공감하기
 
2019 11-code review
2019 11-code review2019 11-code review
2019 11-code review
 
애자일 도입과 사례 공유
애자일 도입과 사례 공유애자일 도입과 사례 공유
애자일 도입과 사례 공유
 
[135] 우리 팀에서도 코드리뷰를 할 수 있을까 안오균
[135] 우리 팀에서도 코드리뷰를 할 수 있을까 안오균[135] 우리 팀에서도 코드리뷰를 할 수 있을까 안오균
[135] 우리 팀에서도 코드리뷰를 할 수 있을까 안오균
 
2022 01-okky-코드리뷰
2022 01-okky-코드리뷰2022 01-okky-코드리뷰
2022 01-okky-코드리뷰
 
131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원131 deview 2013 yobi-채수원
131 deview 2013 yobi-채수원
 
SWDeveloperStory201502
SWDeveloperStory201502SWDeveloperStory201502
SWDeveloperStory201502
 
카카오스토리 웹팀의 코드리뷰 경험
카카오스토리 웹팀의 코드리뷰 경험카카오스토리 웹팀의 코드리뷰 경험
카카오스토리 웹팀의 코드리뷰 경험
 
김성훈 - 뛰어난 디버거가 되는 방법
김성훈 - 뛰어난 디버거가 되는 방법김성훈 - 뛰어난 디버거가 되는 방법
김성훈 - 뛰어난 디버거가 되는 방법
 
NDC2019 - 게임플레이 프로그래머의 역할
NDC2019 - 게임플레이 프로그래머의 역할NDC2019 - 게임플레이 프로그래머의 역할
NDC2019 - 게임플레이 프로그래머의 역할
 
애자일프랙티스
애자일프랙티스애자일프랙티스
애자일프랙티스
 
애자일 프랙티스
애자일 프랙티스애자일 프랙티스
애자일 프랙티스
 
[FEConf 2018] Front-End 프로젝트의 Test code 작성경험기
[FEConf 2018] Front-End 프로젝트의 Test code 작성경험기[FEConf 2018] Front-End 프로젝트의 Test code 작성경험기
[FEConf 2018] Front-End 프로젝트의 Test code 작성경험기
 
[NDC18] 나는 테스트 정책대로 살기로 했다.(코멘터리)
[NDC18] 나는 테스트 정책대로 살기로 했다.(코멘터리)[NDC18] 나는 테스트 정책대로 살기로 했다.(코멘터리)
[NDC18] 나는 테스트 정책대로 살기로 했다.(코멘터리)
 
깨끗한 코드 (클린 코드, Clean Code)
깨끗한 코드 (클린 코드, Clean Code)깨끗한 코드 (클린 코드, Clean Code)
깨끗한 코드 (클린 코드, Clean Code)
 

smell like sin spirits(codereview mindset)

  • 2. 1) 코드리뷰 하자 2) 왜? 3) 어떻게? 4) 그래 하자! 1.코드리뷰의목적과방법1차 2.코드리뷰이제이렇게하자!(발전한다면?) 3.지나고보니...
  • 3. 3 1.코드리뷰 하자 실제 테스트가 아닌 코드만을 보고 생길 수 있는 결함이나 더 좋은 방향의 코드를 제시한다던지 코드속에 언젠가 들어가게될 실수를 찾거나 QA 나 실제 Filed 에서 앞으로 발생할 문제를 미연에 방지 여러 사람들의 코드를 보고 배워 나가는 과정 실제 작업은 함께 하지 않더라도 작업 이후 짝코딩이 갖던 이점을 나눠 갖을 수 있음 일상적인 해오던 업무 이외로 추가 로 주어지는 Job 이 아닌 나중에 해야될 일을 미리 하는것 뿐
  • 4. 4 2. 왜? 코드의 냄새를 찾고 제거 하거나 발전하자 타인은 내가 생각하지 못한걸 생각할 수있다 내가 생각하지 못한걸 타인의 코드를 보고 배울 수 있다 책임감 과는 별개의 문제 -내 코드는 똥이다 자신의 코드를 믿지 말자 타인의 코드도 믿지 말자 똥이라고 생각하면 편하다
  • 5. -일하기도 바쁜데? 어차피 해야될일 미리 하는것 뿐 코드 검증이나 수정을 직접 하진 않는다 review 는 되도록 아주 짧게 commit 당 5-10분 5 2-1.어떻게? 논에서 피뽑는 버그잡기가 아닌 다함께 땅을 다지는 작업
  • 6. 6 2-2.어떻게? -시니어가 주니어의 코드를 돌봐준다? 하향식 코드리뷰 는 모두에게 도움되진 않는다 일방적인 시니어의 성향을 강요 / 시니어->주니어 로의 일방적인 benefit ! 시니어도 주니어에게 코드 코칭을 받을 수 있다 누구나 실수하고 새로운것은 시니어보다 주니어로부터 나올 수 있다 *시니어 주니어 구분없이 코드를 리뷰 -코드리뷰는 그렇게 하는게 아니던데? commit 을 merge 하거나 시스템에서 컨벤션을 맞춰 줄 수도 있으며 github 의 commit 에 reply 를 달수도 있고 여러 utility 를 통해 review 된 코드만 실제 branch 에 merge 되도록 하여 해당 branch 의 내용을 qa qc 가 확인 하도록 하는 방법 등 이 보편적
  • 7. 7 3. 그래하자! -그래서 지금 당장? 1인이 같은 업무를 하는 고정 멤버를 포함한 2-3인의 코드를 보도록 단위 그룹을 구성 Weekly/Momthly 간격을 두어서 그룹을 랜덤 리매칭 (고정 멤버를 제외한 rotation) 그룹별로 문제발견시 서로 간단한 이야기를 전달 가급적 online 을 지향 필요시 미팅은 매우 짧은 시간 간단하게 그룹별 주 단위 팀원 모두가 공유할만한 내용은 팀원모두에게 Broadcasting On/Offline -변화는 원래 쉽지 않다 당장 1달 안에 멈추게 되더라도 시도 리뷰는 과제가 아니라 문화라니 차차 점진적으로 차차 당연하게 받아들이도록 인간은 불편 하면 도구를 사용한다 불편한 부분은 차차 이용하도록 하자 하루이틀 해보고 아니다 싶어 그만둘 만한 문제는 아님 -그래도 난 하기싫어
  • 8. Q/A