SRE를 위한 시스템 설계와 구축

헤더 애드킨스, 벳시 바이어, 폴 블랭킨십, 피오트로 레반도프스키, 애나 오프레아, 애덤 스터블필드 지음

장현희 옮김

 

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

 

2022년 8월

2022 나는 리뷰어다 활동의 일곱 번째 리뷰

 

8월에 리뷰할 책은 "SRE를 위한 시스템 설계와 구축"이다.

 

우선 SRE란 무엇인가?

SRE(Secure & Reliable Systems)은 IT 운영에 대한 소프트웨어 엔지니어링 접근 방식이다.

SRE팀은 소프트웨어 툴을 활용하여 시스템을 관리하고, 문제를 해결하고, 운영 태스크를 자동화한다.

기존에 운영 팀이 수동으로 하는 경우가 많았던 태스크를 받아 엔지니어 또는 운영 팀에 넘기고, 엔지니어 또는 운영 팀은 소프트웨어 및 자동화를 사용해 문제를 해결하고 프로덕션 시스템을 관리한다.

 

간단히 SRE에 대해서 알아보았다.

 

이 책은 구글이라는 거대 IT 기업이 지금까지 수많은 서비스를 개발하고 운영해 오면서 터득한 보안과 신뢰성 관련 경험과 지식을 총망라한 책이다. 보안과 신뢰성은 서로 상충하는 부분도 있지만 궁극적으로는 안전하며 안심하고 사용할 수 있는 소프트웨어와 서비스를 제공하기 위해서는 반드시 고려해야 할 필수적인 요소이다.

 

보안과 신뢰성은 현대 소프트웨어 개발에서는 반드시 최우선으로 고려해야 할 요소이다. 이 책은 보안과 신뢰성에 어떤 문제가 발생할 수 있는지 그리고 이를 어떻게 예방하거나 대처할지에 대해 실용적이면서도 현실적인 조언을 제공한다.

 

구글은 거대 IT 기업이기 때문에 여러분들이 몸담고 있는 회사의 규모에 맞지 않는다고 느껴질 수도 있지만, 하나씩 천천히 도입해보면 보안과 신뢰성은 점점 더 견고해질 것이다.

 

책의 구성에 대해서 알아보자.

저자는 먼저 1장과 2장을 읽은 후 그 다음으로 관심이 가는 부분을 읽어보길 권한다.

이 책의 대부분의 장은 다음과 같은 내용으로 구성된 서문이나 실천적인 요약으로 시작한다.

- 문제에 대한 정의

- 각 장이 소개하는 원리와 사례를 적용하기에 적합한 소프트웨어 개발 수명 주기 단계

- 신뢰성과 보안 사이의 교집합 또는 절충

 

이 책은 업계에서 권장 사례로 여기는 많은 도구와 기술을 추천한다. 하지만 모든 것이 독자 여러분의 상황에 적합하지는 않을 것이므로 진행 중인 프로젝트의 요구사항을 평가하고, 프로젝트의 위협 요소에 적합한 솔루션을 설계하기 바란다.

 

본문 중의 인상 깊었던 부분을 살펴보자.

신뢰성과 보안은 시스템 설계의 이머전트 속성이다

전체 서비스를 마이크로서비스 같은 여러 컴포넌트로 나누는 방법을 예로 들고 있는데, 구축 과정에서 발생할 수 있거나 예상해야 하는 리스트에 대한 부분을 여러 컴포넌트로 나누고 있다. 이렇게 많은 설계 목표 간에 균형을 맞추는 일은 어렵다는 설명으로 SRE라는 것이 경험이 많이 필요한 영역이라는 것을 말하며, 그 경험에 대한 부분을 책에서 제공해주기 때문에 관련한 직무를 하고 있거나 하고자 하는 개발자라면 직접적인 도움이 될 책이라 생각된다.

 

아직,

