[도서리뷰] 한빛미디어 '구글 엔지니어는 이렇게 일한다(Software Engineering at Google)'

software-engineering-at-google

이 포스트는 한빛미디어에서 출간한 '구글 엔지니어는 이렇게 일한다(Software Engineering at Google)'을 읽고 작성한 서평입니다.

INTRO

IT업계에서 근무하는 사람이라면 저와 같이 Google에 대한 막연한 기대감 같은 것이 있을거라 생각합니다. 개인적으로 Google이라는 이름이 가지는 가치를 높게 평가하며 항상 관심을 가지고 있는데, 좋은 기회로 도서를 받게되어 들뜬 마음으로 리딩을 진행하였습니다.

책에서는 Google문화, 프로세스, 도구를 여러 챕터로 나누어 설명하고 있으며, 실제 사례 소개를 통해 발생 배경 및 문제 해결 접근법에 대해 설명합니다. 실제 사례 소개는 Google의 일상을 엿볼 수 있어 개인적으로 흥미로웠으며, 여러 명의 구글 전/현직자가 작성을 해서인지 챕터별로 조금은 다른 느낌은 새로웠습니다.

Google은 어떻게 일하고 있을까? 어떤 사람들이 모여있을까? 어떤 기준으로 판단을 할까? 등 다양한 궁금증을 일부 해소할 수 있는 좋은 기회가 되는 책이라고 생각합니다.

software-engineering-at-google

책 소개

구글은 어떻게 개발하고 코드를 관리하는가

지난 50년의 세월과 이 책이 입증한 사실이 한 가지 있습니다. 바로 '소프트웨어 엔지니어링의 발전은 결코 정체되지 않는다'라는 것입니다. 빠른 기술 변화 속에서 소프트웨어 엔지니어링의 중요성이 더욱 강조되면서 소프트웨어 엔지니어의 역할은 점점 더 확장될 것입니다. 이제 더 이상 소프트웨어 엔지니어링은 단순히 조직을 효과적으로 운영하는 방법에 그치지 않을 것입니다. 이 책에서는 여러분이 궁금해하고, 반드시 알아야 할 프로그램을 효과적으로 짜는 방법은 물론, 코드베이스를 지속 가능하고 건실하게 만들어주는 엔지니어링 관행까지 모두 소개합니다. 이 책 한 권이면 소프트웨어 엔지니어링 프로세스를 완벽하게 익히고 좋은 제품을 남들보다 빠르게 구현할 수 있게 됩니다. 또한 20년 넘게 수만 명의 구글러가 쌓아온 노하우도 습득할 수 있습니다. 품질 좋은 소프트웨어 제품을 신속하게 개발하고 싶거나 구글의 소프트웨어 관리 방법이 궁금한 모든 이에게 훌륭한 안내서가 되어줄 것입니다.

  • 아마존 소프트웨어 분야 베스트셀러
  • 전/현직 구글러가 20년간 쌓아온 공학 기법 대방출
  • 수십 명의 베타리더 참여로 책의 가치 UP

이 책의 구성

해당 도서는 구글 전현직 직원들의 경험을 기반으로 작성된 책으로, 구글이 소프트웨어 엔지니어링을 바라보는 주된 시각에 따라 이 책의 주제를 크게 세 가지로 나누었습니다.

Part I. 전제

  1. 소프트웨어 엔지니어링이란?

Part II. 문화

  1. 팀워크 이끌어내기
  2. 지식 공유
  3. 공정 사회를 위한 위한 엔지니어링
  4. 팀 이끌기
  5. 성장하는 조직 이끌기
  6. 엔지니어링 생산성 측정하기

Part III. 프로세스

  1. 스타일 가이드와 규칙
  2. 코드 리뷰
  3. 문서자료
  4. 테스트 개요
  5. 단위 테스트
  6. 테스트 대역
  7. 더 큰 테스트
  8. 폐기

Part IV. 도구

  1. 버전 관리와 브랜치 관리
  2. Code Search
  3. 빌드 시스템과 빌드 철학
  4. Critique: 구글의 코드 리뷰 도구
  5. 정적 분석
  6. 의존성 관리
  7. 대규모 변경
  8. 지속적 통합
  9. 지속적 배포
  10. 서비스형 컴퓨트

software-engineering-at-google

책을 읽고

▶ 주관적인 평점 : 5.0점 / 5.0점


이번 도서 리뷰는 기한 내 모든 내용을 정독하기가 어려웠습니다. 책의 내용이 많고 글자가 페이지마다 가득차 있어 오랜시간 집중해서 보기 어려웠습니다. (내용의 퀄리티가 떨어진다는 뜻이 아니라 정말 글자가 많습니다.. ^^;) 그래서 전체를 깊게 보는 것이 아닌 훑어보고 관심 분야를 정독하는 걸로 방향을 잡고 리딩하였습니다.

그래서 정해진 파트는 '문화(Chapter 27)'였습니다. 개인적으로 제조업에서 DT를 추진하면서 다양한 새로운 시도를 하고 있지만, 불편하거나, 귀찮거나, ~효과가 있지만 그냥 싫거나..~~ 등의 이유들로 실제 적용하는데 어려움이 많은 편입니다. Google의 문화를 조금이라도 엿보고 배우고 싶어 선택을 하였고, 완벽한 모방은 어려울 수 있지만 개념적인, 일부의 모방은 가능할 것 같아 내용을 정리하여 팀에 공유하였습니다.(Google의 문화 중 하나의 '지식 공유'이더군요. ^^)

상대의 의견을 존중/이해하고, 지식은 공유/전파하고, 평가는 공정하게 하여 성장하는 팀이 될 수 있도록 하는 것이 제가 엿본 구글 문화의 일부였습니다. 요약/설명이 부족하여 전달이 제대로 되었을지 모르겠지만 개인적으로는 Google을 엿봤다는 만족과 팀 발전에 기여할 수 있는 방안을 일부 찾은 것에 만족하는 리딩이었습니다.

IT에 종사하시는 분이라면 한 번 정도는 책을 접해보시는 것을 추천드립니다. 전/현직 구글러들의 생각, 경험, 기술을 배울 수 있는 의미있는 시간이 될 것입니다.

관련 링크

[1] 한빛출판네트워크 - 구글 엔지니어는 이렇게 일한다