로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

사이트 신뢰성 엔지니어링

 [구글이 공개하는 서비스 개발과 운영 노하우]
   
지은이 벳시 베이어, 크리스 존스, 제니퍼 펫오프, 니얼 리처드 머피   |   출판사 주식회사 제이펍  |   발행일 2018년 01월 09일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 36,000원32,400원 10%
마일리지 5% 1,800원
발행일 2018-01-09
ISBN 1188621084 | 9791188621088
기타정보 번역서 | 624쪽 | 일반
예상출고일 1~2일 이내 (근무일기준)
배송비 무료배송
   
컴퓨터공학
   
이 책의 원서
  Site Reliability Engineering: How Google Runs Production Systems
O'Reilly Media | Chris Jones
 

다음 단계로 성장하기 위한 영감으로 가득한 책!

이 책은 구글이 역사적인 서비스를 어떻게 만들어왔는지에 대한 구글 종사자들의 생생한 증언이다. 하지만 우리가 겪고 있는 다양한 문제에 대한 해결 방법을 알려주지는 않는다. 바로 이것이 이 책의 핵심 가치다. 이 책에서 설명하는 내용은 결과적으로 만들어지는 코드나 디자인에 비해 훨씬 가치 있는 것들이다. 왜냐하면 구현된 결과물의 수명은 길지 않은 반면, 증명된 내용을 문서화한 것의 가치는 상상을 초월하기 때문이다. 두 번 다시 나오기 힘든 책이다!


출판사 서평
다음 단계로 성장하기 위한 영감으로 가득한 책!
실제로 동작하는 코드가 가장 중요하다고 여기는 구글의 원칙을 체험한다!

소프트웨어 시스템의 수명은 보통 디자인이나 구현 단계가 아니라 실제로 사용되는 기간에 좌우된다. 그렇다면 어째서 소프트웨어 엔지니어는 대용량 컴퓨팅 시스템을 디자인하고 구현하는 과정을 가장 중요하게 생각해 온 것일까?

이 책에서는 구글의 사이트 신뢰성 엔지니어링팀의 핵심 구성원들이 소프트웨어의 전체 생명주기에 집중함으로써 세계에서 가장 거대한 소프트웨어 시스템을 구현하고, 배포하고, 관측하며, 유지하는 방법과 그 이유를 다양한 에세이와 사설을 통해 소개한다. 이를 통해 구글 엔지니어들이 더 확장 가능하고, 신뢰할 수 있으며, 효과적인 시스템을 구축할 수 있었던 원리와 사례를 여러분의 조직에도 적용할 수 있게 될 것이다.

이 책의 주요 내용
■ 소개: 사이트 신뢰성 엔지니어링이 무엇인지, 그리고 기존 IT 분야의 사례와는 어떻게 다른지를 소개한다.
■ 원리: 패턴과 행동 양식, 그리고 사이트 신뢰성 엔지니어의 작업에 영향을 미치는 여러 사안을 소개한다.
■ 사례 연구: SRE의 일과인 대용량 분산 컴퓨팅 시스템을 구축하고 운영하기 위한 이론과 사례들을 학습한다.
■ 관리: 구글이 권장하는 신규 입사자에 대한 교육, 의사소통, 회의 진행 방식 등을 자신의 조직에 적용하기 위한 방법들을 살펴본다.
1. 추천사
구글의 SRE(Site Reliability Engineering)는 원칙과 실습, 그리고 아키텍처 패턴은 물론 개발팀이 세계 최고 수준의 신뢰도와 지속적 배포 도구를 말도 안 되는 스케일에 적용할 수 있는 문화를 서술함으로써 IT 분야의 수많은 서비스에 지대한 영향을 미쳤다. 이 책은 독자 개개인뿐만 아니라 독자가 소속된 조직 전체가 반드시 읽고 자신의 것으로 소화해낼 가치가 충분한 책이다.
— 제즈 험블(Jez Humble), 《신뢰할 수 있는 소프트웨어 출시(Continuous Delivery)》의 공동 저자

