우문현답
愚 問 賢 答
회사별 면접직군별진행 방식
    홈›회사별›마켓컬리›프론트엔드›질문 상세
    問
    마마켓컬리프론트엔드경험·이력2026년 출제

    모노레포 환경에서의 빌드 및 의존성 관리에 대한 경험을 공유해 주세요.

    답변 미리보기

    사이드 프로젝트에서 프론트엔드와 백엔드를 한 저장소에서 관리하는 구조를 처음 써봤습니다. ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND No…

    예상 답변 시간
    60~90초
    예상 꼬리질문
    3회
    난이도
    난이도 중상
    출제 빈도
    높음
    INTERVIEWER'S INTENT · 면접관의 의도

    이 질문, 네 갈래로 뜯어봅니다.

    면접관이 이 한 문장으로 확인하려는 것들. 각 갈래를 알면 답의 뼈대가 잡혀요.

    問
    01
    모노레포 환경에서의 이해는 어떤가요?
    모노레포 환경에 대한 이해가 답에 있어야 합니다. 없으면 면접관이 '이 환경의 장단점은 무엇인가요?'를 추가로 묻는 경우가 자주 보입니다.
    骨
    02
    빌드 과정에서의 경험은 어떤가요?
    빌드 과정에서의 구체적인 경험이 답에 포함된 흔적이 있어야 합니다. 없으면 면접관이 '어떤 도구를 사용했나요?' 같은 질문을 던지는 자리가 자주 보입니다.
    語
    03
    의존성 관리 방법은 무엇인가요?
    의존성 관리 방법에 대한 설명이 답에 있어야 합니다. 없으면 면접관이 '어떤 문제에 직면했나요?'를 추가로 묻는 경우가 많습니다.
    本
    04
    모노레포의 장단점은 무엇인가요?
    모노레포의 장단점에 대한 개인적인 의견이 답에 있어야 합니다. 없으면 면접관이 '왜 이 방식을 선택했나요?'를 추가로 묻는 경우가 자주 보입니다.
    말로 해봐야 는다
    읽는 것과 말하는 건 다릅니다.
    이 질문, 소리 내어 답해 볼까요?
    마켓컬리 면접관 페르소나가 이 질문을 던지고, 당신의 답에 꼬리질문으로 되물어요.
    음성으로 답해보기
    패키지 버전 충돌 문제 발견 후 워크스페이스 설정 정리 중심으로 푸는 결약 102초Turborepo dependsOn 설정으로 선택적 재빌드와 캐싱을 구성한 결약 85초멀티레포에서 모노레포 전환 시 git history 보존과 점진적 마이그레이션 중심으로 푸는 결약 85초
    예시 답변 1
    약 102초

    패키지 버전 충돌 문제 발견 후 워크스페이스 설정 정리 중심으로 푸는 결

    사이드 프로젝트에서 프론트엔드와 백엔드를 한 저장소에서 관리하는 구조를 처음 써봤습니다.  ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND  No package.json (or package.yaml, or package.json5) was found in "/Users/seong-in/Desktop/Git/interview_question_project".를 사용했는데, 초기에는 공통 유틸리티 패키지를 각 앱에서 가져다 쓰는 게 편했습니다. 문제는 특정 패키지의 버전이 앱마다 다르게 설치돼 있을 때 빌드 결과가 달라지는 경우였습니다. 한쪽에서는 4.x를 쓰는데 다른 앱에서는 3.x가 설치돼 있어서, 같은 함수를 호출했는데 동작이 달랐습니다. 이걸 파악하는 데 생각보다 오래 걸렸고, 이후에는 루트 에서 공통 의존성 버전을 고정하고, 앱별로 버전을 따로 명시하지 않는 방식으로 통일했습니다. 빌드 도구는 를 도입해 변경이 없는 패키지는 캐시를 재사용하도록 설정했습니다. 덕분에 전체 빌드 시간이 약 40% 줄었습니다. 모노레포의 장점은 공통 코드를 한 번만 관리할 수 있다는 점이고, 단점은 초기 설정이 복잡하고 의존성 충돌이 생겼을 때 원인을 추적하기 어렵다는 점입니다. 설정 문서를 팀 내에 남기지 않으면 나중에 합류한 팀원이 구조를 파악하기 어렵다는 것도 직접 느꼈습니다.

    이 결의 특징
    의존성 버전 충돌로 빌드 결과가 달라지는 문제를 루트에서 공통 버전을 고정하고, 변경 없는 패키지는 캐시 재사용으로 전체 빌드 시간을 40% 단축한 흔적이 있습니다. Turborepo의 dependsOn 설정으로 변경된 패키지에 의존하는 앱만 선택적으로 재빌드한 경험도 포함됩니다.
    이 결이 통하는 자리
    빌드 캐시 전략과 의존성 그래프를 명확히 정의한 개입이 눈에 띄고, CI 소요 시간이 줄었다는 결과가 구체적으로 살아 있을 때 통합니다. 멀티레포 합치기에서 re-export를 임시 허용하고 점진적으로 참조를 교체한 현실적 접근이 드러나면 면접관의 꼬리질문이 줄어드는 자리가 보입니다.
    B
    약 85초

    Turborepo dependsOn 설정으로 선택적 재빌드와 캐싱을 구성한 결

    Turborepo를 도입해 빌드 파이프라인 캐싱과 의존성 그래프 기반 실행을 설정한 경험이 있습니다. 이전에는 어느 패키지가 변경됐을 때 어느 앱을 재빌드해야 하는지 수동으로 파악해야 했고, 놓치면 사이드이펙트가 배포 직전에 발견됐습니다. turbo.json의 dependsOn 설정으로 각 태스크가 어떤 패키지에 의존하는지 명시하고, 변경이 없는 패키지는 캐시에서 복원하도록 했습니다. 결과적으로 공통 유틸리티만 수정했을 때 해당 패키지에 의존하는 앱만 선택적으로 재빌드돼 CI 소요 시간이 줄었습니다. 초기에 태스크 간 의존 관계를 잘못 정의하면 캐시가 오래된 결과물을 재사용하는 버그가 생겼고, 의존성 그래프를 다시 점검해 수정했습니다.

    도구의 캐싱 효과는 의존성 표현이 얼마나 정확한지에 달려 있습니다.

    이 결의 특징
    어느 패키지가 변경됐을 때 어느 앱을 재빌드해야 하는지 수동 파악의 한계를 Turborepo dependsOn으로 해결하고, 변경이 없는 패키지를 캐시에서 복원해 CI 소요 시간을 줄인 경험이 있습니다.
    이 결이 통하는 자리
    수동 판단을 의존성 그래프로 자동화한 전환이 명확할 때 통합니다. 배포 직전에 사이드이펙트를 발견하던 리스크를 사전에 제거한 흐름이 살아 있을 때, 면접관이 '인프라 수준에서 문제를 본다'고 읽는 자리가 옵니다.
    C
    약 85초

    멀티레포에서 모노레포 전환 시 git history 보존과 점진적 마이그레이션 중심으로 푸는 결

    기존 멀티레포 구조에서 모노레포로 전환하는 작업에 참여한 경험이 있습니다. 여러 저장소에 흩어진 공통 유틸리티 코드가 각 레포마다 다른 버전으로 복사되어 있었고, 한쪽을 수정해도 다른 쪽에 반영되지 않는 문제가 반복됐습니다. 마이그레이션에서 예상보다 어려웠던 부분은 기술 설정보다 팀원들이 새로운 구조에 적응하도록 돕는 것이었습니다.

    git history를 보존하면서 저장소를 합치기 위해 subtree merge 방식을 사용했는데, 경로 변경으로 인한 import 오류가 많았습니다. 이를 처리하기 위해 일시적으로 re-export를 허용하고 점진적으로 참조를 교체했습니다. 모노레포 전환은 완성된 설계를 한 번에 적용하기보다 작은 단위로 검증하면서 팀 워크플로에 맞게 조정하는 방식이 더 잘 맞았습니다.

    이 결의 특징
    멀티레포에서 공통 유틸리티가 레포마다 다른 버전으로 복사되던 문제를 subtree merge로 git history를 보존하며 합친 경험이 있습니다. 경로 변경으로 인한 import 오류를 임시 re-export로 허용하고 점진적으로 교체한 실용적 접근이 포함됩니다.
    이 결이 통하는 자리
    git history 보존이라는 제약 안에서 subtree merge를 선택한 이유가 드러날 때 통합니다. 한 번에 완전히 전환하지 않고 임시 허용 후 점진적 교체라는 현실적 경로가 살아 있을 때, 면접관이 '이상과 현실을 조율한다'고 읽는 자리가 옵니다.
    !
    위 답변은 여러 풀이 중 한 가지 예시입니다. 정답이 아니며, 외워서 그대로 말하면 면접관이 다음 질문을 그 자리에서 시작하는 경우가 많습니다. 본인의 프로젝트·기준·숫자로 다시 짜는 자리로만 쓰세요.
    ✕자주 빠지는 자리

    같은 실수가 반복돼요. 이것만 피해도 절반은 갑니다.

    • ✕떨어뜨린 옵션이 1개라도 있는가? "이게 답이었어요"만으로는 의사결정이 아니라 그냥 선택입니다.
    • ✕선택 기준이 그 프로젝트에 한정되는가? "성능이 좋아서"는 일반론, "우리 트래픽이 X 패턴이라서"가 본인의 답입니다.
    • ✕결과 숫자 1개를 정확히 말할 수 있는가? P95·QPS·적중률 — 무엇이든 1개. 숫자가 없으면 직감으로 한 일처럼 들리기 쉽습니다.
    • ✕지금 다시 한다면 어떻게 할지 답할 수 있는가? "잘했다"보다 "이건 다르게 했을 것 같다"가 더 깊은 인상을 남깁니다.
    ▶이어질 꼬리질문

    진짜 면접은 두 번째 질문부터예요. 이 답 뒤에 따라올 법한 것들.

    壹해당 경험에서 가장 어려웠던 점은 무엇이었나요?
    貳모노레포의 장점과 단점을 어떻게 평가하시나요?
    參다른 팀과의 협업 과정에서 어떤 조율이 필요했나요?
    이제, 직접 답해볼 차례예요.
    눈으로 읽은 답은 면접장에서 나오지 않아요. 마켓컬리 면접관과 이 질문으로 한 번 대화해 보세요.
    이 질문으로 모의면접 해보기
    또는, 다음 질문으로

    같은 흐름에서 자주 이어지는 질문들이에요.

    쿠팡 · 솔루션 아키텍트
    생산 환경에서 발생한 사건을 해결한 경험을 공유해 주세요.
    이 질문 보기
    라인 · 풀스택
    리모트 근무 환경에서의 협업 경험에 대해 공유해 주세요.
    이 질문 보기
    토스뱅크 · SW·IT 일반
    모노레포 환경에서 작업해본 경험이 있다면, 단일 레포 대비 어떤 장단점을 경험했고 어떤 문제를 어떻게 해결했는지 말씀해주세요.
    이 질문 보기
    토스뱅크 · SW·IT 일반
    모노레포 환경에서 작업해본 경험이 있다면, 단일 레포 대비 어떤 장단점을 경험했고 어떤 문제를 어떻게 해결했는지 말씀해주세요.
    이 질문 보기
    안내 · 이 페이지의 질문·답변·꼬리질문은 유사 직군 채용 시장의 공개된 면접 후기·커뮤니티 게시물을 분석해 구성한 학습 자료입니다. 실제 출제·회사 공식 입장과는 무관하며, 정정 요청 시 24시간 내 반영합니다. 자세히
    개인정보처리방침이용약관문의
    © 2026 우문현답. All rights reserved.
    이 페이지 목차
    01면접관의 의도02답변의 결03실수·꼬리질문04관련 질문
    말로 해봐야 는다
    이 질문, 마켓컬리 면접관과
    음성으로 답해볼까요?
    모의면접 해보기
    첫 회 무료 · 종료 즉시 음성 폐기