분류 전체보기 143

[비개발서적] 마흔에 읽는 쇼펜하우어: 독서록

서론이제 마흔이 얼마 남지 않았다. 십대 때를 생각하면 마흔의 나이는 정말 어른처럼 보였다. 그때는 뭐든 커 보일 나이였으니까. 뒤돌아 생각해 보면, 그때 어른들은 모두 ‘어른인 척’을 하고 있었던 것 같다. 그저 어쩌다 보니 아이를 낳아 부모가 됐고, 어쩌다 보니 가정을 책임지게 되었고, 어쩌다 보니 희생하게 되어 버린. 그렇게 어른이라는 이유만으로 모든 것을 떠안지 않았던가. 이제 시대가 변했다. 사회생활이 늦어지면서 결혼도 점점 늦어지기 시작했다. 자연스럽게 부모가 되는 시기도 미뤄지고, 어른의 경계는 점점 뒤로 밀려나고 있다. 나는 언제쯤 어른이 될까? 아직 마음속에 있는 소년을 떠나보내기 싫어하는 것 같다. 장자는 마흔이면 불혹이라 하였다. 인생의 흔들림을 극복하고, 자신의 길을 굳건히 걸어갈 ..

Book Notes 2026.02.02

[비개발서적] 유난한 도전 - 경계를 부수는 사람들, 토스팀 이야기: 독서록

서론 나는 책을 고를 때 제목도 중요하지만, 부제도 유심히 보는 편이다. ‘경계를 부순다’는 게 어떤 의미일까? 처음 이 책의 제목이 눈에 띄었지만, 부제가 나의 궁금증을 해결해 줄 수 있을지 궁금하기도 했다. 이 책은 제3자의 시선에서 토스팀이 어떻게 성장했는지를 서술한다. 이미 10년도 지난 이야기부터 시작하기 때문에 인터뷰와 자료 수집에 많은 노력이 들어갔다고 한다. 그럼에도 저자는 자신이 속한 토스팀이 어떻게 지금의 규모와 서비스를 만들 수 있었는지를 최대한 과감하게 기록하고 싶어 했다는 인상을 받았다. 이 책을 읽기 전까지 토스가 비바리퍼블리카의 첫 번째 프로젝트인 줄 알았다. 그런데 알고 보니 토스는 무려 아홉 번째 프로젝트였다. 이렇게 훌륭한 서비스를 만들기까지 그렇게 많은 시행착오가 있었다..

Book Notes 2026.02.01

[개발서적] 도메인 주도 설계 첫걸음 4부(ch16) 요약 (2)

Ch16. 데이터 메시이번 장에서는 분석 데이터 관리 아키텍처(analytical data management architecture), 일명 메시(data mesh)에 대해서 배워보자. [분석 데이터 모델과 트랜잭션 데이터 모델의 비교]분석 데이터는 회사에 축적된 데이터를 활용하여 비즈니스를 최적화하는 방법에 대한 통찰을 얻고 고객의 요구사항을 더 잘 이해하며 기계 학습(ML) 모델의 훈련을 통해 자동으로 의사결정을 내릴 수 있는 힘을 준다. 분석 모델(OLAP)과 실시간 데이터 모델(OLTP)은 서로 다른 유형의 사용자를 지원하고, 다른 종류의 유스케이스를 구현하며, 그래서 결국에는 다른 설계 원칙을 따른다. 실시간 데이터 모델은시스템의 비즈니스 도메인에 속한 다양한 엔티티를 중심으로 구축되고, 이들..

Book Notes 2026.01.14

[개발서적] 도메인 주도 설계 첫걸음 4부(ch14~15) 요약 (1)