나는 구글이 처음으로 시스템 관리자 콘퍼런스(Systems Administration Conferences)에서 진행했던 발표를 기억한다. 마치 질라 몬스터(Gila monster, 역주 미국의 도마뱀으로 독을 가지고 있다) 전문가가 나와서 진행하는 파충류 쇼의 대담을 듣는 기분이었다. 내가 늘 접하던 세계와는 완전히 다른 세계의 이야기를 듣는 것은 너무나도 흥미진진했지만, 결국 청중들은 자신의 애완 도마뱀으로 다시 눈길을 돌리고 말았다.
이제 우리는 구글의 그것과 비교하면 훨씬 작은 규모의 서비스라 하더라도, 그간 구글이 축적해온 노하우 없이는 제대로 운영할 수 없는 세상에 살고 있다. 덕분에 수년 동안 조용히 발전해오던 SRE의 사례들이 이제야 갑자기 폭발적인 관심의 대상이 되었다. 스케일과 신뢰도, 그리고 운영에 관련된 도전에 직면한 사람이라면 이 책을 반드시 읽어야 할 것이다.
— 데이비드 N. 블랭크-애들맨(David N. Blank-Edelman), USENIX 이사회 이사이자 SREcon의
공동 개최자

구글이라는 마법의 성을 떠난 후로 나는 줄곧 이 책이 출간되기만을 기다렸다. 이 책은 내 직장 동료들에게도 전파한 일종의 복음과도 같은 책이다.
— 뵨라벤슈타인(Björn Rabenstein), SoundCloud의 엔지니어링팀 리더, 2013년까지 구글 SRE에서 근무했던 천상 개발자

사이트 신뢰도 엔지니어링이라는 개념을 연구해온 회사가 직접 저술한, 농익은 내용이 돋보이는 책이다. 기술적인 세부사항뿐만 아니라 프로세스와 목표, 원칙, 그리고 시간이 흐르면서 축적된 경험까지 모두 서술하고 있다. 진정한 의미의 SRE를 알고 싶다면 이 책이 그 답이다.
— 루스 올베리(Russ Allbery), SRE 및 보안 엔지니어

구글의 개발자들은 거대한 스케일과 높은 신뢰도를 모두 이룩한 구글의 서비스들을 개발해 오면서 자신들이 시행했던 프로세스나 겪은 실수들을 이 책을 통해 모두 공유하고 있다. 확장 가능한 통합 서비스를 만들고자 하는 사람이라면 누구나 이 책을 읽어볼 것을 강력히 권하는 바다. 이 책은 유지보수가 쉬운 서비스를 구현하기 위한 최고의 가이드다.
— 릭 패로우(Rik Farrow), USENIX

지메일 같은 대용량 서비스를 개발하는 일은 결코 쉬운 일이 아니다. 하지만 이런 서비스들을 신뢰성 있게 운영하는 것은 그보다 더 어려운 일이다. 특히, 이 서비스들이 거의 매일 수정되고 업그레이드되는 상황이라면 더더욱 그렇다. 이 책은 구글이 이 어려운 일을 어떻게 해냈는지를 보여주는 일종의 ‘레시피’다. 그러나 이 책으로 인해 그들이 저질렀던 실수들을 내가 반복하지 않게 된다면, 책값이 결코 비싼 수업료가 아니라는 것을 알게 될 것이다.
— 우르스 회즐(Urs Hölzle), 구글의 테크니컬 인프라스트럭처 SVP
2.
3. 책속으로
그 외에는 소프트웨어 시스템 개발을 통해 복잡한 문제를 해결할 수 있다는 신념과 재능을 SRE가 갖추어야 할 덕목으로 꼽을 수 있었다. SRE팀 내부에서는 이 두 그룹에 대한 업무 능력의 발달 과정을 면밀하게 추적했는데, 현재까지 이 두 부류의 엔지니어들의 성과에 대해서는 별다른 차이점을 발견하지 못했다. 사실, SRE팀의 배경적 차이점은 오히려 여러 기술이 집약된, 독창적이면서도 높은 품질의 시스템을 탄생시키곤 했다.
_6쪽

