백엔드 개발자 가이드
백엔드(Backend)는 클라이언트가 보내는 요청을 처리하고, 데이터를 저장·가공해 응답을 돌려주는 서버 쪽 로직을 다루는 분야입니다. 화면에는 드러나지 않지만 인증, 결제, 데이터 정합성처럼 서비스 신뢰성을 좌우하는 부분을 책임집니다. 화면을 만드는 프론트엔드 가이드와 짝을 이루어 하나의 서비스를 완성합니다.
학습 순서
백엔드 학습은 인터넷 동작 원리를 이해하는 데서 시작해, 사용할 프로그래밍 언어를 하나 정하고 버전 관리 시스템을 익히는 것으로 이어집니다. 언어를 정한 뒤에는 관계형 데이터베이스(Relational Database)의 기본기를 쌓고, API를 설계하는 방법과 캐싱(Caching) 개념을 배웁니다. 이 단계까지가 서비스를 동작시키는 최소 골격입니다.
골격을 갖춘 뒤에는 웹 보안과 인증(Authentication) 방식을 익히고, 테스트와 CI/CD(지속적 통합·배포) 체계를 갖춥니다. 이어서 정규화·트랜잭션 같은 데이터베이스 심화 개념과 샤딩(Sharding)·복제 같은 스케일링 기법을 배우고, 모놀리식(Monolithic)·마이크로서비스(Microservices) 같은 아키텍처 패턴, 컨테이너화(Containerization)까지 범위를 넓힙니다. 마지막 단계에서는 메시지 브로커, 검색 엔진, NoSQL 데이터베이스, 관측성(Observability)처럼 대규모 트래픽을 감당하기 위한 인프라 지식으로 이어집니다.
전체 흐름을 처음부터 훑고 싶다면 백엔드(종합) 학습 주제를, 핵심만 빠르게 익히고 싶다면 백엔드 입문 학습 주제를 먼저 살펴보는 것을 권합니다.
지금까지 설명한 흐름을 한눈에 정리하면 [그림 1]과 같습니다.
[그림 1] 백엔드 학습 로드맵 흐름도
4단계는 서로 독립된 묶음이 아니라 앞 단계가 다음 단계의 전제 조건이 되는 순서입니다. 1단계와 2단계를 마치면 요청을 받아 데이터베이스에 접근하고 응답을 돌려주는 서비스가 최소 단위로 동작하므로, 그림에서 2단계를 강조 표시했습니다. 3단계부터는 이 최소 골격에 보안·테스트·스케일링 역량을 더해 실서비스 수준으로 끌어올리는 과정이고, 4단계는 트래픽 규모가 커졌을 때 필요한 인프라 지식을 다룹니다. 처음 학습한다면 1·2단계까지 완주해 동작하는 서비스를 먼저 만들어 보고, 이후 단계는 실제로 필요해지는 시점에 순서대로 채워 나가는 방식을 권합니다.
학습 주제
| 학습 주제 | 다루는 내용 |
|---|---|
| 백엔드(종합) | 언어 선택부터 데이터베이스, API, 아키텍처, 스케일링까지 전체 로드맵 |
| 백엔드 입문 | 상세 로드맵 이전에 핵심만 압축한 입문 과정 |
| Node.js | JavaScript 기반 서버 런타임 |
| Django | Python 기반 풀스택 웹 프레임워크 |
| ASP.NET Core | .NET 기반 크로스플랫폼 웹 프레임워크 |
| Spring Boot | Java 기반 엔터프라이즈 웹 프레임워크 |
| Laravel | PHP 기반 웹 프레임워크 |
| Ruby on Rails | Ruby 기반 컨벤션 중심 웹 프레임워크 |
| Golang | 동시성 처리에 강한 서버 언어 |
| Java | 엔터프라이즈 서버 개발의 핵심 언어 |
| PHP | 웹 서버 스크립팅 언어 |
| Python | 범용 서버 언어이자 데이터 분야 연결점 |
| GraphQL | 클라이언트가 필요한 데이터만 질의하는 API 방식 |
| API 설계 | REST·API 설계 원칙과 문서화 |
| SQL | 관계형 데이터베이스 질의 언어 |
| PostgreSQL DBA | PostgreSQL 운영과 성능 튜닝 |
| MongoDB | 문서 지향 NoSQL 데이터베이스 |
| Redis | 인메모리 캐시·키-값 저장소 |
| Elasticsearch | 분산 검색·로그 분석 엔진 |
다른 영역과의 연결
백엔드를 마친 뒤에는 인프라 자동화와 배포를 다루는 DevOps & 인프라 가이드로 이어가거나, 화면을 함께 다루려면 프론트엔드 개발자 가이드로 넘어갈 수 있습니다. 모델을 감싸는 API를 다루게 된다면 AI 기초 가이드도 함께 참고할 만합니다.
이 로드맵에서 읽을 지식 문서
- 스택과 힙 메모리 나눠 보기
함수 호출에 따라 쌓이고 비워지는 스택과 동적으로 할당되는 힙의 차이를 이해하고 메모리 관리 원리를 살펴봅니다.
- 프로세스와 스레드 구분하기
독립된 메모리를 갖는 프로세스와 메모리를 공유하는 스레드의 차이를 이해하고 동시성과 병렬성을 구분합니다.
- DB 인덱스가 조회를 빠르게 하는 이유
전체 테이블 스캔과 B-트리 인덱스 탐색의 비용 차이를 비교하고 인덱스 동작 원리와 설계 주의점을 알아봅니다.
- URL을 입력하면 일어나는 일: DNS와 TCP
브라우저가 주소를 IP로 바꾸는 DNS 조회부터 3-way 핸드셰이크와 TLS를 거쳐 HTTP 요청이 도달하는 과정을 짚어 봅니다.
- 컨테이너와 이미지 이해하기
실행 파일과 설정을 담은 이미지가 컨테이너로 실행되는 과정을 직접 확인합니다.
- 트랜잭션으로 변경 묶기
여러 데이터 변경을 한 처리 단위로 묶고 COMMIT과 ROLLBACK의 차이를 확인합니다.
- Git으로 변경 기록하기
작업 트리, 스테이징 영역, 커밋을 구분하고 작은 저장소에 변경을 기록합니다.
- HTTP 요청과 응답
요청과 응답 메시지를 읽고 브라우저가 웹 자원을 가져오는 흐름을 확인합니다.
관련 로드맵
DevOps & 인프라 가이드
리눅스와 네트워킹 기초부터 컨테이너, 클라우드, CI/CD, 모니터링까지 서비스 배포와 운영 자동화를 다룹니다.
프론트엔드 개발자 가이드
HTML·CSS·JavaScript로 화면을 구성하고, React·Vue·Angular 같은 프레임워크로 사용자 인터페이스를 완성하는 방법을 다룹니다.
AI 기초 가이드
머신러닝 모델을 훈련하고 서비스로 운영하는 경로를 데이터·알고리즘·MLOps 순으로 다룹니다.