
식상한 말이라 느껴지지만, "현장에 답이 있다"라는 말을 업계 선배들에게 자주 듣는다. 현장.. IT/소프트웨어 개발에서 현장이란 어떤 의미일까? 나는 실제로 사용자를 만나게 되는 그 지점을 말하는 것이라 생각한다. 개발 단계에서는 나와 소프트웨어만 존재했지만, 현장이라는 지점에 도달하면 내가 만든 소프트웨어를 사용하는 사람과 만나게 된다. 그 사람이 내가 만든 소프트웨어를 사용하는 모습을 보면서 내가 생각했던 사용시나리오가 실제 사용자와 이야기를 나누기 시작한다. 그 지점이 현장이다.
이 책은 오라클 컨설턴트로 오래 활동한 저자의 경험(에피소드)를 통해 원래 의도대로 동작하지 않아 발생한 문제를 어떻게 해결하는지, 그 과정에서 어떤 통찰을 얻었는지 담담하게 이야기한다. 마치 IT 현장에서 벌어지는 이야기 같아서 소설처럼 편안하게 읽을 수 있다. 편안하지만 읽다보면 머리를 띵 하고 치는 그런 편안함이랄까. 그 편안함 속에서 우리가 현장의 문제를 제대로 해결하려면 어떤 태도를 가지고 어떻게 접근해야 하는지에 대해 생각해 보는 시간을 가질 수 있었다.
이 책의 역자분이 남긴 '옮긴이의 글'에서 가슴에 와닿는 문장이 있었는데 '문제를 올바르게 해결한다는 것은 결국 어디를 관찰할 것인지, 어떤 것을 무시할 것인지를 결정하는 과정'이다. 기본이지만, 늘 기본 지키기가 쉽지만은 않다.
책을 읽으면서 일머리, 특히 소프트웨어 개발과정에서의 일머리를 생각했다. 어떻게 보면 원서의 제목 <How to make things faster>보다 과한 느낌도 들지만, 한편으로는 이 책에서 저자가 말하고 싶었던 것이 일을 잘하기 위해 엔지니어는 어떻게 생각하는가를 고민한 내용이 잘 전달되는 것 같다.
책을 읽으면서 책 내용에 대해 내 생각을 메모로 남겼는데, 그걸 정리하면 다음과 같다.
관찰이란 고객의 입장(관점)에서 서술되는 증상의 본질을 이해하는 것이다. 현장의 타격감(효용감, 효력감)을 고려하여 우선순위를 분석하고 문제를 해결하는 노력이 필요하다. 단순 지표가 아닌 실제 증상을, 실제 벌어지는 상황을 관찰하라는 저자의 말에 관찰가능성(observability)의 의미도 다시 생각해 보아야 겠다고 생각했다. 단순히 지표만 수집하는 것이 관찰가능성의 가치가 아니다.
항상 목적을 염두에 두고 증세를 분석하여 해결하는 노력은 어쩌면 개발자보다는 PO/PM에게 더 필요한 덕목일지 모르겠다. 우선순위 결정이 늦어질 수록 증상을 해결하는 시점 또한 늦어진다. 결국 빠른 의사결정이 빠른 해결로 이어진다.
102쪽에 소개된 이슈 보고의 정석도 좋았다. 1.재현 과정, 2. 기대동작 3.실제 동작. 이 세가지만 명확해 져도 문제 해결의 절반은 끝난 셈이다.
추적(trace)에 대해 저자가 제시한 원칙도 명쾌하다. "추적은 필요한 만큼 하되, 최대한 적게 해야 한다. 오동작하는 특정 기능만 추적할 수 없다면 그리 하라. 만일 그럴 수 없다면 하나의 프로그램 또는 하나의 애플리케이션, 또는 한명의 사용자만 추적하면 된다." 문제가 있을 때 특정 사용자에 관한 특정 시간내의 로그를 볼 수 있다는 넷플릭스의 원격 디버깅 기능이 생각났다. (관련 글을 본 적이 있는데, 찾을 수가 없다.)
33번 에피소드 "시퀀스 다이어그램의 왼쪽을 바라보자"는 김형국 대표님의 기획 강의 내용을 떠올리게 했다. 기획의 개입 시점이 앞으로 갈수록 그 기획의 임팩트는 커진다는는 것인데, 시퀀스 다이어그램의 왼쪽은 더 이른 시점을 의미하고, 빠른 개입은 전체 흐름에도 큰 영향을 미친다. 기획이나 개발 모두에 적용된다는 생각이 들었다.
효율에 대해서도 생각해 볼 수 있는 구절이 많았다. 빠른 것이 마냥 효율이 좋은 것은 아니라는 말에서 평상시 놓치고 있었던 '낭비'에 대해 생각해 볼 수 있었다. 진정한 효율은 단순히 속도를 빠르게 하는 것이 아니라 전체 사이클에서 낭비를 줄이는 것이라는 생각도 들었다.
책에서 인상적인 구절이 있다. "자신이 답할 수 없는 질문을 맞닥뜨릴 경우 대부분의 사람들은 자신이 답할 수 있는 또다른 대체 질문으로 만족하는 경향을 보인다.... 보통 그렇게 대안으로 마련된 대체 질문들은 원래 질문보다 약화된 버전일 경우가 많다."는 구절. 저자는 결국 plain & straight question, 즉 직접적이고 명확한 질문을 해야한다고 강조했다. 불편하더라도 핵심을 찌르는 질문이 문제해결의 시작이라는 뜻으로 읽혔다.
멀티 태스킹, 즉 한번에 여러 업무를 수행하는데 대해서도 저자의 지적이 있었다. "컴퓨터는 겨우 몇 마이크로초 만에 컨텍스트를 전환할 수 있지만, 사람은 컨텍스트 전환에 약 25분이나 필요하다. 단순히 시간 낭비 이상의 고비용이 든다"는 주장인데, AI 도구가 많이 도입되면서 여러가지 업무를 전환하는 경우가 생기는데, 다시한번 곱씹어 봐야할 지적으로 느껴졌다.
예측하기 파트에서는 TDD가 떠올랐는데, TDD는 단순히 함수 개발에 국한되는 개념이어서는 안되고 미리 결과를 예측하고 개발 할 수 있는 마중물이어야 한다는 이야기로 들렸다. 최적화에는 두가지 스킬이 필요하다고 저자는 이야기한다. 첫번째는 올바른 질문을 하는 것. 두번째는 그 질문의 답을 구하는 것. 그만큼 올바른 질문을 하는 것이 중요하다.
현장에서 수많은 문제를 마주하며 경험을 쌓아온 저자의 생각이 녹아있는 책이다. 주니어보다는 약간의 경험이 있는 분들에게 더 재미있게 다가가는 책일 듯 하다. 이 이야기는 그때 나의 그 이야기와 비슷하네 하는 생각에 이 바닥은 동서고금을 막론하고 비슷하구나 하는 생각도 들었다.
일 잘하는 엔지니어의 생각 기법 | 캐리 밀샙 - 교보문고
일 잘하는 엔지니어의 생각 기법 | AI는 쉽게 따라 하기 어려운, 인간 개발자와 엔지니어가 자신의 능력치를 최대로 발휘할 수 있는 신속하고 정확한 문제 해결력과 사고법을 알려주는 책!문제의
product.kyobobook.co.kr
'0.잡담 > 0.1 책' 카테고리의 다른 글
| 한반도는 거대한 용광로?? (0) | 2025.12.07 |
|---|---|
| 개발자를 위한 생성형 AI 활용가이드/길벗/핫토리 유우키 (0) | 2025.12.05 |
| 바이브 코딩 너머 개발자 생존법/애디 오스마니/한빛미디어 (2) | 2025.11.30 |
| 책/ 요즘 개발자를 위한 시스템 설계 수업/ 길벗 (0) | 2025.11.24 |
| 책/ 실패를 통과하는 일 / 박소령 (2) | 2025.11.11 |