시스템이 기대치를 얼마나 충족하는지를 이해하는 것은 시스템을 더 빠르고, 더 가용성이 뛰어나며, 더 탄력적으로 만들기 위한 투자를 할 것인지를 판단하는 데 도움이 된다. 아니면 시스템이 잘 동작하고 있는 경우, 참여 인력의 시간을 기술 부채를 해결하거나 새로운 기능을 추가하거나 혹은 다른 제품을 개발하는 등 우선순위가 더 높은 작업에 투입할 수도 있다.
_56쪽

시스템은 관성이 있다. 우리는 올바르게 동작하는 컴퓨터 시스템은 설정의 변경이나 서비스 부하의 종류가 바뀌는 등의 외부 요인이 발생하기 전까지는 계속해서 동작하려는 성향을 갖고 있음을 알아냈다. 그래서 무엇이 잘못되고 있는지 파악하기 위한 가장 좋은 시작 지점은 가장 최근에 변경된 부분이다.
_165쪽

서브셋 선택 알고리즘을 적당히 구현하는 방법은 각 클라이언트가 백엔드의 목록을 임의로 섞은 후, 그중에서 접근이 가능하고 양호한 상태의 벡앤드를 선택해서 서브셋을 구축하는 방법이다. 한 번 임의로 섞은 후 백엔드를 차례로 선택하는 방법은 고려 대상이 될 백엔드의 수를 명시적으로 제한할 수 있으므로 재시작과 장애 상황을 안정적으로(예를 들면 상대적으로 적은 수의 연결을 유지하면서) 처리할 수 있다. 그러나 이 전략은 부하가 균등하게 분산되지 않기 때문에 대부분의 경우에 원하는 대로 동작하지 않는다는 것을 경험했다.
_275쪽

빠르게 성장하며 제품과 서비스의 변화율이 높은 기업은 출시 조율 엔지니어링 역할을 도입하는 것이 도움이 될 것이다. 이런 팀은 기업이 매 1~2년 동안 제품 개발자들을 두 배 이상 더 채용할 계획이 있거나 서비스가 수백만 명의 사용자들로 확장되어야 하거나 높은 변화율에도 불구하고 안정성이 사용자에게 더 중요한 경우에 특히 더 유용하다
_452쪽

PART I 소개
CHAPTER 01 소개 _ 3
서비스 관리를 위해 시스템 관리자를 활용하는 방법 _ 3
서비스 관리에 대한 구글의 해법: 사이트 신뢰성 엔지니어링 _ 5
SRE의 신조 _ 8
마무리하며 _ 14

CHAPTER 02 SRE 관점에서 바라본 구글의 프로덕션 환경 15
하드웨어 _ 15
하드웨어를 ‘조율하는’ 시스템 소프트웨어 _ 17
기타 시스템 소프트웨어 _ 21
소프트웨어 인프라스트럭처 _ 22
개발 환경 _ 23
셰익스피어: 예제 서비스 _ 24

PART II 원리와 원칙들
CHAPTER 03 위험 요소 수용하기 _ 30
위험 요소 관리하기 _ 31
서비스 위험 측정하기 _ 32
서비스의 위험 수용도 _ 34
에러 예산 활용해보기 _ 40

CHAPTER 04 서비스 수준 목표 _ 44
서비스 수준 관련 용어 _ 45
지표 설정 _ 48
목표 설정에 대한 실습 _ 51
협약에 대한 실습 _ 56

