필독! 개발자 온보딩 가이드 (지속 가능한 소프트웨어와 원활한 협업 문화를 이해하는 프로페셔널 개발자의 탄생)

필독! 개발자 온보딩 가이드 (지속 가능한 소프트웨어와 원활한 협업 문화를 이해하는 프로페셔널 개발자의 탄생)

$25.90
Description
“드디어 소프트웨어 개발자가 됐다. 그런데 이제 뭘 어떻게 해야 하지?”
“오늘 우리 회사에 신입이 들어왔다. 뭐부터 가르쳐야 하지?”
실용적인 개발자, 성장하는 개발자, 성공적인 개발자란 대체 어떤 모습이며, 어떻게 해야 완성될 수 있을까? 대부분의 신입 엔지니어는 어느 정도의 기술 기반은 갖추고 시작하지만 실제 현장 경험은 거의 없다. 이 책에서는 새로이 첫발을 내딛는 개발자나 초보 팀장이 IT 개발 현장에서 곧 맞닥뜨릴 모든 일을 알려주며, 성공으로 향하기 위해 필요한 핵심 정보가 가득 담겨 있다.
코딩, 설계, 배포, 코드리뷰, 테스트, 기업문화, 협업, 경력 계발 등 전반적인 소프트웨어 개발 수명주기에 따라 현업 실무를 이제 막 시작하거나 팀장으로서 직무를 수행해야 하는 개발자가 꼭 알아야 할 신규 입사 개발자와 경력 개발자 모두를 위한 필독 가이드다. 개발자를 준비하는 취업준비생과 사회초년생은 물론, 팀을 이끌어야 하는 시니어 엔지니어도 다시 한번 짚어야 할 금과옥조 같은 이야기가 가득하다.
저자진이 실리콘밸리에서 현업 개발자로 일하며 IT현장에서 겪었던 눈물 쏙 빠지게 재밌는 에피소드와 경험담도 읽는 재미를 부추기며 각 장 말미에는 개발자가 꼭 따라야 하거나 반드시 피해야 할 ‘개발자의 필수 체크리스트’도 수록했다.

| 이 책에서 다루는 내용 |
- 처음 회사에 입사해 업무를 시작할 때 벌어질 일
- 기술 부채를 해소하고 방지하며, 소프트웨어를 작성하고 안전하게 배포하고, 의존성을 관리하는 방법
- 레거시 코드 변경 알고리즘을 이용해 처음보다 더 코드를 깔끔하게 유지하는 방법
- 로깅, 지표, 설정, 방어적 프로그래밍을 통해 운영 환경을 고려한 코드를 쓰는 방법
- 결정적 테스트를 구축하고 코드 리뷰를 수행하며 다른 프로그래머의 코드를 평가하는 방법
- 다른 개발자와 코드를 리뷰하고 테스트하며 동료, 팀장, 상사와 효율적으로 협업하는 방법
- 실험과 문제의 정의, 문서화 및 협업을 비롯해 기술 설계 절차에 대한 전반적인 단계
- 긴급대응 온콜 업무 중 프로덕션 환경에서 발생하는 장애를 처리하는 방법
- 아키텍처적 기법을 적용해 코드를 더 쉽게 변경하는 방법
- 스프린트 계획, 스탠드업 미팅, 회고 등 애자일 방법론을 활용하는 방법
- 시니어나 그 이상의 직책으로 자연스럽게 승진하는 방법 등 경력 관리와 대인관계 기술

| 이 책의 대상 독자 |
취업준비생, 사회초년생, 신규 입사자, 이직자, 경력 개발자 등 IT 조직에 몸담거나 소프트웨어 엔지니어로 살아가는 모든 개발자. 그리고 개발자를 이해해야 하는 비개발 관리조직 직군

