2015년 7월 1일 수요일

Deview 2013 - 구글 개발 문화에 대해 듣고 왔습니다 ( @hbright7 )

출처: Quicket Engineering

Deview 2013 - 구글 개발 문화에 대해 듣고 왔습니다


번개장터의 @hbright7 입니다. 어제는 Deview 2013 에서 구글 개발자로 계신 분의 이야기를 듣고 왔는데 혼자 알고있기에는 아까워서 여기에 공유합니다.

코드 리뷰


  • 커버리지가 낮으면 커밋할 수도 없다.
  • 리뷰에서 팀원간에 의견 충돌 발생시에 매니저가 결정내린다.
  • 유닛 테스트가 충분하지 않은 경우 커밋이 불가능.
  • Technical Dept - 꼼수를 쓰면 결국 더 큰 대가로 돌아오게 된다.
  • 코딩 스타일이 맞지 않아도 시스템적으로 커밋이 불가능.

소스코드 관리


  • 구글 모든 제품의 소스코드를 저장소 딱 하나로 관리한다 (그렇게 하면 비효적이지 않냐고 물어보았으나 왜 안되냐고 반문 하셨음)
  • 소스코드 관리도구는 Perforce 라는 것을 사용한다. 그러나 개인적으로는 Git 을 사용하고 Git -> Perforce 변환하여 올린다.
  • 성능보다 코드의 읽기 쉬움이 중요하다. 코드를 최적화 하여 서버 비용을 100만원 아꼈다고 할지라도 변경된 코드가 읽기 어려워져서 개발자 인건비 300만원을 소모한다면 커밋이 안된다.
  • 소스코드를 청소하는 팀이 있다. 인수한 회사의 소스코드도 모두 컨벤션에 맞추도록 변경한다.
  • 구글은 개발 문서 거의 없다. 소스코드에 개발 문서 거의 담는다. 어떤 코드는 처음 300줄이 문서다. 클래스에 입력과 출력에 대해 자세히 쓴다.

문화


  • 금요일 저녁마다 구글 사장이 반바지에 맥주 마시면서 전체 직원들과 질문 답변 시간을 갖는다.
  • 팀장이 답을 가르쳐 주지 않고 질문을 한다.
  • 결정은 데이터에 기반해서 한다.
  • 구글 모 운영팀의 목표 : 우리팀이 존재하는지 모르게 하는 것. 잘 동작하는 것은 있는듯 없는듯 알 수 없다. (도덕경에서 말하는 최고의 경지가 아닐런지 ㅎㅎ)
  • 구글은 18개월 마다 팀을 옮기는 것을 추천한다. 하지만 옮겨도 좋을 정도로 인수인계를 해줘야 한다.
  • 구글은 내부 개발팀만 1000명이 넘는다. 
  • 창조성은 제한된 환경에서 일어난다 - MS 오피스 안쓰고 구글 독스 쓰면 불편하지 않냐는 질문에…

댓글 없음:

댓글 쓰기