CHAPTER 05 삽질은 이제 그만! _ 57
삽질의 정의 _ 58
삽질이 줄어들면 좋은 이유 _ 60
엔지니어링에 해당하는 업무는? _ 61
삽질은 무조건 나쁜 것일까? _ 62
결론 _ 63

CHAPTER 06 분산 시스템 모니터링 _ 64
정의 _ 64
왜 모니터링해야 하는가? _ 66
모니터링에 대한 적절한 기대치 설정하기 _ 67
증상과 원인 _ 68
블랙박스와 화이트박스 _ 69
네 가지 결정적인 지표 _ 70
마지막 요청(혹은 실행과 성능)에 대한 고려 _ 72
적당한 측정 방법 선택하기 _ 72
더욱 단순하게가 아니라 최대한 단순하게 _ 73
지금까지 살펴본 원리들을 결합하기 _ 74
장기적 모니터링 _ 76
결론 _ 78

CHAPTER 07 구글의 발전된 자동화 _ 80
자동화의 가치 _ 81
구글 SRE의 가치 _ 83
자동화의 사례 _ 85
스스로를 이롭게 하라: 몽땅 자동화하자! _ 88
신의 한 수: 클러스터 턴업의 자동화 _ 91
보그: 창고 크기 컴퓨터의 탄생 _ 98
신뢰성은 근본적인 기능이다 _ 101
추천 사항 _ 101

CHAPTER 08 릴리즈 엔지니어링 _ 103
릴리즈 엔지니어의 역할 _ 104
릴리즈 엔지니어링의 철학 _ 104
지속적 빌드와 배포 _ 106
설정 관리 기법 _ 111
결론 _ 112

CHAPTER 09 간결함 _ 114
시스템의 안정성 vs. 신속함 _ 115
지루함의 미덕 _ 115
내 코드는 절대 포기하지 않을 거야! _ 116
‘부정적 영향을 미치는 코드’의 지표 _ 116
최소한의 API _ 117
모듈화 _ 117
릴리즈의 간소화 _ 118
간결한 결론 _ 119

PART III 사례
CHAPTER 10 시계열 데이터에 대한 실용적인 알림 _ 127
보그몬의 탄생 _ 128
애플리케이션의 조작 _ 130
내보낸 데이터의 수집 _ 131
시계열 데이터를 위한 저장소 _ 132
규칙의 평가 _ 135
알림 _ 140
모니터링 토폴로지의 샤딩 _ 141
블랙박스 모니터링 _ 142
설정의 유지보수 _ 143
지난 10년 간 … _ 145

CHAPTER 11 비상 대기 _ 146
소개 _ 146
비상 대기 엔지니어의 삶 _ 147
비상 대기 업무의 균형 맞추기 _ 148
안전에 대해 고려하기 _ 150
부적절한 운영 부하에서 벗어나기 _ 153
결론 _ 155

CHAPTER 12 효과적인 장애 조치 _ 156
이론 _ 157
실전에 들어가보자 _ 159
부정적인 결과의 마법 _ 168
사례 연구 _ 171
조금 더 수월하게 장애를 조치하기 _ 175
결론 _ 176

CHAPTER 13 긴급 대응 _ 177
시스템에 문제가 생기면 어떻게 해야 할까? _ 178
테스트로 인한 장애 _ 178
변경으로 인한 장애 _ 180
절차에 의한 장애 _ 183
모든 문제가 해결되었다 _ 186
지난 일로부터 배우기. 그리고 반복하지 않기 _ 186
결론 _ 188

CHAPTER 14 장애 관리하기 _ 189
미흡한 장애 관리 _ 190
미흡한 장애 처리에 대한 자세한 분석 _ 191
장애 관리 절차의 기본 요소들 _ 191
적절하게 관리한 장애 조치 _ 194
언제 장애를 선언할 것인가? _ 195
요약 _ 196

