CPM

백엔드 개발자

서버·API·데이터베이스를 설계하고 서비스가 실제로 돌아가게 만드는 뒷단 로직을 구현하는 직무입니다.

최종 업데이트 2026-08-23

01

백엔드 개발자는 어떤 일을 하나요

백엔드 개발자는 사용자 눈에 보이지 않는 쪽을 만듭니다. 앱이나 웹 화면이 데이터를 요청하면 그 요청을 받아 처리하고, 데이터베이스에서 필요한 값을 꺼내 가공한 뒤 돌려주는 서버 프로그램을 작성합니다.

신입 채용공고를 모아 보면 요구사항이 거의 겹칩니다. 언어 하나를 제대로 다루는 능력, 그 언어의 대표 웹 프레임워크, 관계형 데이터베이스와 SQL, Git, 그리고 HTTP가 어떻게 동작하는지에 대한 이해입니다. 화려한 기술보다 이 다섯 가지를 얼마나 설명할 수 있느냐가 서류와 면접을 가릅니다.

가장 큰 오해는 기술 스택을 많이 나열해야 유리하다는 생각입니다. 실제 면접에서는 프로젝트 하나를 깊게 파고듭니다. 왜 그 DB를 골랐는지, 인덱스를 왜 걸었는지, 요청이 몰리면 어떻게 되는지를 묻습니다. 나열보다 설명이 중요합니다.

하루 업무는 대략 이렇습니다

  • 기획·프론트엔드와 협의해 필요한 API의 요청·응답 형태를 정한다
  • 비즈니스 로직을 코드로 옮기고 테스트 코드를 작성한다
  • 데이터베이스 테이블을 설계하고 느린 쿼리를 개선한다
  • 코드 리뷰를 주고받고, 배포 후 에러 로그와 지표를 확인한다
  • 장애가 나면 로그를 추적해 원인을 찾고 재발 방지책을 남긴다

02

필요한 핵심 역량과 기술 스택

필수는 없으면 서류에서 걸러지는 항목, 권장은 대부분의 합격자가 갖추는 항목, 우대는 있으면 확실히 차별화되는 항목입니다.

언어 · 프레임워크

아래 중 하나를 골라 깊게 파면 됩니다. 여러 개를 얕게 아는 것보다 하나를 제대로 하는 편이 유리합니다.

  • Java + Spring Boot필수

    국내 채용공고 수가 가장 많은 조합입니다. 대기업·금융·SI·규모 있는 서비스사 대부분이 이 스택을 씁니다. 어디로 갈지 아직 모르겠다면 이쪽이 무난합니다.

  • Python + Django / FastAPI필수

    스타트업과 데이터·AI를 함께 다루는 팀에서 많이 씁니다. 문법이 쉬워 진입은 빠르지만 신입 공고 수는 Java보다 적습니다.

  • Node.js + NestJS / Express필수

    프론트엔드 경험이 있거나 스타트업을 노린다면 선택지가 됩니다. NestJS는 Spring과 구조가 비슷해 나중에 옮겨가기도 수월합니다.

  • Kotlin우대

    Spring 진영에서 Java 대신 쓰는 곳이 늘고 있습니다. Java를 먼저 익힌 뒤 봐도 늦지 않습니다. 처음부터 Kotlin으로 시작할 필요는 없습니다.

데이터베이스

  • SQL필수

    JOIN, GROUP BY, 서브쿼리를 막힘없이 쓸 수 있어야 합니다. 면접에서 직접 쿼리를 작성하게 하는 곳도 많습니다.

  • MySQL / PostgreSQL필수

    테이블 설계(정규화), 인덱스가 왜 필요한지, 트랜잭션과 격리 수준의 개념까지는 설명할 수 있어야 합니다.

  • ORM (JPA / SQLAlchemy / Prisma)권장

    실무에서 거의 항상 씁니다. 특히 JPA는 N+1 문제를 아는지 자주 물어봅니다.

  • Redis우대

    캐시와 세션 저장소로 씁니다. 어디에 왜 캐시를 넣었는지를 프로젝트에서 한 번 경험해두면 이야깃거리가 됩니다.

