최종 발표 예상 질문
- Thymeleaf를 사용한 서버 사이드 렌더링(SSR)의 장점은 무엇인가요?
- HTTPS를 도입한 보안적 이점은 무엇인가요?
- 데이터의 암호화를 통해 사용자 정보와 통신 내용을 보호하고, 데이터 무결성을 보장하며, MITM(Man-In-The-Middle) 공격을 방지합니다.
- 이예진
- Nginx를 사용한 무중단 배포 방식의 작동 원리는 무엇인가요?
- Amazon RDS와 MySQL을 선택한 이유는 무엇인가요?
- 관리의 편리성, 확장성, 백업과 복구 기능, 고가용성 등 Amazon RDS가 제공하는 다양한 기능과 MySQL의 널리 알려진 안정성 때문입니다.
- 이예진
- Redis를 이용한 토큰 관리 시스템의 설계 방법은 무엇인가요?
- Refresh Token을 Key-Value 형태로 저장하고, TTL(Time-To-Live)을 설정하여 자동 만료 기능을 활용한 토큰의 유효성 관리 방법입니다.
- GitHub Actions를 통한 CI/CD 파이프라인 구성의 핵심 요소는 무엇인가요?
- 코드 통합, 자동 테스트, 빌드 생성, AWS EC2로의 자동 배포 등을 포함하여, 개발 생산성을 높이고 배포 과정의 자동화를 구현하는 것입니다.
- QueryDSL을 적용하여 해결한 N+1 문제의 기술적 해결 방법은 무엇인가요?
- QueryDSL을 사용하여 조인 쿼리를 최적화하고, fetch join을 통해 연관된 엔티티를 한 번의 쿼리로 불러와 N+1 문제를 해결합니다.
- 이미지 리사이징을 위해 사용한 FileReader와 Canvas API의 작동 원리는 무엇인가요?
- FileReader API로 이미지 파일을 읽어 브라우저에서 직접 접근 가능한 형태로 변환하고, Canvas API를 이용해 이미지 크기를 조정하여 용량을 줄입니다.
- 박상율
- 소셜 로그인 구현 시 보안을 위해 취한 조치는 무엇인가요?
- Spring Boot의 장점을 프로젝트에 어떻게 활용했나요?
- Spring Boot의 자동 구성, 내장 서버, 다양한 스타터 패키지를 활용하여 빠르게 개발 환경을 구축하고, RESTful API 구현의 편리함을 누렸습니다.
- AWS S3 버킷을 이용한 파일 저장의 이점은 무엇인가요?
- 높은 내구성, 전 세계 어디서나 접근 가능한 스토리지, 비용 효율성, 확장성 등 AWS S3의 이점을 활용하여 파일 저장 및 관리의 효율성을 높였습니다.
- 박상율
- 로드 밸런싱을 고려한 아키텍처 설계의 중요성은 무엇인가요?
- 시스템의 부하를 균등하게 분산시켜 서비스의 가용성과 확장성을 높이며, 사용자 요청 처리의 효율성을 개선하는 것이 중요합니다.
- Redis의 TTL 기능을 통한 토큰 만료 관리의 장점은 무엇인가요?
- 자동 만료 기능을 통해 토큰의 생명 주기를 관리하므로, 보안성을 유지하면서도 토큰 관리의 오버헤드를 줄일 수 있습니다.
- HTTPS와 SSL 인증서를 통한 데이터 암호화의 기술적 원리는 무엇인가요?
- SSL 인증서를 이용해 클라이언트와 서버 간의 통신을 암호화하여, 데이터의 기밀성과 무결성을 보장하는 보안 프로토콜입니다.
- 백엔드와 프론트엔드의 분리를 위한 아키텍처 선택 기준은 무엇인가요?
- 유지 보수의 용이성, 개발의 유연성, 기술 스택의 호환성 등을 고려하여, 각각의 계층이 독립적으로 개발 및 확장될 수 있는 구조를 선택합니다.
- 프론트엔드 프레임워크 선택 시 고려한 기준은 무엇이며, 왜 그 기술을 선택했나요?
- 사용자 경험, 개발 커뮤니티의 활성도, 학습 곡선, 프로젝트 요구 사항 등을 고려하여 최적의 프론트엔드 기술 스택을 선택합니다.
- 김재한
- 데이터베이스 트랜잭션 관리를 어떻게 구현했나요?
- Spring의 @Transactional 어노테이션을 활용하여, 데이터베이스 작업을 일관되고 안정적으로 관리하며, 롤백과 커밋을 자동으로 처리합니다.
- 웹 애플리케이션의 보안을 강화하기 위해 취한 추가 조치는 무엇인가요?
- Spring Security를 통한 인증 및 권한 관리, CSRF(Cross Site Request Forgery) 보호, XSS(Cross Site Scripting) 방지 등의 보안 조치를 취했습니다.
- 프로젝트에서 경험한 가장 큰 기술적 도전과 그 해결 과정은 무엇인가요?
- 특정 기술적 도전(예: 성능 최적화, 보안 이슈)과 이를 해결하기 위해 적용한 기술적 해결책(예: 캐싱 전략, 보안 프로토콜 적용)에 대한 설명입니다.