백엔드 개발은 모든 개발에서 필수 항목입니다. 게임, 일반 서비스 개발에서 백엔드는 모든 데이타와 액션을 처리, 저장합니다. 매우 중요한 개발직군으로 백엔드 개발자 로드맵에 대해 알아보도록 하겠습니다.
목차
Toggle1. 인터넷
- 인터넷 작동 원리
- HTTP란 무엇인가
- 브라우저 작동 방식
- DNS란 무엇인가
- 도메인 이름 (Domain Name)
- 호스팅이란 무엇인가
2. 개발 언어
- 자바 (Java)
- C#
- PHP
- 자바스크립트 (Javascript)
- 파이썬 (Python)
- 루비 (Ruby)
- 러스트 (Rust)
- 고 (Go)
3. 소스 관리 시스템
- Git
3. 소스 관리 서비스
- GitHub
- GitLab
- Bitbucket
4. 운영체제(OS)와 사용 도구
- 터미널 사용법
- POSIX
5. 관계형 데이터베이스
- PostgreSQL
- MySQL
- MariaDB
- MS SQL
- Oracle
6. NoSQL 데이터베이스
- 문서형 DB (Document DB)
- 시계열 DB (Time Series)
- 실시간 DB (Realtime)
- 컬럼형 DB (Column DB)
- 키-값 DB (Key-Value)
- 그래프 DB (Graph DB)
7. DB 기술
- ORM (객체-관계 매핑)
- ACID
- 트랜잭션 (Transactions)
- N+1 문제
- 정규화 (Normalization)
- 실패 모드 (Failure Modes)
- 성능 프로파일링 (Profiling Performance)
8. 데이터베이스 확장
- 데이터베이스 인덱스
- 데이터 복제 (Data Replication)
- 샤딩 전략 (Sharding 전략)
- CAP 정리 (CAP Theorem)
9. API
- HATEOAS
- Open API 사양
- 인증 (Authentication)
- REST
- JSON API
- SOAP
- gRPC
- GraphQL
10. 캐싱
- 클라이언트 측 캐싱
- 서버 측 캐싱
- CDN (콘텐츠 전송 네트워크)
11. 웹 보안
- 해싱 알고리즘 (Hashing Algorithm)
- API 보안 모범 사례 (API Security Best Practices)
12. 테스트
- 통합 테스트 (Integration Testing)
- 단위 테스트 (Unit Testing)
- 기능 테스트 (Functional Testing)
13. CI/CD
소프트웨어 디자인
1. 개발 원리
- GOF 디자인 패턴
- 도메인 주도 설계 (Domain Driven Design)
- 테스트 주도 개발 (Test Driven Development)
- CQRS (명령-쿼리 책임 분리)
- 이벤트 소싱 (Event Sourcing)
2. 아키텍처
- 모놀리식 애플리케이션 (Monolithic Apps)
- 마이크로서비스 (Microservices)
- SOA (서비스 지향 아키텍처)
- 서버리스 (Serverless)
- 서비스 메시 (Service Mesh)
- 12요소 앱 (Twelve Factor Apps)
3. 메시지 브로커
- RabbitMQ
- Kafka
4. 컨테이너화 vs 가상화
- 쿠버네티스 (Kubernetes)
- 도커 (Docker)
- LXC
5. GraphQL
- 아폴로 (Apollo)
- Relay Modern
6. 웹소켓 (WebSockets)
7. 서버 전송 이벤트 (Server Sent Events)
8. 웹 서버
- Nginx
- Apache
- Caddy
- MS IIS
9. 확장성을 위한 구축
- 우아한 축소 (Graceful Degradation)
- 쓰로틀링 (Throttling)
- 백프레셔 (Backpressure)
- 부하 분산 (Loadshifting)
- 회로 차단기 (Circuit Breaker)
- 계측 (Instrumentation)
- 모니터링 (Monitoring)
- 원격 측정 (Telemetry)