| 이 책의 구성 |
누구든 목적지에 도달하려면 지도가 필요하다. 이 책에서는 여러분의 경력을 시작하는 데 필요한 내용을 다룬다. 먼저 모든 신입 개발자가 시작하는 ‘초보자’ 단계부터 시작한다. 그런 다음 코딩을 시작하고 규칙과 절차를 배우는 ‘질풍노도의 성장’ 단계로 이동한다. 그다음은 의미 있는 기능을 출시하는 ‘신뢰할 수 있는 기여자’ 단계로 넘어간다. 기능을 출시한다는 것은 ‘운영의 바다’에서 부는 거친 풍랑을 헤치며 항해를 하게 된다는 뜻이다. 결국 여러분은 ‘능력자의 땅’이라는 안전한 천국에 상륙하게 될 것이다. 팀과 협업하면서 가치 있는 기능을 지속적으로 전달할 수 있는 본격적인 소프트웨어 엔지니어 역량을 갖추게 된다. 이 책은 여러분이 홀로 긴 여정을 떠나는 데 도움을 주고자 한다.
저자

Riccomini,Chris,Ryaboy,Dmitriy

크리스리코미니(ChrisRiccomini)
페이팔(PayPal),링크드인(LinkedIn)을비롯해JP모건에속한위페이(WePay)등주요기술기업에서경험을축적한소프트웨어엔지니어다.데이터과학자,스태프소프트웨어엔지니어,디스팅귀시드소프트웨어엔지니어등의직책을거쳤다.아파치삼자(ApacheSamza)를개발하는등오픈소스에대한기여는물론스타트업의투자및자문역할도하고있다.

목차

1장여정을시작하며
〉〉〉개발자로서의첫출발,앞으로어떤길이펼쳐질까
목표를세우자
여정을위한지도
__초보자
__질풍노도의성장
__신뢰할수있는기여자
__운영의바다
__능력자의땅
전진,앞으로!

2장역량을높이는의식적노력
〉〉〉경쟁력을갖춘개발자가되기위해스스로해야할일
실전에앞서익혀야할자기주도학습방안
__본격적인학습을위한몸풀기
__직접부딪혀보며배우자
__코드동작을이해하기위해다양한실험을해보자
__문서읽는습관은몸에배야한다
__발표영상을찾아서보자
__때로는밋업과컨퍼런스도참여하자
__시니어엔지니어의업무를체험하고협업하자
__개인프로젝트활동에서도배움을얻을수있다
제대로질문하자
__스스로문제를해결해보자
__제한시간을정하자
__자신이시도한방법을공유하자
__동료를방해하지말자
__비동기식멀티캐스팅의사소통을시도하자
__동기식요청은한번에보내자
성장의장애물을극복하자
__가면증후군
__더닝크루거효과
개발자의필수체크리스트
레벨업을위한읽을거리

3장코드와함께춤을
〉〉〉레거시코드에임하는우리의자세
소프트웨어엔트로피는늘어나게마련이다
결코피할수없는기술부채
__기술부채를상환하는방법
코드변경으로인한고통을조금이라도줄이려면
__레거시코드변경알고리즘을활용하자
__코드는처음보다더깔끔하게유지하자
__점진적으로변경하자
__리팩터링은실용적으로진행하자
__IDE를활용하자
__버전제어시스템의권장기법을활용하자
소프트웨어개발에서빠지기쉬운함정을최대한피하려면
__되도록검증된기술을사용하자
__제발악동은되지말자
__업스트림커밋없이포크만하는것은금물이다
__코드재작성에대한욕구를견디자
개발자의필수체크리스트
레벨업을위한읽을거리

4장운영환경을고려한코드작성
〉〉〉개발환경과프로덕션환경은엄연히다르다
장애에대비하기위한방어적프로그래밍방안
__null값사용은피하자
__불변변수를사용하자
__타입힌트와정적타입검사를사용하자
__입력값을검사하자
__예외를활용하자
__예외는구체적으로정의하자
__예외는일찍던지고최대한나중에처리하자
__재시도는현명하게
__시스템에멱등성을부여하자
__리소스를해제하자
문제원인을찾기위한로깅방안
__로그레벨을사용하자
__로그는원자적으로작성하자
__로그는신속하게기록하자
__민감한데이터는로그에기록하지말자
애플리케이션동작측정을위한지표활용방안
__표준지표라이브러리를사용하자
__모든것을측정하자
오늘날분산환경에서더욱중요해진추적
설정으로런타임동작을손쉽게조정하려면
__지나치게창의적인설정은금물이다
__모든설정을로그에기록하고검증하자
__기본값을제공하자
__관련된설정을그룹화하자
__설정도코드처럼테스트하자
__설정파일은깔끔하게유지하자
__배포된설정은변경하지말자
때로는도구가운영의성패를결정짓기도한다
개발자의필수체크리스트
레벨업을위한읽을거리

