| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 
| 9 | 10 | 11 | 12 | 13 | 14 | 15 | 
| 16 | 17 | 18 | 19 | 20 | 21 | 22 | 
| 23 | 24 | 25 | 26 | 27 | 28 | 29 | 
| 30 | 
- 개발회고
 - 로딩UI
 - 구글CSS
 - 파이썬
 - 투두리스트
 - 코딩규칙
 - css규칙
 - html제거
 - 프레임워크
 - 자기개발
 - 코딩가이드
 - Vue.js
 - CSS로딩
 - 뉴스수집
 - vuejs입문
 - google style guide
 - CSS애니메이션
 - MariaDB
 - vueJS
 - css rule
 - vue-cli
 - to do list
 - 코딩컨밴션
 - python
 - javascript
 - 스타일가이드
 - 구글스타일가이드
 - 웹스크래핑
 - @keyframes
 - 자바스크립트
 
- Today
 
- Total
 
코드공부방
가상 면접 사례로 배우는 대규모시스템 설계 기초 본문

(책 제목부터 가슴이 웅장해진다.)
면접을 준비하려는 의도는 아니었지만 전산개발 프로젝트를 좀 더 이해해보고자 선택한 책이다. 처음에는 서버, 데이터베이스, 계층, 큐, CDN, 로그, 네트워크 등 이론적인 부분을 나름 쉽게 설명하였고, 책 중반부를 넘어가면 URL단축기, 웹 크롤러, 알림 시스템, 뉴스 피드 시스템, 채팅, 유튜브, 구글 드라이브, 검색어 자동완성 등의 시스템 설계하는 방법을 설명해준다. (흥미롭지 않은가?)
그리고 각 설계의 시작은 아래와 같이 가상면접을 보는 것처럼 시작한다. (웹 크롤러 설계의 가상면접 내용이다.)
지원자 : 이 크롤러의 주 용도는 무엇인가요? 검색엔진 인덱스 생성용인가요? 아니면 데이터 마이닝? 아니면 그 외 용도인가요?
면접관 : 검색엔진 인덱싱에 쓰일 것입니다.
지원자 : 매달 얼마나 많은 웹페이지를 수집해야하나요?
면접관 : 매달 10억개의 웹페이지를 수집해야합니다.
지원자 : 수집한 웹페이지는 저장해야하나요? 맞다면 얼마나 저장해야하나요?
면접관 : 네, 저장해야하며 5년간 저장해야합니다.
...
위처럼 가상면접을 통해 재미와 이해를 쉽게 할 수 있게 하였고, 이어서 대략적 설계 > 상세 설계 > 문제발생 > 문제해결 > 시스템 시나리오 > 마무리(추가 가상면접 질문) 순으로 시스템 설계를 설명한다. 예제의 시스템들이 대부분 거의 매일 사용중인 시스템이다보니 흥미로웠으나 내용이 내용인지라 깊게 들어가는 부분에서는 이해하기 힘든 부분도 없지않았다. (현직 개발자라면 이해가 쉬울테니 더 재미있게 볼 수 있을만한 책으로 생각된다.)
'자기개발 > 독서반' 카테고리의 다른 글
| 쉽게 시작하는 타입스크립트 (0) | 2023.10.07 | 
|---|---|
| 모두의 데이터분석 with파이썬 (0) | 2023.10.06 | 
| 처음 리더가 된 당신에게 (0) | 2023.10.04 | 
| 프레임 : 나를 바꾸는 심리학의 지혜 (0) | 2023.06.02 | 
| 데이터로 말해요! : 데이터 중심의 사고, 기획, 보고의 기술 (0) | 2023.05.23 |