구글 엔지니어는 이렇게 일한다 - 구글러가 전하는 문화, 프로세스, 도구의 모든 것 O'reilly 오라일리 (한빛미디어)
타이터스 윈터스.톰 맨쉬렉.하이럼 라이트 지음, 개앞맵시 옮김 / 한빛미디어 / 2022년 5월
평점 :
장바구니담기


전 세계 개발자가 극찬한, 소프트웨어 엔지니어의 바이블이라고 칭송 받는 도서가 국내에

상륙하고 말았다. 해당 도서는 아마존 소프트웨어 분야 베스트셀러로서 명실공히 해외 독

자들에게 사랑 받고 인정 받고 있는 책이다. 현직 개발자라면 누구나 한 번쯤은 필독해야

할 도서라고 감히 언급할 수 있을 정도다. 오늘은 그 주인공인 '구글 엔지니어는 이렇게

일한다'라는 책에 대해 이야기를 풀어 나가려고 한다. 

구글은 검색 엔진 기술로 현재에 이르기까지, 자타공인 내로라하는 전 세계 유슈의 빅테크

기업임을 모르는 이는 없을 것이다. 구글의 엔지니어 출신 저자들이 한데 모여 저술한 이

책을 통해 도대체 무엇을 말하고 싶은 것일까? 적지 않은 분량의 지면을 통해 소프트웨어

엔지니어링에 대한 이모저모를 이야기하고 있는 이 책은 우리에게 어떤 가치를 주고 있을까

?


본 도서는 프로그래밍과 소프트웨어 엔지니어링의 차이점을 묻는 것으로 서막을 열어 나

간다. 그동안 프로그래밍을 숱하게 해 왔지만 소프트웨어 엔지니어링이란 도대체 우리에

게 어떤 의미였을까? 저자는 단순하지만 근원적인 물음에 대한 대답을 제공하며, 이 책

전반을 관통하는 소프트웨어 엔지니어링의 본질적 가치에 대해 깊은 통찰을 제공하고 있

다. 그렇다. 이 책은 프로그래밍이 아니라 소프트웨어 엔지니어링을 이야기하고 있으며,

소프트웨어 엔지니어링의 중심과 그 주변을 둘러쌓고 있는 여럿 요소들을 다루고 있는 책

이다. 

 

프로그래밍과 소프트웨어 엔지니어링이 같지 않음을 이해하게 되고 나서는 본격적으로 올

바르게 자리잡아야 할 소프트웨어 엔지니어링 문화에 대해 이야기가 전개된다. 팀워크를

위시하여 팀과 조직 전체적으로 전파되고 공유되어야 할 올바른 지식 공유 문화에 대한

서술을 통해, 다시 한번 소프트웨어 엔지니어링은 개인이 아닌 조직이 함께 수행하며 이

끌어 나가는 것임을 명징하게 이해할 수 있게 된다. 이어서 다양성의 필요성과 팀을 리딩

하며 조직이 성장할 수 있도록 이끌기 위한 원칙과 베스트 프랙티스에 대한 주요한 팁을

제공하며, 엔지니어링 생산성을 측정하는 이유와 그 가치에 대한 언급을 통해 팀이 한층

성장할 수 있는 문화적 토양이 무엇인가에 대한 인사이트를 얻을 수 있는 기회를 갖게된

다.

 

프로세스 파트에서는 코딩 컨벤션, 코드 리뷰, 문서 자료, 테스트와 폐기 등에 대한 세부

주제를 놓고 보다 효율적이고 혁신적으로 소프트웨어 엔지니어링 프로세스가 안착할 수

있는 실질적인 팁을 제공하며 다양한 엔지니어링 프랙티스에 대한 깊이 있고 풍부한 영감

을 획득할 수 있는 계기가 마련된다. 

 

마지막으로 도구 파트에서는 버전 관리를 비롯하여 Code Search, 빌드 철학, 정적 분석,

의존성 관리, 대규모 변경, CI/CD 등, 코드와 밀접한 주제를 통해 코드가 어떻게 다뤄져

야 하며 보다 효율적으로 작성되고 빌드되며 분석되어, 쉽게 개선하고 원활하게 프러덕션

환경에 배포될 수 있는 일련의 흐름을 면밀하고 심층적으로 풀어 나가고 있다. 

 