웹 · 네트워크 기초

  • HTTP / REST API 설계필수

    메서드와 상태 코드의 의미, 멱등성, 요청·응답 구조를 일관되게 설계하는 감각이 필요합니다.

  • 인증 · 인가권장

    세션과 JWT의 차이, 토큰을 어디에 저장하고 왜 그렇게 하는지 정도는 설명할 수 있어야 합니다.

  • 네트워크 기본권장

    브라우저에 주소를 입력하면 무슨 일이 일어나는지, TCP·DNS·HTTPS가 각각 무슨 역할인지. 면접 단골 질문입니다.

개발 환경 · 협업

  • Git / GitHub필수

    브랜치를 나눠 작업하고 Pull Request로 합치는 흐름이 몸에 배어 있어야 합니다. 커밋 메시지도 봅니다.

  • 자료구조 · 알고리즘필수

    코딩테스트 대비. 백준 실버~골드, 프로그래머스 레벨 2 정도를 안정적으로 풀면 대부분의 신입 전형을 통과합니다.

  • 테스트 코드우대

    JUnit·pytest 등으로 단위 테스트를 짜본 경험. 신입에게 요구하는 곳은 적지만 있으면 확실히 눈에 띕니다.

  • Docker / CI·CD우대

    직접 배포까지 해본 경험이 있으면 실제로 굴려봤다는 신호가 됩니다.

03

우대 자격증과 경험

자격증은 실력을 대신하지 못하지만 서류 통과와 학습 커리큘럼에는 도움이 됩니다. 우선순위를 보고 고르세요.

정보처리기사

권장

개발 실력을 직접 증명하지는 못하지만 공기업·금융권·일부 대기업 서류에서 가점이나 지원 자격으로 쓰입니다. 대학 3학년 이상이면 응시할 수 있습니다. 목표가 사기업 개발 직군뿐이라면 우선순위는 낮습니다.

공식 사이트 →

SQLD (SQL 개발자)

우대

난이도가 높지 않고 SQL을 체계적으로 정리하는 계기가 됩니다. 취득 기간이 짧아 가성비가 좋습니다.

공식 사이트 →

AWS Certified Cloud Practitioner / Solutions Architect – Associate

우대

배포까지 스스로 해봤다는 인상을 줍니다. 다만 자격증만 있고 배포 경험이 없으면 오히려 역효과이니, 프로젝트 배포를 먼저 하고 따는 편이 낫습니다.

공식 사이트 →

평가에 도움이 되는 경험

실제로 배포해서 접속되는 서비스

로컬에서만 도는 프로젝트와 URL이 있는 프로젝트는 평가가 다릅니다. 도메인까지 붙이면 더 좋습니다.

여러 명이 함께한 협업 프로젝트

이슈를 나누고 코드 리뷰를 주고받은 기록이 GitHub에 남아 있으면 협업 능력을 보여줄 수 있습니다.

성능을 개선해본 경험

느린 쿼리에 인덱스를 걸어 응답 시간을 줄였다는 식으로 전·후 숫자가 있는 경험은 면접에서 가장 강력한 소재입니다.

인턴 · 현업 프로젝트

짧은 인턴이라도 실제 트래픽이 있는 코드를 만져본 경험은 크게 평가됩니다.

오픈소스 기여 · 기술 블로그

필수는 아니지만 꾸준함과 학습 태도를 보여주는 자료가 됩니다.

04

신입이 준비하는 포트폴리오 형태

개수를 늘리는 것보다 하나를 끝까지 완성하는 편이 유리합니다. 체크리스트를 기준으로 완성도를 점검하세요.

동작하는 REST API 서버 (핵심 1개)

입문

