Backend
home
🤌🏻

백엔드 면접 대비

# 백엔드 개발자 / 백엔드 엔지니어 면접 질문 리스트 ## 1. 기본적인 질문 (주니어 ~ 전반 공통) > 주로 신입/주니어 또는 공통적으로 물어보는 CS & 실무 기본기 질문입니다. ### 📌 자기소개 & 프로젝트 - 간단하게 자기소개와 본인의 강점을 말씀해주세요. - 최근에 진행한 프로젝트에 대해 설명해주세요. - 프로젝트에서 맡았던 역할과 주요 기여 부분은 무엇인가요? - 개발 중 가장 어려웠던 문제와 이를 어떻게 해결했는지 설명해주세요. ### 📌 언어 & 프레임워크 - Spring MVC와 Spring Boot의 차이점은 무엇인가요? - Java에서 `==``.equals()`의 차이를 설명해주세요. - 자바의 `final`, `finally`, `finalize()`의 차이는 무엇인가요? - RESTful API란 무엇이고 설계 시 주의할 점은 무엇인가요? - @Transactional의 동작 방식은 어떻게 되나요? ### 📌 데이터베이스 - RDB와 NoSQL의 차이점과 각각의 장단점은? - 인덱스(Index)의 동작 원리와 장단점을 설명해주세요. - JOIN의 종류와 각 사용 사례를 설명해주세요. - N+1 문제는 무엇이며, 어떻게 해결하나요? - 데이터베이스 트랜잭션 격리 수준을 설명해주세요. ### 📌 네트워크 & HTTP - HTTP와 HTTPS의 차이는 무엇인가요? - HTTP 상태 코드 중 200, 201, 301, 400, 401, 403, 404, 500의 의미를 설명해주세요. - GET과 POST의 차이점은 무엇인가요? - 쿠키와 세션의 차이점은? - CORS란 무엇이며, 해결 방법은 무엇인가요? ### 📌 운영 & 배포 - CI/CD의 개념과 사용하는 이유는 무엇인가요? - Docker를 사용하는 이유와 장점은 무엇인가요? - 서버 장애 발생 시 어떤 순서로 문제를 파악하나요? --- ## 2. 경력자에게 주로 던지는 심화 질문 > 주로 **설계 능력, 성능 최적화 경험, 트러블슈팅, 팀 협업** 관련 질문이 많습니다. ### 📌 설계 & 아키텍처 - MSA(Microservices Architecture)와 Monolithic의 차이점과 장단점은? - 대규모 트래픽이 발생하는 서비스에서 부하를 분산하기 위한 방법은? - 캐시(Cache) 전략은 어떻게 설계하셨나요? - API 응답 속도가 느릴 때 어떤 방식으로 분석하고 개선하셨나요? - 장애 대응 매뉴얼을 만든 적이 있나요? ### 📌 성능 최적화 & 트러블슈팅 - 쿼리 튜닝 경험을 설명해주세요. (예: 실행 계획, 인덱스 조정) - Redis를 사용한 경험이 있나요? 어떤 용도로 사용했나요? - 대용량 데이터 처리 시 어떤 접근 방식을 사용했나요? - JPA의 fetch join, batch size, entity graph 등을 적용한 경험이 있나요? - 동시성 문제를 해결한 경험이 있나요? (예: synchronized, Lock, Redis 분산 락) ### 📌 보안 - JWT 인증의 동작 과정을 설명해주세요. - CSRF, XSS, SQL Injection을 방지하는 방법은? - OAuth2.0과 OpenID Connect의 차이점은? - HTTPS에서 SSL/TLS 핸드셰이크 과정은? ### 📌 협업 & 코드 품질 - 코드 리뷰를 어떻게 진행하나요? - Git 브랜치 전략(Git Flow 등)을 설명해주세요. - CI/CD에서 테스트 자동화를 어떻게 구성했나요? - 장애 발생 시 DevOps/SRE 팀과 어떻게 협력했나요? ### 📌 경험 기반 질문 - 실제로 성능을 2배 이상 개선했던 사례가 있다면 설명해주세요. - 서비스 장애나 심각한 버그를 해결했던 경험을 이야기해주세요. - 설계 단계에서 잘못된 의사결정을 한 경험과 이를 어떻게 수정했는지 설명해주세요. - 배포 후 롤백이 필요한 상황이 발생했을 때 어떻게 처리했나요? --- ## 3. 보너스 – 압박 면접 스타일 질문 - 당신의 코드에서 가장 부끄러운 부분은 무엇이었나요? - 팀 내에서 당신을 대체할 수 있는 사람이 있다면, 당신이 여기 있어야 하는 이유는? - 최근에 새로 배운 기술 중에서, 실무에 당장 적용할 수 있는 것은? - 1억 명의 사용자가 동시에 접속하는 시스템을 설계해보세요. - 기존 시스템을 무중단 배포로 전환하려면 어떻게 해야 하나요?
Markdown
복사