구글 출신 엔지니어 저자들이 들려 주는 이야기가 전혀 지루하지 않고 아름답게 느껴졌음

은 나만의 착각이었을까? 적지 않은 지면을 통해 저자들이 이야기 하고 있는 소프트웨어

엔지니어링에 대한 정수를 맛볼 수 있었고, 그 본질적 가치를 온몸으로 깨달을 수 있었다

. 이 도서를 통해 구글이 추구하는 가치를 오롯이 배울 수 있었던 것도 덤이지만, 소프트

웨어 엔지니어링의 중심과 주변부에 대한 담론이 이렇게 심오하고 철학적일 수 있었는지

몰랐음을 알게 되었고 진정한 소프트웨어 엔지니어링을 수행하기 위한 마인드셋과 시야를

새롭게 갖출 수 있었던 것이 최고의 수확이라고 할 수 있겠다. 소프트웨어 엔지니어링의

본질을 알고 싶은 사람이라면 이 책과 함께 시작하기를 강력히 추천한다. 


P.S  한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
찐 UXer가 알려주는 UX/UI 실무 가이드
조은정 지음 / 한빛미디어 / 2022년 3월
평점 :
장바구니담기


UX/UI라는 용어는 개별 단어(UX,UI)가 한 세트로 묶여 통칭되고 있는 개념이다. 보통 IT 세계에서 특정 프러덕트를 만들 때 UX/UI라는 용어가 사용되고 있으며 UX와 UI는 불가분의 관계로 상호 작용한다. 오늘은 UX/UI에 대해 다루는 서적에 대한 리뷰를 작성해 보려고 한다.


IT 업계에 종사하고 있지만 UX/UI에 대해서는 크게 신경 쓸 일이 없는 분야에 몸을 담고 있어, 나에게 UX/UI는 머나먼 나라의 얘기처럼 여겨지곤 했다. 하지만 이 책을 읽음으로써 UX/UI는 비단 특정 IT 프러덕트에 한해 적용되는 개념이 아니라 우리 삶의 곳곳에 활용될 수 있는 도구라는 생각을 갖게 되었다. 우리 주변에 존재하는 모든 것들은 UX와 UI가 적용된 하나의 산물이며, UX와 UI의 중심엔 바로 '사용자'가 위치하고 있음을 새삼스레 다시 한번 느끼게 되었다. 사용자라는 대상은 어떠한 관점에서 바라 보았을 때 막연한 개념이지만, 그 막연함이 갖고 있는 특성에 기인하여 UX/UI가 빛을 발하기 위해선 심리학과,인지과학 등의 학문적 연구와 다양한 이론, 방법론이 동원된다는 사실에 UX/UI가 그저 단순한 도구가 아님을 깨닫게 된다. 

 

이 책은 사용자 경험과 UX의 본래적인 의미에 대해 현실 세계의 다양한 예시를 열거하며 UX/UI 입문자에게 상세한 이해를 제공한다. 난해하고 복잡한 용어로 개념을 설명하는 것이 아니라 현실 세계와 접목된 실질적인 예시를 동원하여 풀어 나감으로써 입문자를 타겟으로한 독자를 충분히 배려하고 있음을 생생하게 절감하게 된다. 

 

저자는 프러덕트를 만들어 나가기 위해 필요한 프로젝트 준비, 시작, UX 기획에 대한 일련의 과정을 상세하게 언급하며 자연스럽레 UX/UI가 프러덕트에 어떻게 기여하고 녹아 들어가는지에 대한 여과 없는 설명을 제공하고 있다. 

 

이어서 좋은 UI를 위한 설계 원칙을 비롯해서 다양하고도 풍부한 실천적 사례를 늘어 놓으며 UI의 정수를 맛볼 수 있는 기회를 얻을 수 있게 된다. 무엇보다 좋았던 점은 무인 매장 프로젝트라는 가상 프로젝트를 하나 상정하여 독자들로 하여금 책 전반을 걸쳐 관통하고 있는 좋은 UX/UI란 무엇인가라에 대한 본질적 의미를 다시 한번 깨달을 수 있는 소중한 시간을 얻게 해 준다. 

 