주제는 평범해도 괜찮습니다. 중고거래, 예약, 커뮤니티 어느 것이든 상관없습니다. 중요한 건 회원가입·인증부터 데이터 조회·등록·수정·삭제까지 하나의 흐름이 끝까지 동작하고, 실제 서버에 올라가 있는 것입니다.

  • GitHub 리포지토리 공개 + README에 기능 목록과 실행 방법
  • ERD(테이블 설계도)와 API 명세 문서 포함
  • 회원가입·로그인 등 인증 기능 구현
  • 클라우드(EC2·Railway·Render 등)에 배포된 접속 가능한 URL
  • 왜 이 구조로 만들었는지 설명한 README 섹션

문제를 하나 정해 개선한 기록

중급

위 프로젝트에서 파생시키는 것이 가장 효율적입니다. 예를 들어 데이터 10만 건을 넣고 조회가 느려지는 상황을 만든 뒤 인덱스나 캐시로 개선하고, 그 과정을 숫자와 함께 기록합니다. 프로젝트 개수를 늘리는 것보다 이 기록 하나가 면접에서 훨씬 오래 이야기됩니다.

  • 개선 전 응답 시간 측정 결과
  • 원인 분석 과정 (실행 계획 확인 등)
  • 적용한 해결책과 그 이유
  • 개선 후 수치 비교
  • 블로그 글이나 README 문서로 정리

팀 프로젝트 (선택)

중급

부트캠프·학교 수업·동아리에서 만든 협업 프로젝트입니다. 개인 프로젝트가 이미 탄탄하다면 굳이 여러 개를 만들 필요는 없습니다. 대신 본인이 맡은 부분을 명확히 구분해 적어야 합니다.

  • 내가 담당한 기능과 담당하지 않은 기능을 구분해 명시
  • 브랜치 전략과 코드 리뷰 흔적
  • 협업 중 겪은 충돌·문제와 해결 방법

05

추천 학습 순서

기간은 하루 3~4시간 기준의 대략적인 기준입니다. 이미 아는 단계는 건너뛰고, 순서만 지켜도 헤매는 시간이 크게 줄어듭니다.

  1. 언어 기초 다지기

    1~2개월

    목표 — 문법을 이해하는 수준을 넘어, 간단한 프로그램을 스스로 설계해 작성할 수 있다.

    • 변수·조건문·반복문·함수
    • 객체지향 기초 (클래스, 상속, 인터페이스)
    • 컬렉션(List·Map)과 예외 처리
    • 간단한 콘솔 프로그램 만들어보기

    참고 자료

  2. 웹 프레임워크 입문

    1~2개월

    목표 — 요청을 받아 응답을 돌려주는 서버를 직접 띄우고, 간단한 CRUD API를 만들 수 있다.

    • HTTP 요청·응답의 구조
    • 라우팅, 컨트롤러, 서비스 계층 분리
    • Spring Boot / Django / FastAPI 중 하나 선택
    • 게시판 CRUD API 완성하기

    참고 자료

  3. 데이터베이스와 SQL

    1개월

    목표 — 요구사항을 듣고 테이블을 직접 설계할 수 있고, JOIN이 들어간 쿼리를 자유롭게 쓸 수 있다.

    • SELECT / JOIN / GROUP BY / 서브쿼리
    • 정규화와 ERD 그리기
    • 인덱스가 왜 조회를 빠르게 하는가
    • 트랜잭션과 ACID

    참고 자료

  4. API 설계 · 인증 · 테스트

    1개월

    목표 — 혼자 만든 API를 남이 봐도 이해할 수 있게 설계하고 문서화할 수 있다.

    • REST 설계 규칙과 상태 코드
    • 세션 vs JWT 인증
    • 예외 처리와 응답 형식 통일
    • 단위 테스트 작성 (JUnit / pytest)
    • Swagger(OpenAPI)로 API 문서 자동화

    참고 자료

  5. 배포하기

    2~3주

    목표 — 내가 만든 서버를 인터넷에서 접속 가능한 주소로 올릴 수 있다.

    • 리눅스 기본 명령어
    • AWS EC2 또는 Railway·Render에 배포
    • Docker로 컨테이너 만들기
    • GitHub Actions로 자동 배포 파이프라인 구성

    참고 자료

  6. 포트폴리오 완성 + 코딩테스트 병행

    2~3개월

    목표 — 면접에서 30분 동안 설명할 수 있는 프로젝트 하나와, 코딩테스트 통과 실력을 동시에 갖춘다.

    • 프로젝트에 성능 개선 경험 추가
    • README·기술 블로그로 과정 기록
    • 매일 알고리즘 1~2문제 꾸준히
    • 예상 질문 목록 만들어 스스로 답해보기