CHAPTER 15 포스트모텀 문화: 실패로부터 배우기 _ 197
구글의 포스트모텀 철학 _ 198
협업과 지식의 공유 _ 200
포스트모텀 문화 도입하기 _ 201
결론 및 지속적인 개선 _ 204

CHAPTER 16 시스템 중단 추적하기 _ 205
에스컬레이터 _ 206
아우터레이터 _ 206

CHAPTER 17 신뢰성을 위한 테스트 _ 212
소프트웨어 테스트의 종류 _ 214
테스트 및 빌드 환경 구성하기 _ 221
대규모 환경에서의 테스트 _ 223
결론 _ 237

CHAPTER 18 SRE 조직의 소프트웨어 엔지니어링 _ 238
SRE 조직의 소프트웨어 엔지니어링 역량이 중요한 이유 _ 239
Auxon 사례 연구: 프로젝트 배경 및 문제가 발생한 부분 _ 240
의도 기반 수용량 계획 _ 244
SRE 조직에서 소프트웨어 엔지니어링을 육성하는 방법 _ 254
결론 _ 259

CHAPTER 19 프런트엔드의 로드밸런싱 _ 260
모든 일을 힘으로만 해결할 수는 없는 법 _ 260
DNS를 이용한 로드밸런싱 _ 262
가상 IP 주소를 이용한 로드밸런싱 _ 265

CHAPTER 20 데이터센터의 로드밸런싱 _ 268
이상적인 사례 _ 269
양호하지 않은 태스크 구별하기: 흐름 제어와 레임덕 _ 271
서브셋을 이용한 연결 풀 제한하기 _ 273
로드밸런싱 정책 _ 280

CHAPTER 21 과부하 처리하기 _ 287
‘초당 쿼리 수’의 함정 _ 288
사용자별 제한 _ 289
클라이언트 측에서의 사용량 제한 _ 290
중요도 _ 292
활용도에 대한 신호들 _ 294
과부하 오류 처리하기 _ 295
연결에 대한 부하 _ 299
결론 _ 300

CHAPTER 22 연속적 장애 다루기 _ 302
연속적 장애의 원인과 그 대책 _ 303
서버 과부하 방지하기 _ 309
느긋한 시작과 콜드 캐싱 _ 320
연속적 장애의 발생 요인 _ 323
연속적 장애 테스트하기 _ 325
연속적 장애를 처리하기 위한 즉각적인 대처 _ 328
마무리하며 _ 331

CHAPTER 23 치명적인 상태 관리하기: 신뢰성을 위한 분산에 대한 합의 _ 332
합의는 왜 필요할까: 분산 시스템 간 협업의 실패 _ 335
분산에 대한 합의가 동작하는 방식 _ 337
분산 합의를 위한 시스템 아키텍처 패턴 _ 339
분산 합의의 성능 _ 345
분산 합의 기반 시스템의 배포 _ 354
분산 합의 시스템 모니터링 _ 364
결론 _ 365

CHAPTER 24 크론을 이용한 분산된 주기적 스케줄링 _ 366
크론 _ 367
크론 작업과 멱등성 _ 368
대용량 시스템 내에서의 크론 _ 369
구글에서 구현한 크론 서비스 _ 371
요약 _ 379

CHAPTER 25 데이터 처리 파이프라인 _ 380
파이프라인 디자인 패턴의 기원 _ 380
단순한 파이프라인 패턴을 적용한 빅데이터의 기본적인 효과 _ 381
정기적 파이프라인 패턴의 과제 _ 381
작업의 불균형 분산으로 인해 발생하는 문제 _ 382
분산 환경에서 정기적 파이프라인의 단점 _ 383
구글 워크플로우 소개 _ 387
워크플로우의 실행 단계들 _ 389
비즈니스의 지속성 보장하기 _ 391
요약 _ 392

