이 대단한 책은 당신의 마음속 깊숙이 자리 잡고 있는 괴짜에게 속삭인다. 비록 자신을 괴짜라고 생각하지 않더라도 이 책은 시간을 투자하여 읽어볼 가치가 충분하다.
- 빈트 서프(Vint Cerf), (구글의 수석 인터넷 에반젤리스트)
내가 30년 이상 엔지니어들과 함께 일하면서 배웠던 점은 엔지니어링이란 과학과 기술만큼 사람과도 관련이 깊다는 점이다. 그러나 엔지니어 대부분은 다른 사람과 일하는 방법을 이해하기 위한 노력을 게을리하거나 심지어는 전혀 노력하지 않기도 한다. 만일 더욱 효과적이며 효율적인 창의성과 혁신을 원한다면 반드시 이 책을 읽어보길 바란다.
- 딘 카멘(Dean Kamen), (DEKA 리서치의 창립자)
벤과 피츠는 소프트웨어 개발팀이 고려해야 할 패턴과 안티패턴들을 놀랍도록 잘 정리해 두었다. 이 책은 더욱 생산적인 팀을 만드는 방법을 이해하는 데 어려움을 겪고 있는 모든 사람 - 코드를 생산하는 사람부터 그들의 관리자와 그들 주변에 있는 사람들 - 에게 매우 유용하다. 이 책은 선천적으로 훌륭한 오픈 소스 개발자가 될 수 있는 사람들의 수많은 특징을 써 내려간다. 이 책을 몇 년 전에 읽을 수 있었다면 더 좋았을 것이다.
- 브라이언 벨렌도르프(Brian Behlendorf), (세계 경제학 포럼의 CTO)
소프트웨어 개발은 팀 스포츠다. 이 스포츠에서 최고의 성과를 내는 사람이 되고 싶다면 소프트웨어 개발자로서 기술을 향상시키는 방법을 설명하는 수많은 좋은 책들과 좋은 관리자가 되는 방법을 설명하는 몇몇 책들을 참고하면 된다. 이 책은 당신이 소프트웨어 개발자로서 팀원들과 일을 진행하는 방법 및 좋은 협력자가 되는 데 필요한 핵심적인 과제들을 제시하는 책이다. 실무에서는 오랜 시간 이런 책을 기다려 왔으며, 마침내 손에 넣게 되었다.
- 피터 노르빅(Peter Norvig), (구글 연구소의 디렉터)
훌륭한 소프트웨어를 출시하는 것이 제1목표인 팀을 구성하고자 한다면 이 책을 반드시 읽어보길 바란다. 벤과 피츠는 겸손이나 존중, 신뢰와 같은 솔직한 주제들을 회의적인 개발자들마저도 감사할 만큼 전략적 제안으로 훌륭히 표현해 주었다.
- 에릭 룬트(Eric Lunt), (BrightTag의 창립자 겸 CTO)
이 책은 컴퓨터 프로그래밍에서 가장 어려운 문제인, 다른 프로그래머와의 협업이라는 주제를 다루고 있는 정말 멋진 책이다. 나는 우리 Samba팀 구성원들 모두에게 이 책을 선물하였다.
- 제레미 앨리슨(Jeremy Allison), (삼바의 공동 제작자)
피츠와 벤은 겸손과 존중, 신뢰라는 매우 단순한 논리를 내세웠지만, 이를 근거로 매우 방대한 예제와 이야기를 만들어 냈다. 그들이 공유한 경험과 지혜는 - 우리 중 대부분이 그렇듯 - 소프트웨어 엔지니어가 더욱 효율적이며 생산적인 팀의 일원이 되기 위한 지침이 될 것이다.
- 그렉 배드로스(Greg J. Badros), (페이스북의 제품 및 엔지니어링 부사장)
이 책은 친구들이나 프로그래머에게 영향을 주는 사람들과 함께 협업하기 위한 책이다. 명확하며 실행 가능한 조언들을 통해 더 행복하고, 생산적이며, 효율적으로 팀과 협업할 방법들이 가득한 이 책은 반드시 필요한 책이다.
- 아드리안 홀로바티(Adrian Holovaty), (Django 프로젝트의 공동 제작자)
이 책을 늦어도 1994년 3월 이전에 아래의 사람에게 꼭 보내주세요.
FreeBSD 코어 팀, 폴-해닝 캠프
- 폴-해닝 캠프(Poul-Henning Kamp), (FreeBSD 프로젝트의 커미터)
이 책은 소프트웨어 개발에서의 사회학을 오픈 소스 소프트웨어와 대기업을 중심으로 다루는 훌륭한 책이다. 정치적으로 좋은 관계를 유지하는 방법에 대한 절은 기업 환경을 처음 접하는 모든 엔지니어가 기본적으로 읽어야 할 부분이다. 나로서는 그들이 그전에 어느 회사에서 일했든 이 부분을 반드시 읽어보라고 권할 것이다. 이 책은 내가 본 책 중 엔지니어가 쉽게 이해할 수 있는 방식으로 회사에서의 처세술을 설명하는 첫 번째 책이다. ‘유해한 사람들과 협업하기’ 장에서 소개하는 이야기와 일화, 그리고 처세술을 위한 팁은 정말 최고다. 속된 말로 돈 주고도 살 수 없는 경험이다.
- 피오 나(Piaw Na), (『An Engineer’s Guide to Silicon Valley Startups』와 『Startup Engineering Management』의 저자)
이 책은 건강한 소프트웨어 개발 문화를 완성하기 위한 청사진을 제공한다. 팀 역학이 최상의 엔지니어들과 그들이 만들어 내는 소프트웨어의 품질을 유지하는 데 어떤 영향을 미치는지 이해해야 하는 엔지니어링팀의 관리자, 기술 리더, 심지어 비 기술직 경영자들도 이 책을 반드시 읽어보아야 한다.
- 브루스 존슨(Bruce Johnson), (구글의 엔지니어링 디렉터)
소프트웨어를 작성하는 기술을 갖추고 있다면 월급을 계속 받을 수는 있겠지만, 다른 사람과 잘 협업하는 능력까지 갖추게 된다면 세상을 바꿀 수도 있다. 이 책은 당신이 단지 더 나은 프로그래머가 되는 방법을 알려주는 것이 아니라 지혜로운 프로그래머가 되는 법을 알려준다.
- 클레이 존슨(Clay Johnson), (『Information Diet』의 저자)
이 책은 오랫동안 개발자들을 괴롭혔으며 경력을 쌓는 동안 모두가 경험했던 이슈, 즉 성공적인 팀과 제품 구축에 대한 통찰력 있는 탐구의 결과물이다. 엔지니어링과 기술팀 내에서의 사람 간의 이슈를 극복하는 유쾌한 접근법을 매력적으로 서술하고 있다. 모든 엔지니어의 책장에 반드시 소장되어야 할 책이다.
- 조나단 르블랑(Jonathan Leblanc), (X.Commerce의 수석 개발자 겸 에반젤리스트)
나는 수년 전 한 콘퍼런스에서 벤과 피츠의 이야기에 대해 블로그 포스트를 작성한 적이 있다. 왜냐하면, 그 당시에는 다른 사람과 협업하는 데 있어 소수의 사람만이 사회적 측면을 고려했기 때문이다. 그들의 이야기에 녹아있던 집단 지성을 하나로 엮은 이 책은 매우 흥미로웠으며, 이제는 그들을 쫓아 여러 나라를 돌아다니지 않아도 된다.
로버트 카이예(Robert Kaye), (Musicbrainz의 수석 개발자)
번뜩이는 아이디어와 뛰어난 프로그래밍 기술을 가지고 있다고 해서 당신이 개발하는 소프트웨어가 성공하리라는 보장은 없다. 당신의 경력을 성공시키는 것도, 망가뜨리는 것도 결국 다른 사람과 어떻게 잘 협업하느냐에 달렸다.
--- p. 8
당신의 자부심이 당신이 작성하는 코드에 드러나서는 안 된다. 당신과 당신이 작성하는 코드는 다르다. 이 말을 되뇌어보길 바란다. 당신과 당신이 작성하는 코드는 다르다. 당신 스스로 그것을 믿어야 할 뿐 아니라 당신의 동료 역시 이를 믿도록 해야 한다.
--- p. 27
언젠가 스티브 잡스는 다음과 같은 말을 남겼다. “A급 인재는 다른 A급 인재를 채용하지만, B급 인재는 C급 인재를 채용한다.”
--- p. 95
최고의 엔지니어들을 (그들의 바람과는 반대로) 관리자 역할로 밀어 넣는 회사들을 볼 때마다 우리 필자들은 항상 놀라곤 한다. 대부분은 그 결과로, 팀은 유능한 엔지니어를 잃는 대신에 수준 이하의 관리자를 얻게 된다.
--- p. 117
소프트웨어를 만드는 이유는 당신 본인을 위한 것도, 당신의 팀이나 회사를 위한 것도 아니며, 오로지 사용자들의 삶을 더욱 풍성하게 만들기 위한 것이다. 따라서 그들이 무슨 생각을 하며, 당신의 제품에 대해 어떤 말을 하는지, 그리고 시간이 지나면서 어떤 경험들을 하고 있는지를 주의 깊게 살펴보아야 한다. 사용자는 소프트웨어 성공을 위한 생명선이다. 결국, 당신이 뿌린 대로 거두게 될 것이다.
--- p. 232