POOOLING FOREST
시스템 설계 면접, 합격과 불합격을 가르는 결정적 차이 - 수백 건의 기술 면접을 통해 느낀 시스템 설계 면접의 핵심 역량을 공유합니다. AI 답변의 함정, 맥락 파악
Engineering & Tech

시스템 설계 면접, 합격과 불합격을 가르는 결정적 차이

수백 건의 기술 면접을 통해 느낀 시스템 설계 면접의 핵심 역량을 공유합니다. AI 답변의 함정, 맥락 파악의 중요성, 비용 감각, 그리고 유연한 문제 해결 능력이 합격을 결정짓습니다.

송찬영

CTO

안녕하세요. 풀링포레스트 CTO 송찬영입니다.

지난 1년간 수백 건의 기술 면접을 진행하며 시스템 설계(System Design) 세션에 집중해 왔습니다. 면접관으로서 제가 찾으려는 신호는 단순히 지식의 깊이만이 아닙니다. '이 사람에게 얼마나 큰 자율성을 줄 수 있는가?', '데이터가 불완전한 상황에서도 결단을 내릴 수 있는가?', 그리고 무엇보다 '함께 일하고 싶은 동료인가?'라는 질문에 대한 답을 찾으려 노력하죠. 오늘은 많은 지원자가 범하는 안타까운 실수들과, 기술 리더로서 진짜 보고 싶은 역량이 무엇인지 이야기해보려 합니다.

최근 들어 가장 우려되는 현상은 AI 도구의 기계적인 활용입니다. 비대면 면접 화면 너머로 ChatGPT나 Claude가 생성한 답변을 그대로 읽어 내려가는 지원자를 볼 때면 마음이 무거워집니다. 안경 렌즈에 반사되는 화면 전환이나, 부자연스럽게 유창한 "교과서적인 답변"은 금방 티가 나기 마련입니다. 저는 LLM의 대변인이 아니라, 여러분의 생생한 목소리를 듣고 싶습니다. 모르는 질문이 나오면 솔직하게 "아직은 잘 모르겠습니다"라고 인정하고, 어떻게 답을 찾아갈지 논의하는 것이 훨씬 더 큰 신뢰를 줍니다. 지식의 한계를 아는 것은 엔지니어에게 매우 중요한 메타 인지 능력이니까요.

또한, 기술 자체보다 '맥락'을 놓치는 경우를 자주 봅니다. 어떤 지원자들은 화이트보드를 받자마자 로드 밸런서와 데이터베이스 샤딩부터 그리기 시작합니다. 하지만 저는 항상 이렇게 조언합니다. "화이트보드 구석에 졸라맨(Stick figure) 하나를 먼저 그려보세요." 이 시스템을 누가, 언제, 어디서, 왜 사용하는지 정의하지 않으면 모든 기술적 결정은 사상누각이 됩니다. 사용자가 인터넷이 느린 시골에 있는지, 하루에 한 번만 접속하는지 등의 맥락은 아키텍처를 완전히 뒤바꿔 놓습니다. 고객을 상상하지 않고 만든 시스템은 경제적으로 구멍을 파고 다시 메우는 일과 다를 바 없습니다.

이와 연결되는 가장 중요한 역량은 바로 '비용 감각'입니다. 엔지니어링은 결국 제약 조건 안에서 최적의 해를 찾는 과정이며, 기업에서 가장 큰 제약은 '돈'입니다. 50만 달러를 버는 시스템을 운영하는 데 500만 달러가 든다면, 아무리 기술적으로 우아해도 실패한 설계입니다. Kubernetes 클러스터나 멀티 리전 Redis 같은 복잡한 도구를 도입하기 전에, 간단한 산술 계산(Back-of-the-envelope calculation)을 통해 이것이 정말 필요한지 검증해야 합니다. 불필요한 복잡성은 우리가 시스템에 초대하는 '악마'와 같습니다.

마지막으로, 특정 면접 프레임워크에 지나치게 갇히지 않기를 바랍니다. 시중의 유명한 시스템 설계 가이드들은 훌륭한 출발점이지만, 실제 현업의 문제는 정해진 대본대로 흘러가지 않습니다. 면접관이 예상치 못한 질문을 던졌을 때 당황하여 외워둔 대본으로 돌아가려 하기보다, 그 상황 자체를 즐기며 유연하게 대처하는 모습을 보여주세요.

우리가 찾는 사람은 완벽한 정답 기계가 아니라, 불확실성 속에서 합리적인 트레이드오프를 고민하고 동료와 대화할 수 있는 엔지니어입니다. 기술적 화려함보다는 기본에 충실한 '문제 해결사'로서의 면모를 보여주신다면, 어떤 면접에서도 좋은 결과를 얻으실 거라 확신합니다. 모든 엔지니어 여러분의 건승을 빕니다.

지금 읽으신 내용, 귀사에 적용해보고 싶으신가요?

상황과 목표를 알려주시면 가능한 옵션과 현실적인 도입 경로를 제안해드립니다.