5장피할수없는코드의존성의관리
〉〉〉복잡한프로그램을짜봐야비로소깨닫는의존성의진실
의존성관리를이해하기위한필수개념
__시맨틱버저닝
__이행적의존성
현업이면누구나한번은겪는의존성지옥
__의존성지옥에서탈출하자
__의존성을격리하자
__의존성은신중하게추가하자
__버전을고정하자
__의존성의범위를좁히자
__순환의존성에주의하자
개발자의필수체크리스트
레벨업을위한읽을거리

6장테스트!개발자의든든한지원군
〉〉〉업무부하를낮추면서시스템동작도검증하는테스트방안
테스트를꼭해야할까
테스트의유형과기법
다양한테스트도구
__모킹라이브러리
__테스트프레임워크
__코드품질보증도구
개발자스스로직접테스트를작성하자
__테스트는깔끔하게작성하자
__과도한테스트는삼가자
테스트결정성:항상동일한테스트결과를만들려면
__난수생성기에적절한시드값을사용하자
__단위테스트에서원격시스템을호출해서는안된다
__클럭을주입하자
__슬립과타임아웃의사용을삼가자
__네트워크소켓과파일핸들을닫자
__0번포트에바인딩하자
__파일과데이터베이스에대해고유한경로를생성하자
__이전테스트의상태를격리하고해제하자
__테스트의실행순서에의존하지말자
개발자의필수체크리스트
레벨업을위한읽을거리

7장올바로주고받는코드리뷰
〉〉〉원활한팀협업과높은코드품질을목표로
코드리뷰는왜필요한가
코드리뷰를제대로받는방법
__코드리뷰를받을때준비해야할사항
__리뷰초안이있으면위험을낮출수있다
__테스트실행을위한리뷰제출은금물이다
__코드변경사항이많을때는좀더면밀하게
__자신의코드에너무집착하지말자
__공감력을갖되무례함은참지말자
__주도적으로행동하자
코드리뷰를제대로해주는방법
__리뷰요청을선별하자
__리뷰를위한시간을마련하자
__코드변경사항을이해하자
__포괄적인피드백을제시하자
__좋은점은인정하자
__이슈,제안,사소한흠결은잘구분하자
__대충대충리뷰는금물
__웹기반리뷰도구에만의존하지는말자
__테스트리뷰도잊지말자
__어떻게든결론을맺어야한다
개발자의필수체크리스트
레벨업을위한읽을거리

8장고객앞으로!소프트웨어전달
〉〉〉마침내프로덕션환경에안착시킬소프트웨어의종착지
소프트웨어전달의4가지단계
효과적인버전제어를위한브랜칭전략
빌드단계
__패키지에버전을명시하자
__리소스는각각별도로패키징하자
릴리스단계
__릴리스를남의일로여기지말자
__패키지를릴리스리포지토리로발행하자
__릴리스는불변성을갖게하자
__자주릴리스하자
__릴리스일정은투명하게공유하자
__변경로그와릴리스노트를발행하자
배포단계
__배포를자동화하자
__배포는원자적으로수행하자
__애플리케이션을독립적으로배포하자
롤아웃단계
__롤아웃을모니터링하자
__기능플래그를활용하자
__서킷브레이커를이용해코드를보호하자
__서비스버전은병렬로올리자
__다크모드로론칭하자
개발자의필수체크리스트
레벨업을위한읽을거리

9장긴급대응온콜업무
〉〉〉언제일어날지모르는장애에대응하는절차와방안
긴급한비상상황에대응하는온콜업무
반드시갖춰야할온콜스킬
__항시언제라도대응할준비를갖추자
__주의를늦추지말고집중하자
__업무우선순위를정하자
__명확하게의사소통하자
__업무진척사항을추적하자
장애처리의5가지단계
__선별
__조율
__완화
__해결
__후속조치
지원업무도엄연한온콜업무다
영웅이되려하지는말자
개발자의필수체크리스트
레벨업을위한읽을거리

10장견고한소프트웨어를위한기술설계절차
〉〉〉대규모변경에적합한소프트웨어설계와문서화기법
고깔형의기술설계절차
올바른기술설계를하려면
__문제를정의하자
__해결방법을조사하자
__다양한실험을해보자
__충분한시간을투자하자
의사소통을위한설계문서작성방안
__중요한변경사항은문서화해두자
__설계문서를작성하는이유를이해하자
__글쓰는법을배우자
__설계문서는최신상태로유지하자
설계문서템플릿의기본구조
__개요
__현재상태와컨텍스트
__변경해야하는이유
__요구사항
__고려할수있는해결책
__채택하려는해결책
__설계와아키텍처
__테스트계획
__롤아웃계획
__미결사항
__부록
설계과정에서도협업은중요하다
__팀의설계리뷰절차를이해하자
__갑작스런상황은만들지말자
__설계를논의하며브레인스토밍을하자
__설계에참여하자
개발자의필수체크리스트
레벨업을위한읽을거리

11장소프트웨어수명주기를고려한진화하는아키텍처구현
〉〉〉성장하고발전하는소프트웨어를만들기위한핵심원칙
복잡도를이해하자
진화하는아키텍처를위한설계원칙
__YAGNI원칙:당장필요치않다면구현하지말것
__최소충격원칙:사용자를놀래키지말것
__도메인지식은캡슐화돼야한다
진화하는API를위한설계원칙
__API크기는작게유지하자
__잘정의한서비스API를노출하자
__API변경에는호환성을유지하자
__API의버전을관리하자
진화하는데이터를위한설계원칙
__데이터베이스를격리하자
__스키마를사용하자
__스키마마이그레이션을자동화하자
__스키마호환성을유지하자
개발자의필수체크리스트
레벨업을위한읽을거리

12장효율적인협업을위한애자일문화
〉〉〉모두가알지만실천하기는쉽지않은애자일
애자일선언문
애자일방법론프레임워크
스크럼으로하는애자일개발방안
__사용자스토리
__태스크
__스토리포인트
__백로그분류
__스프린트계획
신속한업무공유를위한스탠드업회의
진솔한피드백이오가야하는리뷰
재평가와조정을위한회고
중장기계획을위한로드맵수립
개발자의필수체크리스트
레벨업을위한읽을거리

13장관리자,팀장,상사와함께일하기
〉〉〉한마음한뜻으로공동의목표를향해
관리자들이하는일
성공적인업무수행과평가를위한절차를마련하자
__일대일회의
__PPP회의
__OKR
__성과평가
팀장이나상사도여러분의관리가필요하다
__팀장의피드백이적을경우적극요청하자
__팀장도여러분의피드백을원한다
__여러분의목표에대해팀장과허심탄회하게논의하자
__다시도해봤는데도안된다면
개발자의필수체크리스트
레벨업을위한읽을거리

14장경력관리에대한조언
〉〉〉경력관리는빠를수록좋다
시니어엔지니어,그리고더높은곳을향해
진로에대한조언
__T자형인재가되자
__개발자를위한다양한프로그램에참여하자
__승진을원하다면이렇게하자
__이직은신중하게
__다만번아웃을경계하라
마치며

출판사 서평

[추천사]
보통이직을하거나신규입사자가들어왔을때,흔히들초반3개월정도에잘하는모습을보여주기만하면그이미지가오래가므로혹여나중에실수를하더라도좋은이미지가계속유지된다고말하곤합니다.하지만초반3개월만에신규입사자가좋은이미지를보여주는것은사실쉽지가않습니다.회사에적응하기에도바쁜데그시간에좋은모습까지보여준다는건쉬운일은아니죠.
마침『필독!개발자온보딩가이드』의추천사를부탁받아책을읽다보니,평소에제가주변에해주던얘기들이그대로담겨있었습니다.정확하게는그것보다훨씬더좋은얘기들이말이죠.
‘좋은이미지를쌓는다’는것은‘신뢰할수있는기여자’가된다는것인데,이를위해서는질문하는것을두려워하면안된다는것,회사의문서를탐독하고회사의코드를계속읽어야한다는것,개인적으로도계속학습을해야한다는것,질문은하되질문하기전에꼭스스로문제를해결하려고노력해야하며그리고거기에제한시간을꼭정해서너무오래고민하지말라는것까지,평소에제가주변에얘기하는것들이더자세히적혀있었습니다.
제목은‘온보딩가이드’지만,앞으로개발자로서어떻게행동해야하는지,어떻게발전해야하는지가가득들어있어서아주재밌게책을읽었으며,특히신입으로시작하는개발자들만이아니라제주변시니어들도읽어보면좋을듯합니다.개발자생활을하면서좋은사수를만나직접가르침을받으면더없이좋겠지만,하지않아도될수많은시행착오를줄이는것은이책한권으로도충분합니다.
-강대명/레몬트리CTO

이책을보기전까지는당신을개발자로인정하지않으려한다.
훌륭한개발자로성장하려면기술전문성이외에도,실행력,의사소통,리더십등을반드시갖춰야한다.안타깝게도대학을포함한대부분의개발자육성과정은기술전문성을갖추는것에만집중하고있으며,시중에넘쳐나는기술전문서적또한다르지않다.이책또한코딩의방법,운영이가능한코딩전략,테스트코드작성방식등의기술적인내용을담고있다.
하지만이책의백미는자신의역량을높이기위해개발자들이어떤노력을해야하며,동료들과소통은어떻게해야하는지,문제가생겼을때어떻게대응하는것이좋은지에대한내용을다루고있다는점이다.마치수십년간개발을이어온노련한선배로부터어렵사리전해들을수있는조언이나지침과도같다.이런내용을담고있는책은흔치않다.개발자라면반드시읽어야할필독서다.
-김명신/NHN클라우드CTO

이책은우리가흔히맥가이버칼이라부르는다기능의스위스아미나이프와도같습니다.개발자가필수적으로알아야하는내용과더불어고급개발자로한단계성장하기위해오랜시간에걸쳐체득해야하는많은사항을포함하고있기때문입니다.마치오랜경험에서우러나오는마음따뜻한선배의실용적인조언과같이개발자의마음가짐은물론,코딩과코드리뷰에서부터소프트웨어아키텍처와개발프로세스,그리고경력관리까지다양한내용을다룹니다.초보개발자가한단계성장하기위한시간을줄여주고가야할방향을알려주는필독서이지만이미적지않은경험을쌓아온개발자나관리자들에게도소프트웨어개발에대한전반적인내용을업데이트하기위한좋은레퍼런스가될것입니다.
좋은책은좋은친구와같다고합니다.이책은개발자로성장하는데있어훌륭한가이드역할을해줄수있는든든하고친절한벗일뿐만아니라,소프트웨어개발에대한좀더넓은시야를갖는데많은도움이될것입니다.소프트웨어개발과관련된작업을하고있다면꼭한번읽어보기를강력하게추천합니다.
-김영기/삼성전자네트워크사업부SE그룹수석엔지니어

개발을‘할’수있는사람과개발을‘잘할’수있는사람은다릅니다.‘개발을잘하는사람’에대해서는여러가지정의가있을수있겠지만,보편적으로여러사람이협업해결과물을내는것을개발이라하므로개발결과물을만들기위한과정과그결과물에대한신뢰도가높아믿고맡길수있는사람이라는의미로보는것이타당하겠습니다.
이책에서는개발자가좋은개발결과물을만들기위해어떤것들을놓치면안되는지에대해다년간의경험에서우러나온“찐”노하우를다양하게다룹니다.그범위는어떻게해야코드의품질을높일수있는지부터코드를작성하는좋은습관과같이실제현업에서일하는분들이어떤태도를취해야하는지에이르기까지,그가초보개발자일때,중견개발자일때,팀장일때등다양한스펙트럼에서의지침을폭넓게담고있습니다.좋은개발자가되고싶은분은물론,좋은개발자를육성해야하는팀장,좋은개발자를영입해야하는비개발직군의관리자에게까지훌륭한가이드가될것입니다.
-류형규/주식회사컬리HeadofProduct,CTO

개발자의길을걷기시작했을때혼자학습하고삶의방향을설정하며걸어왔기때문일까?나는개발자의학습로드맵이나이정표를다루는류의책을그리좋아하지않는다.그럼에도불구하고지금나는이책을추천하고,평소많은교육에서늘학습로드맵과개발자의성장로드맵을주제로이야기한다.
맞다.모순이다.
모순임을알면서도이책을추천하는이유는혼자만의힘으로삶을개척해나가는길이얼마나힘들고외로운길인지알기때문이다.자신만의길을찾고묵묵히걸어가라.적극지지한다.그렇게길을걷다외로움과막막한감정이밀려드는순간이책에서마음이끌리는곳을읽어라.이책은개발자의삶전반에걸쳐쌓아야할역량을다루고있다.따라서현상태에서다음단계(넥스트스텝)로도전할거리를던져줄것이라믿기때문이다.
-박재성/(주)넥스트스텝대표이사,(주)우아한형제들우아한테크코스캡틴

이책은대학교나학원에서알려주지않지만실무에서반드시필요한지식을일목요연하게정리해알려주는구성방식을따른다.컴퓨터공학이나컴퓨과학커리큘럼에등장하는자료구조나알고리즘과같은기초지식을비전공자대상으로알기쉽게설명하는책은시중에많이나와있지만,실제소프트웨어개발에들어가서코드를작성하는바로그순간에필요한공학적인지식이나실무팁을다루는책은생각외로찾기어렵기에이책의가치를더욱높게평가할수있다.
팀장이나리더라면자신들의시간을아껴준이책을진심으로환영할것이고,신규입사자라면불투명한앞길에조명을비춰주는이책을역시환영할것이다.주사맞기전에“따끔합니다”라는가벼운경고성격이강한이책을읽으면서,실무에서벌어지는다양한상황과대응방안을사전에인지하고개인적으로사고실험을수행하고알게된사실을주변사람들과토론하다보면한결마음의여유가생길것이다.그리고이런지식을바탕으로차근차근실무의문제들을해결하다보면어느순간이책에나온용어와개념에대한이해도가한단계높아질것이며,이때가바로여러분이성장한순간이라고보면틀림없을것이다.아무쪼록여러분이이책과더불어탄탄한공학적인기본기와협업마인드를갖추고멋진소프트웨어도만들어내면좋겠다.
-박재호/‘컴퓨터vs책’블로그,『클린코드,이제는파이썬이다』역자

제가근무했던전직장(피보탈랩)이좋은소프트웨어를위한협업을위해각개발자에게요구했던마인드는“Bekind!”였습니다.협업과정에서는서로다른기술수준,도메인에대한이해수준의격차가언제나발생하고그렇기에서로친절해지기가꽤어렵습니다.그래서피보탈랩의중요한채용기준은공감력(empathy)을확인하는것이기도했습니다.주니어는잘모르고시니어는잊고지내는,이해와기대수준의불가피한차이로인해개발협업을하다보면소통의어려움이발생합니다.원활한소통을통해이기대수준의차이를인식하고좁혀나가야만서로공감대를형성하여결국‘Bekind’를동작시킴으로써좋은품질의소프트웨어결과물을함께만들어나갈수있습니다.
추천사를부탁받고이책을읽으며,당시피보탈랩에서수행했던여러방식이소개돼있어매우반갑고놀라웠습니다.이책은초보개발자는물론,시작이어땠는지를잊고지내는,그래서‘라떼’만을추억하는시니어및CTO,CDO의임원까지모두함께읽어야합니다.현실세계의어려움을책한권에다말할수는없겠지만,시니어는"내가이런걸모를때가있었지."라던주니어시절을회상해보고,주니어는"아,시니어가되려면이런것들이중요하구나."라는깨달음을얻을수있는진정한개발자의필독서로추천드립니다.신입개발자가어떻게성장해야하는가에대한커리어지표를쌓는지식은덤입니다.
-정윤진/포커스미디어CTO