본 도서를 읽고나서 사용자를 중심으로 어떻게 하면 그들이 겪고 있는 페인 포인트를 제거하고 좋은 환경을 위한 개선에 기여할 수 있을까라는 물음을 갖게 되었고, 이 책에서 배우고 얻게 된 좋은 UX/UI는 무엇일까에 대한 물음의 답을 차용하여 끊임 없는 개선을 위한 노력을 경주하고자 한다. 좋은 UX/UI가 과연 무엇일지에 대한 물음을 갖고 있는 분들은 반드시 이 책을 통해 그에 대한 답을 구할 수 있게 되길 기원한다. 


P.S 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
자바 마이크로서비스를 활용한 SRE - 기업에서 신뢰할 수 있는 마이크로서비스를 위한 패턴
조너선 슈나이더 지음, 정병열 옮김 / 한빛미디어 / 2022년 3월
평점 :
장바구니담기


SRE의 본원지는 구글이지만, 넷플릭스에서 그들의 독창적인 조직 문화와 추구하는 지향점을 녹여낸 독특한 SRE 활용법을 다룬 도서가 세상에 빛을 보게 되었다. '자바 마이크로서비스를 활용한 SRE'라는 책이 바로 오늘의 주인공이다. 넷플릭스는 AWS로 모든 인프라를 마이그레이션 하고 나서 혹독한 대가를 치르는 과정을 거쳤다. 그것도 클라우드 플랫폼에 인프라를 그냥 이전한 것이 아니라 MSA 구조로 근본적인 변화를 가하고 쇄신을 꾀하는 절차가 포함되었다. 그러나, 클라우드 환경에 모든 자원이 이관되었다고 해서 예상한대로 애플리케이션이 동작한다고 생각하면 큰 오산이다. 예기치 못한 숱한 변수와 난관이 도처에 도사리고 있으니, 클라우드 세계에 존재하는 애플리케이션은 잘 운영되면 천국을 맞이하지만 그렇지 못한 경우에는 지옥을 맛보게 되는 극한 상황에 내몰릴 수 밖에 없는 숙명을 갖게된다. 





이러한 현실 속에서 넷플릭스는 애플리케이션의 강건함을 보장하는 다양한 방법을 모색했고, 이른바 '카오스 엔지니어링' 기법을 활용하여 인프라의 가용성과 신뢰성을 보증하기 위한 패러다임의 변화를 주도했다. 거기에 더하여 넷플릭스 조직의 독특한 문화에 기반한 SRE를 활용하여 다양한 장애를 사전에 대비하고 여럿 이슈에 대응하며 트러블슈팅할 수 있는 시스템을 갖추게 되었다. 


이 책에서 꽤 많은 분량으로 다뤄진 주제는 바로 '애플리케이션 메트릭'이다. 애플리케이션의 상태를 다양한 각도와 여러 관점에서 바라보며 애플리케이션이 장애를 맞이하거나 이슈를 토해내는 지점을 명확하게 파악할 수 있는 노하우를 자연스레 터득하게 된다. 자바 애플리케이션을 기반으로 하기 때문에 자바 소스 코드를 이해할 수 있는 기본적인 역량이 필요하지만, 수많은 예시와 실질적인 지침들은 독자들에게 명쾌한 애플리케이션 운영의 첩경으로 인도하게 된다. 프로메테우스 같은 애플리케이션 모니터링에 익숙하지 않은 경우엔, 내용 자체가 다소 무겁게 다가올 수 있으나 어떠한 메트릭을 통해 애플리케이션의 상태를 가늠할 수 있는지에 대한 감을 익히는 것만으로도 큰 도움이 되지 않을까 생각한다. 


이윽고 차트의 중요성에 대해 이 책은 서술하고 있으며 차트라는 유용한 도구를 통해 어떻게 하면 좀더 효율적인 결과를 획득할 수 있는지에 대한 유용한 팁을 얻을 수 있게 된다. 계속해서 클라우드 환경에서의 CI를 보다 안정적으로 활용할 수 있는 내용을 함께 다루며, 소스코드에 대한 관찰 가능성, 트래픽 관리 등을 통해 SRE가 지향하는 가치를 온전히 실현하고 실천할 수 있는, 둘도 없는 중요한 가이드를 여실히 제공 받게 된다.  


전반적으로 내용 자체가 꽤 무겁게 느껴질 수 있지만, 인내심을 갖고 끝까지 책을 읽어 나간다면 분명 적지 않은 소득을 얻을 수 있는 도서임엔 틀림 없다고 생각한다. SRE에 관심이 있거나, 클라우드 환경에서 자바 애플리케이션을 운영하고 있는 개발자, 운영자들에게 이 책을 적극 추천한다. 