본인에게는 조금 거리가 있는 영역이긴 하나 SRE라는 것을 알고 머릿속에 인지하면서 커리어를 쌓아간다면 목표점이 좀 더 명확해지지 않을까 하는 막연한 기대가 있다.

 

더 열심히 하자.

 

Love Yourself.

기본 문법부터 8가지 구글 앱에서 활용하는 앱스 스크립트 활용 방법을 한 권으로 정복한다!

다카하시 노리아키 지음

김모세 옮김

 

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

 

2022년 7월

2022 나는 리뷰어다 활동의 여섯 번째 리뷰

 

7월에 리뷰할 책은 "구글 앱스 스크립트 완벽 가이드"이다.

 

구글 앱스란 무엇인가?

어느새 우리 곁에 자리 잡은 스프레스시트, 지메일, 드라이브, 캘린더 등등...

MS-Office를 대체해가며 업무에 없어서는 안 될 존재가 된 구글 앱스이다.

 

2020년 기준 구글 워크스페이스를 도입한 조직은 600만 개 이상이며 액티브 사용자수는 월간 20억 명 이상으로 보고되고 있다.

 

구글 워크스페이스는 완전한 클라우드 환경 지원에 따른 훌륭한 서비스와 효과를 제공하는데, 여기에 이 능력과 잠재력을 한층 향상할 수 있는 방법이 있다.

 

바로 구글 앱스 스크립트 (Google Apps Script) - GAS 이다.

사실 본인은 이 책을 접하기 전에는 GAS라는 것이 있는지도 몰랐다. 그냥 사용했을 뿐.

 

GAS의 장점에 대해서 알아보자.

GAS를 사용하면 구글 서비스들을 자동화하고 연동할 수 있다. 스프레드시트에서 테이블과 슬라이드를 만들고, 지메일에서 알림 메일을 보내고, 드라이브의 폴더나 파일을 정리하고, 캘린더에 이벤트를 등록하고, 문서로 회의록 템플릿을 만들어 번역하는 등의 작업을 프로그래밍으로 할 수 있다.

 

그리고 GAS를 시작하는 데에 가장 큰 장점은 서버나 환경은 모두 구글이 제공하며 누구나 무료로 이용할 수 있다는 점.

 

하지만, GAS를 잘 사용하려면 공부를 많이 해야 한다. GAS의 구조와 사양, 프로그래밍 구문, 규칙이나 제약 등 많은 지식과 이를 실현할 스킬이 필요하다.

 

간단히 목차에 대해 알아보자.

1장과 2장에서는 GAS를 시작할 준비를 한다.

3장에서 7장은 GAS의 기반이 되는 자바스크립트 기초부터 객체 사양까지 차근차근 설명한다.

8장에서 15장은 실제로 구글 앱스를 다뤄본다.

16장에서 23장은 구글 서비스에서 공통으로 사용할 수 있는 노하우들을 제공한다.

 

구글 앱스 스크립트를 이용해 할 수 있는 작업들은 무궁무진하다. 구글이 제공하는 강력한 무기인 GAS를 제대로 배우고자 한다면 이 책은 좋은 가이드가 될 것이다.

 

개발자라면 좀 더 쉽게 접근이 가능하겠지만, 코드가 익숙하지 않은 직군은 초반에 어려움을 겪을 수도 있다. 하지만 걱정할 필요는 없다.

목차

목차를 보면 아시겠지만, 자바스크립트의 기본 문법부터 제어문, 함수로 이어지는 기본을 제공하고 있다.

순서에 따라서 차근차근 공부하면 잘 따라올 수 있을 것이다.

 

페이지가 많은 편이지만 꾸준히 하는 자에게는 기회가 올 것이기에 우리 오늘도 파이팅하자.

 

Love Yourself.

Learning Algorithms

조지 하이네만 지음

윤대석 옮김

 

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

 

2022년 6월

2022 나는 리뷰어다 활동의 다섯 번째 리뷰

 

6월에 리뷰할 책은 "Learning Algorithms"이다.