06

신입이 자주 하는 실수

준비 방향을 잘못 잡으면 들인 시간에 비해 결과가 안 나옵니다. 아래 항목에 해당하지 않는지 점검해 보세요.

  • 기술 스택을 넓게 얕게 나열하는 것. 이력서에 적은 기술은 전부 질문 대상이 되고, 면접관은 그중 하나를 깊게 파고듭니다.
  • 튜토리얼을 따라 만든 프로젝트를 그대로 제출하는 것. 강의와 똑같은 결과물은 면접관도 알아봅니다. 최소한 기능 하나는 직접 추가해야 합니다.
  • 코딩테스트를 마지막에 몰아서 준비하는 것. 알고리즘은 벼락치기가 가장 안 통하는 영역이라 준비 기간 내내 조금씩 병행해야 합니다.
  • 프로젝트 개수 늘리기에 집착하는 것. 얕은 프로젝트 5개보다 깊은 프로젝트 1개가 유리합니다.
  • 배포를 생략하는 것. 배포 경험이 없으면 실무 감각이 없다는 인상을 주기 쉽습니다.

07

자주 묻는 질문

Q.비전공자도 백엔드 개발자로 취업할 수 있나요?

가능합니다. 다만 전공자와 같은 출발선은 아니기 때문에 부족한 CS 기초(자료구조·네트워크·운영체제)를 따로 채우고 결과물로 실력을 증명해야 합니다. 비전공자 합격 사례의 공통점은 설명할 수 있는 프로젝트와 코딩테스트 통과 실력, 이 두 가지입니다.

Q.Java와 Python 중 무엇을 골라야 하나요?

국내 신입 공고 수만 놓고 보면 Java + Spring이 가장 많습니다. 대기업·금융권·규모 있는 서비스사를 목표로 한다면 Java가 유리합니다. 반면 스타트업이나 데이터·AI 분야를 함께 보고 있다면 Python도 좋은 선택입니다. 중요한 건 하나를 정해 깊게 파는 것이고, 하나를 제대로 하면 다른 언어로 옮기는 데는 오래 걸리지 않습니다.

Q.코딩테스트는 어느 정도 수준까지 준비해야 하나요?

대부분의 신입 공채는 프로그래머스 레벨 2, 백준 실버 상위~골드 하위 수준을 안정적으로 풀 수 있으면 통과권입니다. 상위권 IT 기업은 그보다 높은 난이도를 요구합니다. 하루 1~2문제씩 최소 3~6개월 꾸준히 하는 것이 가장 확실한 방법입니다.

Q.정보처리기사는 꼭 따야 하나요?

사기업 개발 직군만 목표라면 필수가 아닙니다. 다만 공기업·금융권·일부 대기업은 지원 자격이나 가점 요소로 반영하므로, 지원 범위를 넓히고 싶다면 3~4학년 때 따두는 편이 안전합니다.

Q.포트폴리오는 몇 개가 적당한가요?

잘 만든 것 1~2개면 충분합니다. 대신 그 프로젝트에 대해 왜 이 기술을 썼는지, 어떤 문제를 겪고 어떻게 해결했는지를 30분 동안 이야기할 수 있어야 합니다. 개수를 늘릴 시간에 하나를 깊게 만드는 편이 낫습니다.

이 직무로 내 로드맵 만들기

졸업까지 남은 기간과 지금 수준을 고르면, 위 학습 순서를 시기별 계획으로 나눠 드립니다. 결과는 링크로 그대로 공유할 수 있습니다.

백엔드 개발자 로드맵 만들기 →

함께 보면 좋은 직무