✅ 1. 백엔드 개발자의 핵심 기술 지식
📦 API & 서버 구조
- RESTful API 설계 원칙 (GET, POST, PUT, DELETE + status codes)
- REST vs GraphQL
- Controller → Service → Repository 구조 (NestJS 기준)
- API 버전 관리, Rate Limiting, Pagination
🧱 데이터베이스
- SQL 기본 문법 (SELECT, JOIN, GROUP BY, INDEX 등)
- RDB 설계 원칙 (정규화, 관계 설정, PK/FK 개념)
- PostgreSQL 특성 (시드니 시장 선호 DB)
- ORM 사용법 (Prisma 또는 TypeORM)
- 트랜잭션, ACID, 커넥션 풀
🧑💻 인증 & 보안
- JWT (Access / Refresh 토큰 구조)
- OAuth2 기본 흐름
- HTTPS, CORS, XSS, CSRF 등 웹 보안 기본
- Password hashing (bcrypt)
🧠 구조 설계 & 패턴
- MVC, Clean Architecture 개념
- 비동기/동기 처리 (Promise, async/await, Event Loop)
- 에러 핸들링 패턴 (try/catch, middleware error handler)
- Dependency Injection (NestJS)
🔍 테스트 & 문서화
- Swagger / OpenAPI로 API 문서화
- Unit Test / E2E Test 개념 (Jest, Supertest)
- Postman or Thunder Client 활용
✅ 2. 배포/인프라 실무 지식
면접에서 실전 경험을 묻는 경우 대비
☁️ 배포 및 운영
- Docker 기본 사용법 (Dockerfile, docker-compose)
- Node.js 서버 운영 (PM2, Nginx, 환경변수 관리 등)
- AWS EC2 + S3 + RDS 기본 구성
- CI/CD 흐름 이해 (GitHub Actions, Vercel 경험)
✅ 3. 면접에 자주 나오는 CS 지식
기본적인 이론은 간단히라도 설명할 수 있어야 해요.
분류 키워드
| OS | 쓰레드 vs 프로세스, 블로킹 vs 논블로킹 |
| 네트워크 | HTTP vs HTTPS, DNS 흐름, TLS/SSL |
| DB | Index 동작, 정규화, NoSQL vs RDB |
| 자료구조 | 배열, 해시, 트리 개념 |
| 알고리즘 | 이진탐색, 투포인터, 정렬 (LeetCode Easy 정도) |
✅ 4. 시드니 백엔드 면접 질문 예시 (실제 채용 기준)
질문 유형 예시
| REST | "Explain the difference between PUT and PATCH." |
| DB 설계 | "How would you design a table for a blog system?" |
| 보안 | "How do you implement secure authentication in REST APIs?" |
| 배포 | "Explain how you would deploy a Node.js app with Docker." |
| TS/Nest | "How does Dependency Injection work in NestJS?" |
| 상황 | "Tell me about a time you handled a failing production API." |
✅ 추천 학습 & 정리 방법
방식 내용
| ✅ 프로젝트 기반 학습 | NestJS + Prisma로 CRUD + 인증 + Swagger 포함 백엔드 직접 구현 |
| ✅ TIL 블로그 정리 | 위 항목들을 하루에 하나씩 정리 (ex: JWT 구조, REST 원칙) |
| ✅ 면접 예상 답변 작성 | 각 항목에 대해 2~4문장 요약 문장 직접 써보기 |
| ✅ GitHub + README 정리 | 설계 흐름, 구조 설명을 정리한 포트폴리오 레포 하나는 필수 |
'Web & App > Backend Study' 카테고리의 다른 글
| 🧑💻 TypeScript 기본 타입 정리 & 실수 줄이는 팁 (1) | 2025.07.03 |
|---|---|
| MongoDB와 NoSQL (0) | 2025.02.03 |
| 현대 웹 개발에서 백엔드 작업 순서 및 기술 스택 🚀 (1) | 2025.02.03 |
| Node.js와 Sequelize: 효율적인 데이터베이스 ORM 활용 (0) | 2025.02.02 |
| Node.js에서 MySQL 연결하기 (0) | 2025.02.01 |