가볍게 300페이지 좀 안 되는 책은 알고리즘을 공부하고자 하는 이에게 좋은 책이라 생각되며,

파이썬을 조금 공부해보셨던 분이라면 더 좋은 책일 것이다.

 

저자는 소프트웨어 엔지니어링 및 알고리즘 분야에서 20여 년간 경험을 쌓은 컴퓨터공학과 교수다. 내용이 조금 딱딱하진 않을까 했지만 옮긴이 윤대석 님이 잘 옮겨주신 것 같다. 현직 엔지니어로서 알고리즘과 운영체제를 꾸준히 공부하시는 분이시고, [쓰면서 익히는 알고리즘과 자료구조]의 저자이다. 

 

알고리즘의 중요성이란 몇 번을 말해도 지나치지 않다.

컴퓨터 과학의 핵심이자 정보화 시대의 필수 요소로서, 수많은 분야의 인터넷 요청에 사용되고 있다.

컴퓨터 과학 내에서 알고리즘을 발견하고 적용할 수 있는 공부를 하는 것은 쉽지 않다.

대부분 수학적 증명과 컴퓨터 과학 개념을 강조하기에 효율적인 공부가 어렵다.

 

하지만 이 책은 코드에 당장 적용해 효율을 향상해주는 다양한 알고리즘을 소개하며 파이썬으로 작성된 예제 코드를 제공한다.

현재 파이썬은 다양한 분야에서 사용되며, 가장 인기 있고 사용자 친화적은 프로그래밍 언어 중 하나이다.

책에서는 알고리즘을 최대한 시각화하고 상세한 설명으로 독자의 개념 이해를 돕는다.

 

컴퓨터 과학에서 사용되는 자료구조와 기본 알고리즘을 알려주기에 효율적인 프로그래밍 작성이 되도록 도와줄 책이며, 코딩 인터뷰를 준비하는 개발자와 지망생에게도 좋은 가이드가 될 것이라 조지아 공과대학교의 즈비 갈릴리 명예 컴퓨팅 학장은 추천을 해주었다.

 

사실 실무에 종사중인 개발자에게 알고리즘의 학습은 꼭 필요한 공부가 아니라고 생각할 수도 있다.

하지만 알고리즘을 학습하게 되면 해결하고자 하는 문제를 다양한 시각으로 풀어내는 능력을 키울 수 있고, 좀 더 효율적인 소프트웨어를 개발할 수 있다는 장점이 있다. 이 책은 알고리즘이 어떻게 구성되는지 단계별로 꼼꼼히 설명해 기초를 실전에 잘 적용하도록 이끌어준다.

알고리즘 분야는 방대하기 때문에 이 책을 시작으로 접하면 아주 좋을 것이다.

 

책에서 다루는 내용에 대해서 살펴보자.

기본 타입을 사용해 정보를 구성하는 방법부터 시작하여, 자료구조에서 직접 작동하는 알고리즘, 스택이나 우선순위 큐와 같은 기본 추상 데이터 타입에 의존하는 복잡한 알고리즘까지 다양한 알고리즘이 어떻게 성능을 달성하는지 이해를 돕도록 하고 있다.

 

책의 본문 일부를 보자.

그림을 통해 독자의 이해를 돕고, 표를 통해 확실하게 비교를 할 수 있도록 도와주고 있다.

직접 코드를 치면서 이해를 하고, 각 챕터마다 마지막엔 연습 문제를 통해 문제 해결 능력을 키워주고 있다.

 

시중에 많은 알고리즘과 자료구조 관련한 책이 많지만, 이 책은 알고리즘 공부를 시작하는 사람에게 아주 적합한 책이 될 것이다.

비교적 친근한 파이썬이라는 언어를 사용하는 것도 큰 장점이 될 것 같다.

 

알고리즘 공부, 이젠 진짜로 시작해 봅시다.

 

Love Yourself.

+ Recent posts