Ch14. 마이크로서비스[서비스란 무엇인가?]OASIS에 따르면, 서비스는 미리 정의된 인터페이스를 사용해 하나 이상의 역량에 접근하기 위한 메커니즘이다.여기서 미리 정의된 인터페이스란 서비스로부터 데이터를 넣고 빼는 모든 메커니즘을 말한다. 랜디 숍(Randy shoup)은 서비스의 인터페이스를 외부에 노출되는 시스템 영역(front door)에 두는 것을 좋아한다. 서비스의 퍼블릭 인터페이스는 서비스 자체, 즉 서비스가 노출하는 기능을 정의한다. 이를 염두에 두고 마이크로서비스의 정의를 알아보자. [마이크로서비스란 무엇인가?]마이크로서비스는 자신의 마이크로 퍼블릭 인터페이스, 즉 마이크로 프론트 도어(micro-front door)에 의해 정의되는 서비스다. 마이크로서비스는 자신의 데이터베이스를..

Book Notes 2026.01.13

[개발서적] 도메인 주도 설계 첫걸음 3부(ch12~13) 요약 (2)

Ch12. 이벤트스토밍 이번 장에서는 이벤트스토밍에 대해 알아보자.이벤트스토밍은 사실상 도메인 지식을 공유하고 유비쿼터스 언어를 구축하는 방법 중 하나다. [이벤트스토밍이란?]이벤트스토밍은 사람들이 모여 비즈니스 프로세스에 관해 브레인스토밍을 하고 신속하게 모델링 하기 위한 로우테크 활동이다.어떻게 보면 비즈니스 도메인 지식을 공유하기 위한 전술적 도구다. 이벤트스토밍에는 범주(scope), 즉 참가자가 다룰 비즈니스 프로세스가 있다.참가자는 포스트잇을 활용하여 일련의 도메인 이벤트를 시간의 흐름에 따라 표현한다. 모델의 모든 구성요소가 비즈니스 프로세스의 작동 방식을 설명할 때까지 단계별로 액터, 커맨드, 외부 시스템 등의 개념을 모델에 추가하여 개선한다. [이벤트스토밍에 무엇이 필요한가?]이벤트스토밍..

Book Notes 2026.01.11

[개발서적] 도메인 주도 설계 첫걸음 3부(ch10~11) 요약 (1)

Ch10. 휴리스틱 설계 이번 장은 1부와 2부의 가교 역할을 한다.우선, 휴리스틱의 정의가 무엇인지부터 알아보자. [휴리스틱]휴리스틱은 모든 상황에 맞게 보장되고 수학적으로 검증된 규칙이 아니다.오히러 완벽한 것을 보장하지 않지만 당면한 목적에 충분할 만큼의 경험에 기반한 규칙이다.즉, 휴리스틱은 가장 중요한 단서에서 느껴지는 것에 집중하여 효과적으로 문제를 해결하는 접근법이다. [바운디드 컨텍스트]바운디드 컨텍스트의 최적의 크기는 무엇일까? 여러 바운디드 컨텍스트에 영향을 미치는 소프트웨어의 변경은 비싸고 수많은 조율이 필요하다. 바운디드 컨텍스트의 경계를 무효화하는 변경은 일반적으로 비즈니스 도메인이 잘 알려져 있지 않거나 비즈니스 요구사항이 빈번하게 바뀔 때 발생한다. 넓은 바운디드 컨텍스트의 ..

Book Notes 2026.01.11

[개발서적] 도메인 주도 설계 첫걸음 2부(ch7~9) 요약 (2)

