백엔드 개발자 1차 면접은 이력서에 적힌 API와 배치를 하나씩 골라 그 구조를 왜 그렇게 정했고 장애가 났을 때 무엇을 확인했는지 묻는 경우가 많습니다. 공고가 요구하는 기술이 이력서에 없으면 그 기술도 질문이 됩니다. 이 예시에서는 공고 자격요건의 트랜잭션 설계·쿼리 튜닝과 우대사항의 Kafka 경험이 이력서에서 확인되지 않아 두 경험을 묻는 질문이 나왔습니다. 아래는 백엔드 개발자 5년차가 노바커머스의 주문·결제 백엔드 공고로 받은 1차 면접 준비 예시입니다.
면접 준비 기능은 지원한 회사의 채용공고와 내 이력서를 대조하고 회사의 공개 정보도 함께 살펴 질문을 만들어요. 이 예시의 회사와 채용공고는 예시를 위해 지어낸 것이라 이력서와 채용공고만으로 만들었어요.
경력은 5년 10개월로, JD의 4년 이상 요건과 주문·결제 API, 배치 운영, 장애 대응 경험이 맞닿아 있습니다. 1차에서는 주문 상세 API 3종과 목록 확장, 배치 40분에서 25분 단축, 결제사 지연 대응에서 본인이 결정하고 구현한 범위를 구체적으로 확인할 가능성이 큽니다. 특히 배치 시간 개선의 측정 조건과 재처리 안전성, 결제 재시도의 중복 처리 방식은 자료에 세부 내용이 드러나지 않아 준비가 필요합니다. 반면 트랜잭션·쿼리 튜닝, 부분 환불, PG 3곳 통합, 대규모 부하 테스트 경험은 이력서에서 확인되지 않아, 유사 경험과 현재 지식의 경계를 분명히 설명하는 편이 좋습니다.
JD는 '주문 생성·결제 승인·취소·부분 환불 API 설계 및 개발'을 주요 업무로 제시하고, 이력서에는 '주문 상세 조회 API 3종 신규 설계 및 배포'와 '주문 목록 API 페이징·정렬 조건 추가'가 확인됩니다.
전략 · 「경력·프로젝트 검증」 1번과 「행동·협업」 1번에서 주문 상세 API 3종의 화면별 사용 시나리오, 엔드포인트 책임, 프론트엔드와 합의한 스펙 순으로 설명하세요. Swagger 문서화와 QA 회귀 테스트까지 이어 말해 API가 실제 서비스 흐름에 연결되도록 조율한 경험을 보여주세요.
JD는 '주문 집계·정산 대사 배치 개발 및 실패 건 재처리 구조 설계'를 요구하고, 이력서에는 '주문 집계 배치 실행 시간 40분에서 25분으로 단축'과 '배치 실패 자동 재처리 로직 추가'가 적혀 있습니다.
전략 · 「경력·프로젝트 검증」 2번과 「직무 역량·기술」 2번에서 먼저 기존 배치 흐름과 운영상 불편을 설명하고, 로직 점검과 Jenkins 실행 시각 조정, 실패 작업 재처리의 역할을 나눠 말씀하세요. 이어 전후 실행 시간을 확인한 기준과 재처리 범위를 설명해 배치 개발뿐 아니라 운영 복구까지 다뤄 온 인상을 남기세요.
JD는 외부 API의 '지연·실패·중복 요청 상황'과 장애 후 '원인 분석 문서 작성과 재발 방지 조치'를 요구합니다. 이력서에는 결제사 응답 지연 때 '타임아웃과 재시도 설정을 점검'하고 '모니터링 알림 조건 추가'를 진행한 경험이 있습니다.
전략 · 「경력·프로젝트 검증」 3번과 「행동·협업」 2번에서 장애 징후, 타임아웃·재시도 설정을 점검한 과정, 팀 공유와 알림 보강 순으로 꺼내세요. 관찰한 문제를 조치와 후속 감지 기준으로 연결해, 결제 연동 장애를 운영 관점에서 대응한 경험을 강조하세요.
JD는 'RDBMS 기반 트랜잭션 설계와 쿼리 튜닝 경험'을 요구하지만, 이력서에는 스키마 설계와 페이징·정렬 확장 외에 구체적인 트랜잭션 경계나 실행 계획 검증 사례가 드러나지 않습니다.
전략 · 「요구 대비 빈 자리」 1번의 준비 방향에 따라 실제로 검토한 트랜잭션이나 쿼리 사례가 있는지 확인하고, 요구와 위험, 직접 확인한 근거를 정리하세요. 실행 계획이나 튜닝을 다루지 않았다면 그 점을 분명히 하고, 면접 전 주문 목록 쿼리의 정렬·페이징 방식과 인덱스 후보를 설명할 수 있도록 복습하세요.
이력서에는 '타임아웃과 재시도 설정을 점검'했다고 적혀 있지만, 중복 요청 처리나 주문 상태 정합성을 어떻게 보장했는지는 확인되지 않아 결제 실무의 깊이를 질문받을 수 있습니다.
전략 · 「경력·프로젝트 검증」 3번의 준비 방향에 따라 당시 실제로 확인하거나 변경한 범위와 근거를 구분해 설명하세요. 중복 방지를 구현했다고 단정하지 말고, 면접 전에는 요청 식별, 상태 전이, 재시도 가능 조건과 대사·복구 기준을 정리해 새 업무에 적용할 설계 관점을 준비하세요.
배치 실행 시간이 '약 40분에서 25분'으로 줄었다고 제시했지만, 로직 변경과 스케줄 조정 각각의 효과 및 비교 조건은 이력서에서 확인되지 않아 개선 성과의 귀속을 검증받을 수 있습니다.
전략 · 「경력·프로젝트 검증」 2번의 준비 방향에 따라 당시 실행 시간의 기록 방식과 비교 조건을 먼저 확인하고, 분리 측정이 없다면 그 한계를 그대로 설명하세요. 면접 전에는 조치 전후의 실행 시각, 처리 범위, 로그나 운영 기록 등 실제로 확인 가능한 근거를 정리해 성능 개선과 일정 조정의 효과를 구분하세요.
주문 상세 조회 API 3종을 중심으로 각 API가 필요한 화면·사용 시나리오, 협의한 스펙, 본인이 결정한 필드나 책임 범위를 구분해 설명하세요. Swagger 문서화와 QA 회귀 테스트까지 이어진 흐름으로 설계 판단이 실제 연동과 검증에 어떻게 연결됐는지 보여주세요.
신규 API 설계에서 본인 결정 범위가 제한적이었다면 주문 목록 API의 페이징·정렬 조건 확장 사례를 대안으로 쓰세요. 기존 엔드포인트 호환성을 어떤 기준으로 판단했고 연동 기준을 어떻게 정리했는지 설명하되, 확인되지 않은 데이터 규모나 성능 효과를 보태지 마세요.
API 3종을 만들었다는 사실만 나열하고 엔드포인트별 책임이나 본인이 정한 스펙을 설명하지 않는 답변은 피하세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.
주문 집계 배치 시간 단축 사례를 중심으로 기존 실행 흐름에서 확인한 병목 또는 운영상 제약, 로직과 스케줄을 각각 어떻게 다뤘는지, 전후 시간을 어떤 기준으로 비교했는지 순서대로 정리하세요. 분리 측정이 없다면 확인 가능한 사실과 추정의 경계를 밝히세요.
시간 단축의 원인을 로직 개선으로 분리해 설명하기 어렵다면 자동 재처리 로직 추가를 다른 축으로 제시하세요. 전체 재실행 대신 실패 작업만 처리하도록 범위를 줄인 이유와 실제 복구 절차가 어떻게 달라졌는지 설명하고, 운영 지표가 없다면 관찰한 변화로 한정하세요.
Jenkins 실행 시각만 옮긴 일을 배치 처리 성능 자체를 최적화한 것처럼 설명하거나, 측정 근거 없이 처리량 개선까지 주장하지 마세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.
결제사 응답 지연 대응 사례를 중심으로 당시 관찰한 현상, 점검한 타임아웃·재시도 설정, 수정 또는 유지 결정을 설명하세요. 중복 요청이나 주문 상태 정합성을 실제로 확인했다면 그 근거를 덧붙이고, 다루지 않았다면 담당 범위를 명확히 하세요.
설정 변경을 직접 결정하지 않았다면 장애 원인 공유와 모니터링 알림 조건 추가를 대안으로 삼으세요. 어떤 지연 조건을 감지 대상으로 삼았고 알림이 초기 대응에 어떤 정보를 보태는지 설명하세요. 중복 처리 경험이 없다면 이를 인정하고 유사한 재처리 경험과 구분하세요.
재시도 횟수나 멱등성 처리를 실제로 설계하지 않았다면, 결제 중복을 완전히 방지했다고 단정하지 마세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.
재시도 간격 지정 옵션 PR 2건을 중심으로 사내 사용 흐름에서 어떤 불편이 반복됐는지, 외부 사용자가 확인할 수 있도록 어떻게 재현·정의했는지, 변경 범위와 머지까지의 본인 작업을 설명하세요. 리뷰가 있었다면 실제 반영한 의견만 구체화하세요.
코드 변경보다 문서화와 이슈 대응이 더 명확한 사례라면 한국어 사용 사례 문서와 이슈 대응 12건을 대안으로 삼으세요. 반복적으로 발견된 사용자 혼란이나 문의를 어떻게 정리했는지 설명하되, 자료에 없는 유지보수자 역할이나 사용자 성과를 주장하지 마세요.
PR이 머지됐다는 결과만 강조하고 사내 문제와 옵션 설계의 연결, 본인이 작성한 변경 범위를 설명하지 않는 답변은 피하세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.
주문 목록 API 확장 사례를 중심으로 기존 호출과 새 조건의 호환성을 어떻게 유지했는지, 정렬 기준과 페이징 방식은 어떤 요구를 반영했는지 설명하세요. 실행 계획이나 쿼리 측정을 했다면 조건과 결과를 제시하고, 하지 않았다면 그 범위를 분명히 하세요.
쿼리 튜닝 경험이 제한적이면 예약 서비스의 회원·예약 테이블 스키마 설계 사례를 활용하세요. 주요 조회 흐름과 도메인 관계를 고려한 판단을 설명하고, 현재 주문 목록 튜닝에 적용할 점검 순서는 별도로 제시해 실제 경험과 계획을 구분하세요.
페이징을 추가했다는 이유만으로 대량 데이터 성능을 해결했다고 주장하거나, 확인하지 않은 인덱스·실행 계획을 언급하지 마세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.
배치 실패 자동 재처리 로직을 중심으로 실패 작업을 식별하는 기준, 재처리 시 실행 범위, 성공·실패를 확인하는 방식을 설명하세요. 중복 실행 방지나 재시도 한도가 실제 구현에 포함됐다면 근거를 말하고, 포함되지 않았다면 명확히 구분하세요.
자동 재처리 설계의 세부가 제한적이면 오픈소스의 재시도 간격 지정 옵션을 보완 소재로 삼으세요. 재시도 간격을 설정 가능하게 한 문제 정의와 배치 운영 경험이 어떻게 연결되는지 설명하되, 프로젝트 기능과 사내 구현을 혼동하지 마세요.
실패 건만 처리했다는 설명으로 작업의 멱등성이나 중복 실행 안전성까지 확보했다고 간주하는 답변은 피하세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.
결제사 응답 지연 대응 사례에서 실제로 확인한 타임아웃·재시도와 모니터링 기준을 출발점으로 삼으세요. 그 경험으로 알고 있는 범위와 취소·부분 환불에서 새로 정의해야 할 주문 상태, 중복 요청 식별, 대사·복구 기준을 나눠 설명하세요.
실제 취소·부분 환불 경험이 없다면 경험이 있다고 포장하지 말고, 면접 전 JD의 해당 흐름을 정리해 두세요. 주문 상태와 결제 결과가 어긋나는 경우를 가정해 상태 전이, 재시도 가능 조건, 최종 확인 방법을 순서대로 제안하되 가정임을 분명히 하세요.
결제사 지연 대응 경험을 취소·부분 환불의 실서비스 운영 경험인 것처럼 바꾸어 말하지 마세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.
주문 목록 API의 페이징·정렬 확장 경험을 바탕으로 요청 조건과 응답 시간, 오류 양상, 데이터베이스 조회 상태 등 먼저 확보할 관측 근거를 제시하세요. 실제로 측정한 항목과 아직 측정하지 않은 항목을 나누고, 결과에 따라 개선 대상을 좁히는 흐름을 설명하세요.
부하 테스트 경험이 확인되지 않는 점은 그대로 인정하고, AWS·Grafana 대시보드 조회 경험을 활용해 확인 가능한 지표와 한계를 말하세요. 면접 전에는 가정한 주문 조회 흐름에 대한 부하 테스트 계획을 준비해 동시 요청, 응답 시간 분포, 오류 관찰 방법을 경험과 분리해 제안하세요.
실제 부하 테스트를 수행하지 않았다면 초당 처리량이나 지연 시간 수치를 만들어 말하거나, 페이징 추가만으로 급증 대응을 마쳤다고 하지 마세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.
회원·예약 도메인 스키마 설계와 주문 목록 페이징·정렬 확장 중 실제로 트랜잭션이나 쿼리 동작을 검토한 사례가 있다면 하나를 고르세요. 어떤 요구와 위험을 고려했고 직접 확인한 근거가 무엇인지 설명한 뒤, 경험하지 않은 튜닝 기법은 분리하세요.
직접 수행한 실행 계획 기반 튜닝 사례가 없다면 이를 인정하고, 테이블 스키마 설계 또는 조회 조건 확장에서 다룬 범위를 연결하세요. 면접 전에는 본인이 작성한 대표 조회 쿼리의 트랜잭션 경계와 실행 계획을 검토해 설명할 수 있도록 준비하되, 새로 확인한 내용을 과거 실무 경험처럼 말하지 마세요.
RDBMS를 사용했다는 사실만으로 트랜잭션 설계와 쿼리 튜닝을 모두 수행했다고 답하지 마세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.
메시지 브로커를 실제 사용한 경험이 있다면 이력서에 적히지 않은 범위임을 먼저 밝히고, 어떤 문제에 사용했는지와 직접 맡은 설계·운영 범위를 구체화하세요. 그런 경험이 없다면 없다고 답한 뒤 Spring Batch의 실패 작업 재처리에서 다룬 실패 복구 경험을 연결하세요.
배치 재처리와 오픈소스 재시도 간격 옵션을 다른 축의 유사 경험으로 활용하세요. 재시도와 메시지 전달이 같은 문제가 아님을 구분하고, 실제 브로커 경험이 없다면 면접 전 JD의 SQS 환경에서 메시지 중복·재처리 시 확인할 조건을 살펴본 뒤 계획으로만 제시하세요.
Jenkins 스케줄이나 Spring Batch 재처리를 Kafka 또는 이벤트 기반 구조를 운영한 경험으로 표현하지 마세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.
주문 상세 조회 API 3종의 스펙 협의 사례를 중심으로 프론트엔드 측 사용 시나리오와 백엔드 제약을 어떻게 맞췄는지 설명하세요. 본인이 제안하거나 양보한 항목, Swagger에 남긴 합의 내용, QA 회귀 테스트에서 확인한 결과를 실제 경험에 맞춰 정리하세요.
명확한 의견 충돌이 없었다면 주문 목록 API의 페이징·정렬 조건 확장으로 소재를 바꾸세요. 기존 엔드포인트 호환성과 신규 사용성 사이에서 어떤 기준으로 범위를 잡았고 연동 기준을 어떻게 전달했는지 설명하세요.
프론트엔드와 협의했다는 말만 하고 실제로 조정한 스펙이나 문서에 남긴 내용을 제시하지 않는 답변은 피하세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.
결제사 응답 지연 사례를 중심으로 장애를 어떻게 관찰하고 원인을 정리했는지, 팀에 어떤 정보를 공유했는지, 알림 조건을 어떤 지연 기준에 근거해 추가했는지 설명하세요. 실제 회고 문서가 있었다면 본인이 작성한 부분과 후속 조치를 구분하세요.
팀 공유 자료나 공식 회고 문서가 없다면 오픈소스 이슈 대응 12건에서 문제와 해결 정보를 정리한 경험을 대안으로 쓰세요. 장애 사례와 오픈소스 대응의 맥락은 구분하면서, 다음 사람이 확인할 수 있도록 남긴 정보의 형태와 한계를 설명하세요.
팀에 공유했다는 사실만으로 장애 회고 문서 작성이나 조직 차원의 재발 방지 체계를 정착시켰다고 주장하지 마세요.
면접 세부 준비를 통해 인사이트를 얻을 수 있어요.