Lesson 9

프로젝트 깊이 있게 설명하기 — 면접관이 파고들 때 대처법

3 min Views 1

기술 면접에서 자신의 프로젝트를 단순 소개가 아닌 기술적 의사결정, 트레이드오프, 문제 해결 과정 중심으로 설명하는 방법을 익히고, 면접관이 예상치 못한 방향으로 파고들 때 흔들리지 않는 답변 전략을 완성한다.

이번 강에서 배울 것

  • 프로젝트 설명 구조 — 기능 나열이 아닌 의사결정 스토리
  • 기술 선택 이유를 논리적으로 설명하는 방법
  • 면접관 심화 질문 유형과 대응 전략
  • "모른다"고 할 때와 아는 척할 때의 결과
  • 프로젝트 설명 연습 체크리스트

프로젝트 설명 3단계 구조

잘못된 방식 (기능 나열):
"이 프로젝트는 로그인, 게시글 CRUD, 댓글 기능,
알림 기능을 구현했습니다. 백엔드는 Node.js,
DB는 MySQL을 사용했습니다."

올바른 방식 (의사결정 스토리):

1단계: 배경 (30초)
"3인 팀으로 중고 거래 앱을 만들었습니다.
실제 서비스처럼 동시 입찰 처리가 필요했고,
이 부분에서 기술적 도전이 있었습니다."

2단계: 핵심 문제와 해결 (2분)
"문제: 같은 상품에 여러 사람이 동시에 낙찰 시도 시 중복 처리 발생
접근: SELECT FOR UPDATE(비관적 락) vs 낙관적 락 비교 검토
선택: 낙찰은 드문 이벤트지만 충돌 시 비용이 큰 상황
      → 비관적 락이 안전하다고 판단, 적용
결과: 동시 100건 요청 시 중복 낙찰 0건 달성"

3단계: 배운 점 (30초)
"이 경험으로 트랜잭션 격리 수준과 락 전략을
실무적으로 이해하게 되었습니다."

기술 선택 이유 설명 프레임

면접관이 가장 좋아하는 답변 구조:
[A vs B 비교] → [선택 기준] → [트레이드오프 인정]

예시: "왜 MySQL이 아닌 PostgreSQL을 선택했나요?"

나쁜 답변: "많이 쓰길래요" / "익숙해서요"

좋은 답변:
"JSON 컬럼과 배열 타입을 자주 사용할 예정이었고,
PostgreSQL이 MySQL보다 이 부분을 더 풍부하게 지원합니다.
또한 팀원이 이미 경험이 있어 학습 비용도 낮았습니다.
다만 MySQL에 비해 호스팅 선택지가 적다는 단점을 인지했고,
프로젝트 규모상 허용 가능하다고 판단했습니다."

면접관 심화 질문 유형과 대응

질문 유형예시대응 방법
구현 세부사항"락 구현 코드를 보여주세요"핵심 로직 의사코드로 설명, 코드 암기 불필요
확장성 질문"사용자가 100만이면 어떻게 바꾸겠나요?"현재 구조의 병목 + 개선 방향 제시
실패 경험"처음 선택이 잘못된 것을 깨달은 적 있나요?"솔직히 인정 + 어떻게 수정했는지
대안 검토"다른 방법도 있었을 텐데 왜 이 방법을?"비교한 대안 언급 + 선택 기준
모르는 질문"Redis Sentinel과 Redis Cluster 차이는?"아는 부분에서 추론, 모른다고 솔직히

"모른다"고 할 때의 올바른 방법

잘못된 방법:
침묵 → 10초 이상 아무 말 없이 멈추기
아는 척 → 틀린 내용을 자신 있게 말하기

올바른 방법:

1단계: 아는 부분 먼저 말하기
"Redis Sentinel은 들어본 적 있는데,
Sentinel이 마스터 장애 시 자동 Failover를 처리하는 것으로 알고 있습니다.
Cluster는 데이터를 분산 저장하는 방식으로 알고 있는데,
두 가지의 정확한 차이는 조금 불확실합니다."

2단계: 추론하기
"Sentinel은 고가용성, Cluster는 수평 확장에 초점을 맞추는 것 같습니다.
맞게 이해한 것인가요?"

3단계: 배우려는 태도 보이기
"이 부분을 좀 더 공부해봐야겠습니다.
정확한 차이를 설명해 주실 수 있으신가요?"

왜 이 방법이 좋은가:
면접관은 지원자가 모든 것을 알기를 기대하지 않음
아는 척보다 정직함 + 추론 능력 + 학습 의지가 더 좋은 인상

프로젝트별 예상 심화 질문 준비

프로젝트 준비 체크리스트:

기술 선택 이유:
[ ] 사용한 언어/프레임워크를 선택한 이유
[ ] DB 선택 이유 (RDB vs NoSQL, 왜 그 제품)
[ ] 클라우드/배포 환경 선택 이유

성능 관련:
[ ] 가장 느린 API 응답 시간은?
[ ] 어떻게 최적화했나? (인덱스, 캐싱, 쿼리 개선)
[ ] 동시 사용자 몇 명까지 처리 가능한가?

보안 관련:
[ ] 인증은 어떻게 구현했나? (JWT, 세션)
[ ] SQL 인젝션, XSS 방어는?
[ ] 비밀번호 저장 방법 (bcrypt, Argon2)

확장성:
[ ] 현재 구조의 병목 지점은?
[ ] 사용자 10배 증가 시 어디서 문제 발생?
[ ] 어떻게 개선할 계획인가?

실패/한계:
[ ] 개발 중 가장 힘들었던 점은?
[ ] 지금 다시 만든다면 다르게 할 것은?

강의 핵심 요약

  • 프로젝트 설명 = 기능 나열이 아닌 의사결정 스토리 (배경 → 문제 → 선택 → 결과)
  • 기술 선택은 항상 "[A vs B 비교] → [선택 기준] → [트레이드오프 인정]" 구조로
  • 모를 때: 아는 부분 말하기 → 추론 → 배우려는 태도 — 아는 척보다 훨씬 좋음
  • 다음 강: 행동 면접(인성 면접) — STAR 기법으로 구조화된 답변 만들기

관련 검색어  ·  기술 면접 프로젝트 설명, 기술 선택 이유 면접, 면접 모르는 질문 대처, 포트폴리오 프로젝트 면접, 기술 면접 트레이드오프, 개발자 면접 답변

채용정보
공지사항
인사이트
MY