P.S 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
SRE를 위한 시스템 설계와 구축 - 구글이 공개하는 SRE 모범 사례와 설계, 구현, 운영 노하우
헤더 애드킨스 외 지음, 장현희 옮김 / 한빛미디어 / 2022년 1월
평점 :
장바구니담기


시스템의 강건함을 보증하는 지표는 여럿 존재하지만, 그중 두 개를 꼽으라면 단연 보안성과 신뢰성이다. 보안성이 결여된 시스템은 결코 안전한 시스템일 수 없으며 신뢰성에 문제가 있는 서비스는 사용자의 외면을 받기 마련이다. 결국 보안성과 신뢰성을 바탕으로 한 시스템과 서비스를 제공하기 위해 부단히 노력해야하는 수 밖에 없다. 보안성과 신뢰성이라는 속성이 공히 온전히 동작할 때만 건강한 시스템을 유지할 수 있는 것이다. 


SRE(Site Reliiability Engineering)라는 단어는 IT 업계에 종사하는 이들에게도 결코 흔하지 않은 용어이다. 이 용어는 최초에 구글에서 고안되었으며, 실제 구글에서는 SRE를 바탕으로 시스템을 운용하고 있고 이러한 추세는 전 세계적으로 전파되고 있는 상황이다. Devops의 실체가 모호한 추상적인 개념이라면, SRE는 Devops라는 이념이 제시하는 실천적인 방향을 제시하는 하나의 엔지니어링 프랙티스로 묘사되고 있는 실정이다. 하지만 용어의 정의가 무엇이 되었든 중요한 것은, SRE가 지향하는 목표는 '강건한 시스템을 설계하고 그 바탕위에 구축된 시스템을 운용하며 유지될 수 있도록 노력하는 것'에 있다고 생각한다. 오늘은 SRE의 실천 이념을 바탕으로 세상에 그 모습을 드러낸 'SRE를 위한 시스템 설계와 구축'이라는 도서에 대해 얘기를 나누고자 한다. 




이 책은 실제 구글에서 활동한 전문가들에 의해 출판되었고, 그들의 생생한 경험에 입각한 내용이 도서 전반에 녹아 있기 때문에 독자들로 하여금 SRE와 관련된 서술에 대해 한층 신뢰성을 높이고 있다고 해도 과언이 아니다. 


 

책의 도입부는 보안성과 신뢰성이 시스템에 어떠한 영향을 미치는가에 대해 운을 떼며 서막을 알린다. 이윽고 시스템 설계와 관련된 중요하면서도 결코 간과할 수 없는 사상과 엔지니어링 프랙티스에 대해 이야기를 이어 나간다. 이를테면 최소 권한의 원칙과 이해 가능성, 범위의 변화, 회복성, 복구와 관련 된 다양한 저자들의 생각과 실제 경험에서 빚어진 실증 사례가 언급되며 보안성과 신뢰성을 기반으로 한 설계의 중요성을 역설한다. 



시스템 설계 이후의 시스템 구현, 시스템 유지 보수에 이르는 일련의 시스템 생애주기에 대한 실천적이고 유용한 다양한 팁이 여과 없이 제공되며 책의 후반부에 이르러서는 조직과 문화에 대한 주제로 서사는 마무리 된다. 결국 보안성과 신뢰성을 기반으로한 시스템 구현에 있어, 그 중심에 있는 사람과 이를 둘러싼 조직, 조직의 담론을 형성하는 문화의 중요성은 시스템이 아닌 사람에게 초점이 맞춰지며 담대한 여정이 종지부를 찍게 된다. 

 

다시 한번 이 글의 처음으로 돌아가, 시스템의 강건함을 보장하기 위해서는 보안성과 신뢰성이 무엇보다 중요함에 대해 강조하고자 한다. 결함 없는 완전한 시스템은 이 세상에 존재하지 않기에, 제대로 굴러 가는 온전한 시스템을 설계하고 운영하며 유지하기 위해서는 보안성과 신뢰성을 기반으로 한 엔지니어링 프랙티스가 중요함을 절실히 깨닫게 해 주는 계기가 되었다. SRE의 정수를 온전히 맛볼 수 없지만, 강건한 시스템을 구현하는데에 관심이 있는 독자라면 이 책과 그 여정을 시작하길 바란다. 