CHAPTER 26 데이터 무결성: 내가 기록한 그대로 읽을 수 있어야 한다 _ 394
데이터 무결성의 중요한 조건 _ 395
데이터 무결성과 가용성을 유지하기 위한 구글 SRE의 목표 _ 401
구글이 데이터 무결성의 문제를 해결하는 방법 _ 406
사례 연구 _ 419
데이터 무결성과 관련된 SRE의 일반 원리들 _ 427
결론 _ 429

CHAPTER 27 대용량 환경에서의 신뢰할 수 있는 제품 출시 _ 430
출시 조율 엔지니어링 _ 432
출시 절차 마련하기 _ 434
출시 확인목록 개발하기 _ 438
안정적인 출시를 위한 기법들 _ 443
LCE의 개발 역량 _ 448
결론 _ 452

PART IV 관리
CHAPTER 28 비상 대기를 넘어 SRE의 성장을 촉진하기 _ 456
새 SRE를 고용했다. 이제 뭘 해야 하지? _ 456
최초의 학습 경험: 혼란을 방지하기 위한 구조의 사례 _ 459
스타 리버스 엔지니어와 즉흥적 사상가로 키워내기 _ 463
포부가 큰 비상 대기 엔지니어를 위한 다섯 가지 원칙 _ 467
비상 대기를 넘어서: 통과 의례와 지속적 학습의 관례 _ 473
마무리하며 _ 474

CHAPTER 29 방해 요소에 대한 대처 _ 475
운영 업무 부하 관리하기 _ 476
방해 요소의 관리 방법을 결정하기 위한 요소들 _ 477
불완전한 머신 _ 478

CHAPTER 30 SRE를 이용해 운영 업무의 부담에서 벗어나기 _ 486
1단계: 서비스에 대해 배우고 컨텍스트를 이해하기 _ 487
2단계: 컨텍스트의 공유 _ 489
3단계: 변화를 주도하기 _ 491
결론 _ 494

CHAPTER 31 SRE의 의사소통과 협업 _ 495
의사소통: 운영 환경 회의 _ 497
SRE와의 협업 _ 501
SRE의 협업에 대한 사례 연구: Viceroy _ 503
SRE 외 조직과의 협업 _ 509
사례 연구: DFP의 F1으로의 이전 _ 510
결론 _ 512

CHAPTER 32 SRE 참여 모델의 개선 _ 513
SRE의 도입: 의미와 방법, 그리고 이유 _ 513
PRR 모델 _ 514
SRE 도입 모델 _ 515
운영 환경 준비 검토: 간단한 PRR 모델 _ 517
간단한 PRR 모델의 발전: 조기 참여 _ 521
서비스 개발의 개선: 프레임워크와 SRE 플랫폼 _ 524
결론 _ 529

PART V 마무리하며
CHAPTER 33 다른 업계로부터의 교훈 _ 533
업계 전문가에 대한 소개 _ 534
준비와 재난 테스트 _ 536
포스트모텀 문화 _ 540
반복적인 업무와 운영 오버헤드를 자동화된 방식으로 제거하기 _ 542
구조화되고 합리적인 의사 결정 _ 544
결론 _ 546

CHAPTER 34 마치며 _ 547

APPENDIX. 부록
APPENDIX A 가용성 표 _ 551
APPENDIX B 운영 서비스를 위한 권장 사례 모음 _ 553

APPENDIX C 장애 상태 문서의 예 _ 559
APPENDIX D 포스트모텀의 예 _ 561
APPENDIX E 출시 조율 확인목록 _ 566
APPENDIX F 제품 회의의 예 _ 569

참고문헌 _ 573
찾아보기 _ 584

벳시 베이어(Betsy Beyer)
구글의 기술 문서 작성 담당자다. 현재 미국 뉴욕에 거주하고 있으며, 사이트 신뢰성 엔지니어다. 예전에는 마운틴 뷰를 비롯해 전 세계에 분산된 데이터센터를 관리하는 구글 데이터센터 및 하드웨어 운영팀의 문서를 작성하기도 했다. 뉴욕으로 이주하기 전에는 스탠퍼드 대학교에서 기술 문서 작성법을 강의하였다. 현재의 직업을 갖기 전에는 국제 관계학 및 영문학을 전공했으며, 스탠퍼드와 투레인 대학교에서 학위를 받았다.

