우문현답
愚 問 賢 答
회사별 면접직군별진행 방식
    홈›회사별›토스›프론트엔드›질문 상세
    問
    토토스프론트엔드직무 역량2026년 출제

    서버와 클라이언트 상태 관리를 위해 React-Query와 Recoil을 어떻게 선택적으로 사용하셨는지 설명해 주세요.

    답변 미리보기

    팀 프로젝트에서 API 데이터를 전역 상태에 저장해서 관리하다 보니 데이터가 오래돼도 업데이트가 안 되는 문제가 발생했습니다. 직접 refetch 타이밍을…

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

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

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

    問
    01
    상태 관리 경험이 있는가?
    React-Query 또는 Recoil을 활용한 경험이 답에 흔적이 있어야 합니다. 없으면 면접관이 '어떤 상황에서 사용했나요?'를 추가로 묻는 경우가 자주 보입니다.
    骨
    02
    어떤 상황에서 활용했는가?
    상태 관리 도구를 사용한 구체적인 상황이 설명되어야 합니다. 없으면 면접관이 '다른 방법은 없었나요?' 같은 질문을 던지는 자리가 자주 보입니다.
    語
    03
    선택 기준은 무엇인가?
    React-Query와 Recoil을 선택한 이유가 나와야 합니다. 없으면 면접관이 '왜 이 두 가지를 썼나요?'를 추가로 묻는 경우가 많습니다.
    本
    04
    구현 방법은 어떤가?
    구체적인 구현 방식에 대한 설명이 답에 포함되어야 합니다. 없으면 면접관이 '어떻게 구현했는지 설명해 주세요'를 자주 던지는 자리입니다.
    말로 해봐야 는다
    읽는 것과 말하는 건 다릅니다.
    이 질문, 소리 내어 답해 볼까요?
    토스 면접관 페르소나가 이 질문을 던지고, 당신의 답에 꼬리질문으로 되물어요.
    음성으로 답해보기
    서버 상태 관리를 React-Query로 전환한 경험약 90초컴포넌트 간 상태 공유를 Recoil atom으로 해결한 경험약 90초프로젝트 상황에 맞는 상태 관리 도구를 고른 경험약 90초
    React-Query 도입
    약 90초

    서버 상태 관리를 React-Query로 전환한 경험

    팀 프로젝트에서 API 데이터를 전역 상태에 저장해서 관리하다 보니 데이터가 오래돼도 업데이트가 안 되는 문제가 발생했습니다. 직접 refetch 타이밍을 관리하다 보니 코드도 복잡해졌습니다.

    React-Query를 도입했습니다. 서버 데이터는 React-Query가 캐싱과 재요청을 관리하고, 클라이언트 상태만 별도로 관리하는 방식으로 분리했습니다. 처음에는 캐시 키 설계를 잘못해서 서로 다른 데이터가 같은 키를 사용하는 버그가 발생했는데, 키 구조를 계층적으로 관리하는 방식으로 수정했습니다.

    이후로 데이터 신선도 관련 이슈가 없어지고 로딩 상태 관리 코드도 줄어들었습니다. 서버 상태와 클라이언트 상태를 구분하는 것이 상태 관리의 핵심이라는 것을 그 경험에서 배웠습니다. 그 경험이 상태를 종류별로 다르게 다루는 시각을 만들어주었습니다.

    이 결의 특징
    데이터 신선도 문제를 React-Query 도입과 캐시 키 계층화라는 구체 해결로 풀어낸 흔적이 있습니다.
    이 결이 통하는 자리
    서버 상태와 클라이언트 상태를 구분하는 것이 상태 관리의 핵심이라는 관점이 답에 담겨 있을 때 면접관의 신뢰가 쌓이는 자리를 자주 봅니다.
    Recoil 적용 경험
    약 90초

    컴포넌트 간 상태 공유를 Recoil atom으로 해결한 경험

    팀 프로젝트에서 여러 컴포넌트가 공유해야 하는 필터 상태를 props로 계속 내려보내다 보니 중간 컴포넌트들이 필요도 없는 props를 받아야 하는 상황이 됐어요.

    Recoil을 처음 써봤는데, atom으로 상태를 정의하고 필요한 컴포넌트에서 직접 읽고 쓰는 방식이 props 드릴링 문제를 해결해줬어요. 처음엔 atom을 너무 많이 만들어서 어디서 어떤 상태를 쓰는지 추적이 안 되는 문제가 생겼는데, atom 파일을 기능 단위로 묶어서 관리하니 해결됐습니다.

    전역 상태가 편리하지만 무분별하게 쓰면 오히려 흐름이 불분명해진다는 걸 그 경험에서 배웠어요. 어떤 상태를 전역으로 올릴지 기준을 정하는 게 중요하다는 것도요. 그 경험이 상태 관리 도구 선택에 대한 기준을 만들어줬어요.

    이 결의 특징
    props 드릴링 문제를 Recoil로 해결했지만 atom 남발로 추적이 어려워진 문제를 기능 단위 정리로 개선한 흔적이 있습니다.
    이 결이 통하는 자리
    전역 상태를 무분별하게 쓰면 오히려 흐름이 불분명해진다는 관점이 구체적으로 담긴 답에서 통합니다.
    도구 선택 기준
    약 90초

    프로젝트 상황에 맞는 상태 관리 도구를 고른 경험

    새 프로젝트를 시작할 때 팀원들이 Redux, Recoil, React-Query를 각자 선호해서 어떤 것을 쓸지 의견이 갈렸어요. 각자 써봤던 것을 주장하는 상황이었습니다.

    어떤 상태를 어떻게 쓰는지 먼저 정리하고 도구를 고르자는 방식을 제안했어요. 서버 데이터가 많고 클라이언트 상태는 단순하다는 걸 확인하고 나서 React-Query와 간단한 Context 조합으로 결론 냈습니다. 복잡한 상태 관리 라이브러리 없이도 충분하다는 판단이었어요.

    도구 선택이 '어떤 게 유명한가'보다 '지금 내 프로젝트의 상태가 어떻게 생겼는가'에서 시작해야 한다는 걸 그 경험에서 배웠어요. 오버엔지니어링이 단순한 문제를 복잡하게 만든다는 것도요. 그 경험이 도구를 맥락 안에서 선택하는 습관을 만들어줬어요.

    이 결의 특징
    팀원들의 도구 선호가 갈렸을 때 상태 특성을 먼저 정리하고 도구를 고른 흔적이 있습니다.
    이 결이 통하는 자리
    도구 선택은 유명세가 아니라 프로젝트의 상태 특성에서 시작해야 한다는 관점이 답에 담겨 있을 때 면접관의 신뢰가 쌓이는 결이 보입니다.
    !
    위 답변은 여러 풀이 중 한 가지 예시입니다. 정답이 아니며, 외워서 그대로 말하면 면접관이 다음 질문을 그 자리에서 시작하는 경우가 많습니다. 본인의 프로젝트·기준·숫자로 다시 짜는 자리로만 쓰세요.
    ✕자주 빠지는 자리

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

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

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

    壹이러한 상태 관리 방법의 장단점은 무엇이라고 생각하시나요?
    貳이 외에 다른 상태 관리 라이브러리를 고려했었나요?
    參혹시 이 경험에서 배운 점이 있다면 무엇인가요?
    이제, 직접 답해볼 차례예요.
    눈으로 읽은 답은 면접장에서 나오지 않아요. 토스 면접관과 이 질문으로 한 번 대화해 보세요.
    이 질문으로 모의면접 해보기
    또는, 다음 질문으로

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

    토스 · 프론트엔드
    React-Query 또는 Recoil을 사용해 상태 관리를 구현한 경험이 있다면, 어떤 상황에서 어떻게 활용했는지 이야기해 주세요.
    이 질문 보기
    넛지헬스케어 · 프론트엔드
    상태 관리 기술인 React Query, Zustand, Recoil 중 하나를 선택해 그 사용 경험을 이야기해줄 수 있나요?
    이 질문 보기
    부동산플래닛 · 풀스택
    React-Query를 사용한 데이터 패칭 경험에 대해 설명해 주세요.
    이 질문 보기
    포트원 · 풀스택
    상태 관리 라이브러리인 React Query나 Valtio를 사용해본 경험이 있으신가요? 그 경험을 공유해 주세요.
    이 질문 보기
    안내 · 이 페이지의 질문·답변·꼬리질문은 유사 직군 채용 시장의 공개된 면접 후기·커뮤니티 게시물을 분석해 구성한 학습 자료입니다. 실제 출제·회사 공식 입장과는 무관하며, 정정 요청 시 24시간 내 반영합니다. 자세히
    개인정보처리방침이용약관문의
    © 2026 우문현답. All rights reserved.
    이 페이지 목차
    01면접관의 의도02답변의 결03실수·꼬리질문04관련 질문
    말로 해봐야 는다
    이 질문, 토스 면접관과
    음성으로 답해볼까요?
    모의면접 해보기
    첫 회 무료 · 종료 즉시 음성 폐기