아무도 전체 시스템이 어떻게 작동하는지 모른다
I’m happy to translate the article for you, but I don’t have access to the full text of the page you linked. Could you please paste the content you’d like translated (excluding any code blocks or URLs you want to keep unchanged)? Once I have the text, I’ll provide the Korean translation while preserving the original formatting and source line.
트위터 몰락 이후 LinkedIn의 부상
트위터가 무너진 것의 놀라운 (적어도 제게는) 결과 중 하나는 LinkedIn이 소셜 미디어 사이트로 떠오른 것입니다. 제가 주목하고 싶은 흥미로운 게시물들을 몇 개 발견했습니다.
Simon Wardley – “작동 방식을 이해하지 못하고 무언가를 만들기”
Adam Jacob – Wardley에 대한 응답
Bruce Perens – 대화에 추가하기
Louis Bucciarelli – “디자인 엔지니어” (1994)
몇 년 전, 저는 기술 문해력에 관한 전국 회의에 참석했습니다… 주요 연사 중 한 명인 사회학자는 설문지 응답 형태로 수집한 데이터를 발표했습니다. 상세한 통계 분석 후, 그는 우리 나라가 기술 문해력이 부족한 국민이라고 결론지었습니다. 예를 들어, 우리 중 전화가 어떻게 작동하는지 아는 사람은 20 %도 안 된다고 지적했습니다.
이 말은 저를 당황하게 만들었습니다. 머릿속이 떠돌며 불안감이 밀려왔습니다. 나는 전화가 어떻게 작동하는지 알고 있었을까?
나는 자리에서 몸을 뒤척이며 낙서를 하다 스스로에게 물었습니다, 전화가 어떻게 작동하는지를 안다는 것이 무슨 뜻일까? 지역 번호나 장거리 번호를 다이얼하는 방법을 안다는 뜻일까? 그 정도는 확실히 알지만, 여기서 문제가 되는 것은 아닙니다.
아니요, 나는 그 질문이 다른 차원에서 이해되어야 한다고 생각했습니다. 즉, “장치의 물리학”이라고 부를 수 있는 지식을 묻는 것이죠. 나는 말하는 사람의 압력 변동에 의해 흥분되는 다이어프램이 진동하며 자기장 안에서 코일을 앞뒤로 움직이는 모습을 떠올렸습니다… 만약 연설자가 말하고자 한 것이 이것이라면, 그는 옳았습니다: 우리 대부분은 전화가 어떻게 작동하는지 모릅니다.
실제로 나는 궁금했습니다, 연설자는 자신의 전화가 어떻게 작동하는지 알고 있을까? 장거리 통화를 위한 최적 라우팅을 달성하는 휴리스틱을 알고 있을까? 에코와 잡음 억제에 사용되는 알고리즘의 복잡성을 알고 있을까? 위성에 신호를 전송하고 회수하는 방법을 알고 있을까? AT&T, MCI, 그리고 지역 전화 회사들이 같은 네트워크를 동시에 사용할 수 있는 방법을 알고 있을까? 이 시스템을 유지하기 위해 몇 명의 운영자가 필요한지, 혹은 그들이 전봇대를 오를 때 실제로 무엇을 하는지 알고 있을까? 기업 재무, 자본 투자 전략, 혹은 이 방대하고 정교한 통신 시스템의 기능에 있어 규제의 역할에 대해 알고 있을까?
자신의 전화가 어떻게 작동하는지 아는 사람이 있을까?
기술 면접 질문 중에 “브라우저 주소창에 URL을 입력하고 Enter를 누르면 무슨 일이 일어나나요?” 라는 것이 있습니다. HTTP, DNS, TCP, IP 등 다양한 수준에서 일어나는 일을 이야기할 수 있습니다… 하지만 모든 수준을 정말 이해하고 있는 사람이 있을까요? 여러분은 알고 있나요?
실제로 Enter 키를 눌렀을 때 운영 체제 내부에서 발생하는 인터럽트에 대해 알고 있나요? 지금 당신의 노트북에서 802.11ax Wi‑Fi 프로토콜이 사용하고 있는 변조 방식이 무엇인지 아시나요? Quadrature Amplitude Modulation (QAM) 과 Quadrature Phase‑Shift Keying (QPSK) 의 차이를 설명하고, 현재 노트북이 어느 방식을 사용하고 있는지 판단할 수 있나요? ARM 프로세서의 relaxed memory model에 익숙하신가요? JVM 내부에서 가비지 컬렉션이 어떻게 작동하는지 아시나요? 칩 안의 필드‑이펙트 트랜지스터가 디지털 로직을 어떻게 구현하는지 이해하고 있나요?
나는 Brendan Gregg와 넷플릭스에서 일하던 시절에 그가 기술 인터뷰를 어떻게 진행했는지 이야기를 나눈 기억이 있다. 그는 후보자의 지식 한계를 파악하고, 그 한계에 도달했을 때 후보자가 어떻게 반응하는지를 알고 싶어했다. 그래서 후보자가 더 이상 모르는 지점에 이를 때까지 해당 분야에 대한 깊은 질문을 계속 던졌다. 그리고 나서 후보자가 “그 질문에 대한 답을 모른다”고 솔직히 인정하는지, 아니면 허풍을 떠는지를 관찰했다. 그는 아무도 시스템을 완전히 이해하고 있지는 않다는 것을 알고 있었다.
각각의 관점에서 Wardley, Jacob, Perens, 그리고 Bucciarelli는 모두 옳다.
Wardley는 우리가 실제 작동 방식을 이해하지 못한 채 무언가를 구축하는 것이 위험하다고 말한다. 이것이 바로 우리 산업에서 마법이라는 수식어가 사용되는 이유다. 마법은 기본 메커니즘을 의도적으로 가려서 해당 프레임워크 내에서 개발을 더 쉽게 만들기 위한 것이다.
Excerpt from Louis Bucciarelli’s book Designing Engineers, MIT Press, 1994.
모든 이미지는 저자의 블로그(surfingcomplexity.blog)에 호스팅되어 있다. 링크는 원본 LinkedIn 게시물로 연결된다.
Rails is the canonical example of a framework that uses magic.
Jacob is right that AI is changing the way that normal software development work gets done. It’s a new capability that has proven itself to be so useful that it clearly isn’t going away. Yes, it represents a significant shift in how we build software; it moves us further away from how the underlying stuff actually works, but the benefits exceed the risks.
Perens is right that the scenario that Wardley fears has, in some sense, already come to pass. Modern CPU architectures and operating systems contain significant complexity, and many software developers are blissfully unaware of how these things really work. Yes, they have mental models of how the system below them works, but those mental models are incorrect in fundamental ways.
Finally, Bucciarelli is right that systems like telephony are so inherently complex, have been built on top of so many different layers in so many different places, that no one person can ever actually understand how the whole thing works. This is the fundamental nature of complex technologies: our knowledge of these systems will always be partial, at best. Yes, AI will make this situation worse. But it’s a situation that we’ve been in for a long time. 