크리스 존스(Chris Jones)
하루 28억 개의 요청을 처리하는 PaaS 클라우드 제품인 구글 앱 엔진의 사이트 신뢰성 엔지니어다. 샌프란시스코에 거주하고 있으며, 사이트 신뢰성 엔지니어로 활동하기 전에는 구글의 광고 분석, 데이터 웨어하우징 및 고객 지원 시스템을 담당했었다. IT 교육과 정치 캠페인의 데이터 분석, BSD 커널에 대한 기여, 컴퓨터 엔지니어링, 경제학 및 기술 정책에 대한 학위 취득 등에 열정을 쏟고 있으며, 전문 엔지니어 자격증도 소지하고 있다.

제니퍼 펫오프(Jennifer Petoff)
아일랜드 더블린에 거주하고 있는 구글의 사이트 신뢰성 엔지니어링팀의 프로그램 관리자다. 예전에는 과학 논문, 엔지니어링, 인적 자원 및 광고 운영 등 광범위한 분야에 걸친 글로벌 프로젝트를 관리했었다. 구글에 합류하기 전에는 화학 분야에 8년간 종사하기도 했었다. 스탠퍼드 대학교에서 화학 박사 학위를 받았으며, 로체스터 대학교에서 화학 학사와 심리학 석사 학위를 받았다.

니얼 리처드 머피(Niall Richard Murphy)
구글 아일랜드에서 광고 플랫폼의 사이트 신뢰성 엔지니어링팀을 이끌고 있다. 인터넷 분야에서 21년째 경력을 쌓고 있으며, 아일랜드의 협력 허브인 INEX의 의장이기도 하다. 오라일리의 《IPv6 Network Administration》을 비롯한 다수의 기술 서적 및 논문의 공동 저자인 그는 여러 RFC 문서 작성에도 기여한 바 있다. 현재 아일랜드의 인터넷 역사를 공동 집필 중이며, 컴퓨터 공학, 수학 및 (다소 생뚱맞지만) 문학 학위를 소지하고 있다. 현재 아내와 두 아들과 함께 더블린에 거주하고 있다.
1.
2. 옮긴이 소개
장현희
19년째 개발자의 길을 걷고 있는 옮긴이는 지난 17년간 총 20여 종의 개발 관련서를 집필하거나 번역했다. 현재는 호주 시드니에 있는 ROKT에서 테크니컬 스페셜리스트로 근무 중이며, 국내 개발자들에게 조금이라도 도움되는 번역서를 만들기 위해 틈틈이 노력하고 있다. 앞으로도 책이라는 매개체를 통해 멀리서나마 국내 개발자들과 계속해서 소통할 계획이다.
등록된 서평이 없습니다.
 
전체평균(0)
회원평점   회원서평수 0
주식회사 제이펍 출판사의 신간
모던 C++로 배우는 동시성 프로그래밍
라이너 그림 저
22,500원
(10%↓+5%)
 
웹 서비스를 만들며 배우는 node.js 프로그래밍: 설치에서 배포까지
정민석 저
18,000원
(10%↓+5%)
 
해킹 일렉트로닉스: 아두이노와 라즈베리파이로 배우는 전자공학
사이먼 몽크 저
26,100원
(10%↓+5%)
 
한 권으로 배우는 파이썬 기초 & 알고리즘 사고법
아리스티데스 보우라스, 루키아 아이나로지두 저
27,000원
(10%↓+5%)
 
스프링 부트로 배우는 자바 웹 개발
윤석진 저
24,300원
(10%↓+5%)
 
이메일주소수집거부