Ch7. 시간 차원의 모델링 [이벤트 소싱]프레드 브룩스의 추론을 사용해서 이벤트 소싱 패턴을 정의하고, 이것이 기존의 모델링과 데이터 저장 방식 측면에서 어떻게 다른지 이해해보자. 먼저 표 7-1의 데이터를 살펴보자. 이것은 텔레마케팅 시스템에서 잠재 고객 또는 리드를 관리하는데 사용하는 테이블임에 분명하다. 다양한 상태를 조사하여 각 잠재 고객의 처리 주기를 가정할 수도 있다.판매 흐름은 NEW_LEAD 상태의 잠재 고객과 함께 시작한다.판매 전화는 제안에 관심이 없는 사람(리드가 CLOSED), 후속 전화 예약(FOLLOWUP_SET), 또는 제안 수락(PENDING_PAYMENT)으로 종료될 수 있다.결제가 성공하면 리드가 고객으로 전환(CONVERTED)된다. 결제가 실패할 수도 있다(PAYM..

Book Notes 2026.01.11

[개발서적] 도메인 주도 설계 첫걸음 2부(ch5~6) 요약 (1)

Ch5. 간단한 비즈니스 로직 구현 비즈니스 로직은 소프트웨어에서 가장 중요한 부분이며, 애초에 소프트웨어를 구현한는 이유이기도 하다.모든 하위 도메인마다 전략적 중요성과 복잡성은 다르다. 이번 장에서는 비즈니스 로직 코드를 모델링하고 구현하는 다양한 방법에 대해 검토해 보자. [트랜잭션 스크립트] “프레젠테이션으로부터 단일 요청을 처리하는 여러 프로시저를 모아서 비즈니스 로직을 구현하라”- 마틴 파울러 시스템의 퍼블릭 인터페이스는 그림 5-1과 같이 사용자가 실행할 수 있는 비즈니스 트랜잭션의 모음으로 볼 수 있다.이러한 트랜잭션은 시스템에서 관리하는 정보를 검색, 수정 또는 둘 다 할 수 있다. 트랜잭션 스크립트 패턴은 프로시저를 기반으로 시스템의 비즈니스 로직을 구성하며, 각 프로시저는 퍼블릭 인터..

Book Notes 2026.01.11

[개발서적] 도메인 주도 설계 첫걸음 1부(ch3~4) 요약 (2)

Ch3. 도메인 복잡성 관리 프로젝트의 성공을 보장하려면 소프트웨어 엔지니어로부터 도메인 전문가에 이르기까지 모든 이해관계자가 의사소통에 사용할 수 있는 유비쿼터스 언어를 개발하는 것이 중요하다. 우리의 목표는 유비쿼터스 언어를 사용하여 소프트웨어 설계의 의사결정을 내리는 것이기 때문에 언어는 명확하고 일관성이 있어야 한다.그러나 같은 비즈니스 도메인이어도 도메인 전문가마다 서로 다른 모델을 사용할 수 있다. 예제를 살펴보자. [일관성 없는 모델]2장의 텔레마케팅 회사의 예를 보자. 회사의 마케팅 부서는 온라인 광고를 통해 리드(lead)를 생성한다.영업 부서는 잠재고객이 제품이나 서비스를 구매하도록 유도하는 역할을 하며, 이것이 그림 3-1에 나와 있다. 도메인 전문가의 언어를 살펴보면 특이한 점이..

Book Notes 2026.01.10

[개발서적] 도메인 주도 설계 첫걸음 1부(ch1~2) 요약 (1)

Ch1. 비즈니스 도메인 분석하기 도메인 주도 설계 수업 시간에 이 내용을 가르치면 학생들이 “우리가 이것을 알아야 하나요?”라고 이야기한다.정답은 “그렇다”이다.효과적인 솔루션을 설계하고 구축하기 위해서는 그것의 바탕이 되는 문제를 이해해야 한다. [비즈니스 도메인이란?]비즈니스 도메인이란 회사가 고객에게 제공하는 서비스를 말한다. 예를 들면패덱스는 배송 서비스를 제공한다.스타벅스는 커피로 가장 잘 알려져 있다.월마트는 가장 널리 알려진 소매업체 중 하나다.기업은 여러 비즈니스 도메인을 운영할 수 있다.예를 들어 아마존은 소매와 클라우드 서비스를 모두 제공한다.우버는 차량 공유 회사이면서 음식 배달 및 자전거 공유 서비스도 제공한다. 회사는 비즈니스 도메인을 자주 변경할 수도 있다. [하위 도메인이란?..

Book Notes 2026.01.10