
Designing Data-Intensive Applications
Martin Kleppmann, Chris Riccomini
데이원 멤버들이 이 책에 남긴 기록 6개 중 최근 3개를 소개합니다.
최근 멤버들이 남긴 기록
The limits of my language mean the limits of my world. Data models are perhaps the most important part of developing software, because of the profound effect they have not only on how the software is written, but also on how we think about the problem that we are solving.
개발은 결국 현실을 해석하는 하나의 언어를 만드는 행위라는 생각이 든다. 적절한 데이터 모델이라는 언어를 선택하고 설계할 수 있는 사람이라는 점에서, 항상 문제가 무엇인지 명확히 정의하고 그 문제들을 풀기 위한 데이터 구조나 관계에 대한 설계를 하는 것이 중요하다 생각한다.
2026년 4월 11일
by deliberately inducing faults, you ensure that the fault-tolerance machinery is continually exercised and tested, which can increase your confidence that faults will be handled correctly when they occur naturally.
우리서비스는 내결함성을 만족하고자 특정 서비스가 여러 다중서버로 분산처리되는데, 관리하는 인스턴스 여러개가 한번에 죽거나 부하를 받으면 어떻게 되지? fault injection 한번 해보고 싶다. 물론 프로덕션은 아니다 하하하 사실 몰래해보고 싶긴하다 ㅎ
2026년 3월 21일
However, these all require an investment of time and money, and in the pragmatic reality of everyday business, organizations often prioritize revenue-generating activities over measures that increase their systems’ resilience against mistakes. Then, when a preventable mistake inevitably occurs, blaming the person who made the mistake does not make sense; the problem is the organization’s priorities.
소프트웨어에서 미리 예방할 수 있는 문제가 생겼다면, 그 책임은 개인보다 안전성에 대한 투자를 뒤로 미룬 조직의 우선순위에 있다는 내용이다. 최근에 우리 제품에서 핵심 가치로 여기는 기능이 제대로 동작하지 않았던 일이 있었다. 가장 큰 문제는 이 기능이 제대로 동작하지 않는 것을 아무도 인지하지 못하고 있었다는 점이다. 공격적인 성장을 위해 기능 개발을 우선시 하는 것도 중요하지만, 지금 우리가 가지고 있는 무기를 제대로 관리하는 것도 매우 중요하다고 생각한다. 그럴듯한 포장으로 일회성 구매를 만들어낼 수는 있겠지만, 그것만으로는 지속가능한 신뢰를 쌓기 어렵다고 생각한다. 그래서 새로운 기능 개발과 핵심 기능의 유지보수는 어느 하나만 우선할 일이 아니라 반드시 병렬적으로 함께 가야 한다. 나는 이 밸런스를 유지하는 것이 소프트웨어를 만드는 데 있어 중요한 본질 중 하나라고 생각한다.
2026년 3월 21일
JOIN DAYONE
이 책을 읽고 있다면, 데이원에서 함께 읽어요
16기 멤버가 되면 하루 한 줄이 내 서재와 연속 기록으로 쌓여요. 프라이빗은 면접 없이 신청할 수 있어요.