
멘탈 모델은 사람이 세상을 이해하고 예측하기 위해 머릿속에 구축하는 개념적 틀 또는 심리적 구조를 의미합니다.
멘탈 모델은 정보를 해석하고, 문제를 해결하며, 미래를 예측하는 데 사용됩니다. 이 모델은 각자의 경험, 교육, 문화에 따라 다르게 형성되기 때문에, 사람마다 같은 상황을 다르게 해석할 수 있는 이유이기도 합니다.
예를 들어, 우리는 전등 스위치를 올리면 불이 켜진다고 자연스럽게 생각합니다. 실제 전기회로에 대한 지식이 없어도, 스위치 → 전기 흐름 → 불 켜짐이라는 머릿속 이미지가 있기 때문입니다. 이게 바로 멘탈 모델입니다.
개발자의 경우, MVC(Model-View-Controller) 같은 구조를 통해 웹 앱이나 프로그램이 어떻게 작동하는지를 머릿속에 도식화하여 이해합니다.
투자자는 시장이 감정적으로 움직인다는 신념을 바탕으로 주가 흐름을 해석하는 멘탈 모델을 가질 수 있습니다.
멘탈 모델은 우리가 어떤 결정을 내릴 때 직관적인 기준을 제공합니다.
개발자에게 멘탈 모델은 매우 실용적인 도구입니다. 폴더 구조나 파일의 흐름을 머릿속에 그려놓으면, 코드를 탐색하거나 구조를 바꿀 때 훨씬 빠르고 효율적으로 작업할 수 있습니다.
디버깅 과정에서도 "이 정도 흐름이면 여기쯤 문제가 있을 것 같다"는 직감이 작동하고, 협업 시에는 다른 개발자의 코드를 분석할 때도 자연스럽게 구조가 예측됩니다. 더 나아가, 시스템을 확장할 때도 전체적인 구조를 머릿속에 모델링하고 설계할 수 있습니다.
좋은 멘탈 모델은 단순하고 직관적이어야 하며, 현실을 잘 반영해야 합니다. 또한, 새로운 경험과 학습을 통해 유연하게 수정될 수 있어야 하며, 다양한 상황에 적용 가능해야 합니다.
멘탈 모델은 세상을 이해하고 행동하기 위한 뇌 속의 설명 구조입니다.
멘탈 모델이란, 사람들이 어떤 시스템이나 개념을 이해하고 예측하기 위해 머릿속에 그리는 구조적 이미지 혹은 틀을 말합니다. 개발자에게 있어 멘탈 모델은 “이 프로젝트가 어떻게 구성되어 있으며, 각 부분이 어떻게 연결되어 있는가?”에 대한 직관적인 이해를 뜻합니다.
인간의 뇌는 정보를 저장할 때 공간적 정보까지 함께 저장하는 특징이 있습니다. 이 때문에, 구조적으로 잘 정리된 정보는 훨씬 더 쉽게 기억되고, 효율적으로 활용될 수 있습니다.
뇌는 예측 가능한 패턴을 선호하기 때문에 일관성 있는 구조는 새로 코드를 추가하거나 찾을 때 불필요한 고민(인지적 소모)을 크게 줄여줍니다.
초기에는 별 문제가 없어 보이던 폴더 구조가, 프로젝트가 성장하면서 점점 혼란과 불편을 야기하는 경우가 많습니다. 이는 본질적으로, 개발자의 머릿속 멘탈 모델과 실제 코드 구조가 일치하지 않기 때문입니다.
왜 이런 불일치가 생길까요?
개발 초기에는 파일 수가 적어 폴더 구조의 한계가 크게 체감되지 않습니다.
개발이 이어지며 기능이 늘어나고, 팀원이 많아질수록 기존 구조가 확장성 없이 방치되기 쉽습니다.
점점 “어디에 뭘 넣어야 하지?”라는 작은 혼란이 반복되고, 이것이 누적되어 전체 생산성에 영향을 미칩니다.
이 불일치를 해소하는 과정은 단순한 리팩토링을 넘어서는 사고의 전환입니다.
이러한 사고의 전환은 단순히 개발 생산성만이 아니라, 팀 내 협업, 신규 팀원 온보딩, 유지보수의 용이성 등 다양한 측면에서 프로젝트의 장기적 성공을 결정짓는 핵심 포인트가 됩니다.
이러한 경험을 거치다 보면, 자연스럽게 FSD(Feature-Sliced Design)와 같은 아키텍처 패턴의 필요성을 절감하게 됩니다. 각 레이어가 존재하는 이유가 단순한 규칙이 아니라, 멘탈 모델과 실제 코드 구조의 정렬을 위한 장치란 점이 명확하게 와닿게 됩니다.
정돈된 폴더 구조는 단순히 보기 좋은 코드의 문제가 아니라, 개발자의 인지 구조와의 정렬 문제입니다.
따라서, 프로젝트가 커지기 전–그리고 팀이 복잡해지기 전–“현재 내(우리) 멘탈 모델과 코드 구조는 잘 맞아떨어지고 있는가?”라는 질문을 반드시 던져보시기를 권합니다.