이책은코딩외에도신입소프트웨어엔지니어가성공적인경력을위해배워야할다양한스킬을심도있게설명하는아주인상적인책이다.이제갓대학을졸업하고경력을시작하는입장에서앞으로어떤일들이벌어질지궁금해하는사람들에게매우적합한책이다.
-카미유푸르니에(CamilleFournier)/전골드만삭스부사장,『개발7년차,매니저1일차』(한빛미디어)저자

내가소프트웨어엔지니어로첫발을내딛을때이책이있었다면어땠을지생각해본다.현명한조언과가치를형언할수없는이야기들을재미있게읽었다.적절한질문을준비할필요가없다는점을빼면마치시니어멘토와커피한잔을즐기는기분이었다.신입개발자는물론자신이무엇을놓치고있는지알고싶은시니어엔지니어에게도정말유용한책이다.
-그웬샤피라(GwenShapira)/컨플런트(Confluent)의엔지니어링리더

21세기소프트웨어엔지니어링분야에서매일일어나는일상을소개하는정말실용적인책이다.운영환경에서동작하는시스템을구현하고배포하고운영하는팀에효율적인일원이되기위해필요한기본적인스킬과기법,휴리스틱을모두다룬다.
-애디웨일오시나이(AdewaleOshineye)/구글의개발자애드보컷(developeradvocate),『프로그래머의길,멘토에게묻다』(인사이트)공저자

이책은이제막시작하는엔지니어가혼자스스로는결코학습할수없는모든것을다룬다.정보가잘정리돼있어수월하게읽을수있었다.우리회사의인턴과갓졸업한직원들에게한권씩나눠줘야겠다.
-토마스핸리(ThomasHanley)/시니어엔지니어링매니저

소프트웨어엔지니어가되기위한실용적인내용을빠짐없이다루는훌륭한가이드다.사용백서같은스타일로명쾌하게적힌책이라,인턴직원부터CTO에이르기까지모든소프트웨어엔지니어를위한참고서로삼기에충분하다.
-팀번스(TimBurns)/데이터아키텍트

신규입사자는물론경력개발자에게도실용적이면서도실행가능한인사이트를제공한다.재직중인회사의규모에관계없이소프트웨어개발자가마주할수있는모든장애물에효과적으로대응하는방법을상세히설명해준다.이책이야말로우리모두가필요로하는개발자필독가이드다.
-조지D.(GeorgeD.)/전문리뷰어

책을다읽고나니유용한팁은물론늘나를격려해주는멘토를한명갖게된느낌이든다.저자들은서문에서모든직장이나모든상황을다루지는않는다고했지만실제로는주니어엔지니어는물론이미어느정도경력을쌓은엔지니어에게도매우유용한내용으로가득하다.대학의학부생에게는소프트웨어엔지니어링수업에서미처배우지못한내용으로가득한교과서같은책이다.나는이책의2장'역량을높이는의식적노력'내용을내강의계획에포함시켰다.내학생들이다른출처의의견을듣는것은언제나환영할만한일이기때문이다.
-매리무어(MaryMoore)/웨스트버지니아대학교컴퓨터정보시스템교수,전문리뷰어

[옮긴이의말]
한국과호주,미국,캐나다등여러나라의기업에서소프트웨어엔지니어로일하면서공통적으로경험했던한가지는좋은엔지니어링문화를구축하는것은언어와문화를막론하고어렵다는점입니다.사실좋은소프트웨어엔지니어링문화라는것의정의또한그다지구체적이지는않지요.
그럼에도불구하고이분야는끊임없는연구와노력,발전을거듭하며좋은소프트웨어엔지니어링문화의정의를조금씩구체화해갔습니다.그리고그렇게구체화된문화를소개하고있는책이바로이책입니다.
한국에서태어나한국에서소프트웨어엔지니어로성장한저는이책에서소개하는내용이지금국내기업의소프트웨어엔지니어링문화와아직은많은차이가있다고느낍니다.이는단지엔