P.S 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
MongoDB 완벽 가이드 - 실전 예제로 배우는 NoSQL 데이터베이스 기초부터 활용까지, 3판
크리스티나 초도로우 외 지음, 김인범 옮김 / 한빛미디어 / 2021년 3월
평점 :
장바구니담기


DB 세계에 있어 RDB는 언제나 절대적 지위를 고수해 왔고, 그 권좌를 공고히 해왔다. 이는 DB 랭킹을 통해서도 여실히드러난 사실이며, RDB의 독주는 제법 지칠줄 모르는 형국에 가깝다. 하지만 어느 순간 부터 RDB가 아닌 DB가 RDB의 기세를 위협하는 상황이 연출되고 있으며, 그 영향력이 점차 커져만 가고 있는 실정이다. RDB가 아닌 DB, 이른바 NoSQL로 대변되는 DB가 DB 왕국의 패권에 도전하며 그 위용을 매섭게 드러내고 있는 현상을 맞이하게 되었다. 

 

수 많은 NoSQL 중, 도큐먼트 지향의 DB임을 자처하는 DB가 있으니 바로 MongoDB가 그 중심부에 놓여 있다. MongoDB는 오픈소스 DB로서 온프레미스 환경 뿐만 아니라 최근 클라우드 환경에서도 엄청난 성장세를 이뤄 나가며 맹위를 떨쳐 나가고 있는 상황이다. 태생적으로 Scale out을 지향하며 탄생한 MongoDB는 DB 랭킹에서도 상위권을 고수하며 NoSQL 세계의 선봉에 서 있는 독보적 위치의 DB인 셈이다. 오늘은 한빛미디어에서 출판한 MongoDB와 관련 된 서적에 대해 이야기를 풀어 나갈까 한다.






오늘 소개하는 본 서적은 'MongoDB 완벽 가이드'로서 벌써 3판으로 재탄생한 책이다. 초판 발행 이후 그동안의 변화를 여실히 반영하였기에, 최신 환경의 MongoDB를 다루는데 있어 아주 적합한 책이라 할 수 있겠다. 

 

이 책은 MongoDB에 대한 소개를 시작으로 MongoDB의 기능과 특징, 철학에 대한 본질적인 내용을 언급한다. 챕터 2에서는 MongoDB의 기본 개념과 MongoDB를 시작하는 방법, 쉘, 데이터 타입 등에을 다루며 본격적인 MongoDB 사용에 대한 토대를 쌓을 수 있게 가이드 하고 있다. 이어서 도큐먼트 생성,갱신, 삭제, 쿼리 등에 대한 내용을 통해 MongoDB를 다룰 수 있는 기본 중의 기본을 학습하게 된다.

 

파트 2에서는 MongoDB 개발과 관련 된 내용을 다루게 되는데, 인덱싱, 컬렉션 유형, 집계 프레임워크, 트랜잭션, 애플리케이션 설계 등에 대한 세부적인 가이드를 제공 받고 이후의 파트에서는 복제, 샤드와 같은 MongoDB의 가용성 및 데이터 처리의 성능을 향상 시킬 수 있는 속성에 대해 학습하게 된다. 파트 4,5에서는 MongoDB를 운영 및 관리하는 입장에서 반드시 필요한 개념과 실질적이며 유용하고 다양한 팁을 얻을 수 있는 기회를 여실히 제공 받게 된다. 

 

도큐먼트 지향의 DB 자체가 RDB와 전혀 다른 구조이고, 사상 및 철학 자체가 여타의 RDB와 근본적으로 다르기 때문에 학습 자체가 까다로울 수 있지만, 호기심을 갖고 학습에 임하면 전혀 다른 관점에서 MongoDB를 맛볼 수 있게 되고 MongoDB가 선사하는 다채로운 특징과 속성에 대해 계속해서 관심을 가지지 않을 수 없게 되는 오묘한 매력을 느끼게 되는 것 같다. 국내에 MongoDB와 관련 된 책이 거의 없는 상황 속에서, 이 책은 MongoDB 입문자에게 더할 나위 없이 훌륭한 가이드로 자리매김 하리라 생각한다. MongoDB를 알고 싶은 자, MongoDB를 궁금해 하는 자, 이 책으로 MogoDB를 향한 여정을 시작하시길. 


P.S 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo