백엔드 공부 순서

백엔드 개발자를 위한 백엔드 공부 순서 정리해서 알려드려요!|백엔드 스쿨

어떻게 백엔드 개발자로 취업 준비를 시작하면 좋을지 백엔드 개발자 공부 순서, 기술 면접 질문, 프로젝트, 포트폴리오 작성 방법까지 모두 정리했어요!


   - 백엔드 공부 순서 한 번에 확인하고 싶은 분들이 읽으면 좋은 글입니다.

백엔드 공부 순서
  •  목차
       1. 백엔드의 정확한 의미
       2. 백엔드 개발자가 하는 일
       3. 백엔드 공부 순서
       4. 백엔드 스쿨 커리큘럼으로 공부 순서 익히기

들어가며.

백엔드 공부의 양은 이렇게나 많은데 왜 인기 직업이 되었을까요? 심지어 백엔드 개발자는 끊임없이 공부를 해야 한다고 알려져 있죠. 백엔드 개발자가 되고 싶은데 처음부터 너무 많은 공부의 양을 접하면 더 이해가 가지 않으실 거예요. 백엔드 입문자에 맞춘 백엔드 공부 순서를 알아보고 계신다면 이 글을 읽으시는 걸 추천드려요.
백엔드에 대한 깊은 내용이 아닌 가볍게 시작하는 마음으로 백엔드 공부 순서를 알려드리겠습니다. 다 읽고 나면 백엔드 공부 순서의 대략적인 틀이 잡힐 거예요!

1. 백엔드의 정확한 의미

먼저 백엔드의 정확한 뜻부터 알아보겠습니다. ‘백엔드’라는 용어를 처음 접하시는 분들도 많이 있으실 텐데요. 백엔드는 웹사이트나 어플리케이션에 관련된 서버와 데이터를 관리해 주는 기술을 말합니다. 흔히 “서버가 터졌다!”라는 말은 한 번씩 들어보셨을 거예요. 이때 이 서버를 관리하고 개발하는 분들이 바로 백엔드 개발자입니다. 사용자가 볼 수 없는 영역에서 검색, 회원가입 등 수월하게 웹 사이트를 이용할 수 있도록 도와주는 역할을 말합니다.

2. 백엔드 개발자가 하는 일

백엔드 개발자는 클라이언트와 서버 사이에서 중심적인 역할을 합니다. 사용자가 이용하는 서비스의 요청을 받으면 필요한 데이터를 가져와 결과를 사용자에게 전달하는 역할을 하죠.
조금 더 구체적으로 백엔드 개발자가 되면 어떤 일을 하게 될까요? 실제 서비스 규모에 따라 역할은 더 다양해지고 복잡해지지만 크게 3가지로 나눠볼 수 있어요.

  •    1. API 개발
       2. 데이터베이스 관리
       3. 서버 및 클라우드 관리

#1. API 개발
API에 대해서 더 궁금하다면 백엔드 API 설계를 읽어보는 것을 추천드려요. API에 대한 설명부터 예시까지 술술 읽을 수 있어요.

#2. 데이터베이스 관리
두 번째로 데이터베이스 관리도 백엔드 개발자가 하는 일이에요. 흔히 말하는 데이터의 집합체인 데이터베이스에는 우리가 사용하는 서비스에 대한 모든 데이터가 들어있는데요. 이 데이터를 효율적으로 관리하는 것이 바로 백엔드 개발자가 하는 일입니다.

#3. 서버 및 클라우드 관리
서버와 클라우드는 우리가 자주 사용하고 있어 많이 들어보셨을 거예요. 지금 읽고 있는 이 웹페이지를 사용하기 위해서는 웹 서버가 필요합니다. 웹 서버가 있다면 또 이 서버들을 관리해야겠죠. 개발자는 서버를 잘 관리하고 쉽게 구축하기 위해 클라우드를 사용합니다. 최근 클라우드의 중요성이 크게 대두되고 있어요.

백엔드 공부 순서_서버 및 클라우드 관리

과거에는 첫 번째 이미지처럼 서버실을 필요로 했는데 이제는 클라우드에서 모두 사용할 수 있게 되었기 때문이죠! 그래서 백엔드 개발자의 역할이 더더욱 중요해지고 있어요. 그럼 어떻게 해야 백엔드 개발자가 될 수 있을까요? 백엔드 개발자로서 할 일을 잘 해내기 위해 필요한 백엔드 공부 순서를 알아보겠습니다.

3. 백엔드 공부 순서

백엔드 공부를 위해 제일 먼저 알아야 할 것은 바로 컴퓨터 공학 기초 이론입니다.
백엔드를 이해하기 위해서는 흔히 말하는 컴퓨터 공학 지식을 이해하고 있는 것이 중요합니다. 그래서 개발자 중 컴퓨터 공학과 출신이 많은 것이기도 하죠. 컴퓨터 공학 지식은 코딩을 잘하기 위해 필요한 것이 아닌 문제가 생겼을 때 이 문제를 해결하기 위해서 필요한 것입니다. 컴퓨터 공학 지식과 더불어 프로그래밍 기초, 데이터 구조 및 알고리즘, 데이터베이스, 서버 측 개발 등 기본기가 탄탄해야 합니다.
프로그래밍 언어나 개발에 필요한 지식의 기본은 컴퓨터 공학 즉 CS라고 해도 과언이 아닙니다. 이런 기초 지식이 깔려 있어야 문제가 일어났을 때 트러블 슈팅에도 도움이 되기 때문입니다. 데이터베이스의 원리나 엔진, 네트워크, 알고리즘/자료구조 같은 기본 지식이 깔려 있어야 그다음 Java, 스프링 등 언어를 제대로 배울 수 있습니다. 실제로 운영을 하다 보면 언어단에서의 문제보다 CS에서 문제가 잘 일어난다고 하는데요. 이러한 기초 지식이 기반이 되어야 문제 상황에 대해 깊게 이해하고, 다양한 상황을 고려해 개발할 수 있는 개발자가 됩니다.

백엔드 공부 순서_기본기

기본기를 갖췄다면 프로젝트를 통해 나의 전문성과 차별성을 돋보이게 만들어야 합니다. 백엔드 개발자에게 포트폴리오는 이제 필수 항목이 되고 있기 때문에 내가 개발을 위해 어떤 경험을 했는지, 단순히 코딩으로 구현한 것이 아닌 개발을 해보며 맞닥뜨린 문제들, 문제 해결 경험, 깨달은 것들이 나타나게 구성해야 합니다.

기본기도 갖추고 프로젝트도 끝냈는데 ‘이것’을 빼먹으면 곤란하죠.
바로 코딩테스트도 미리미리 준비해야 합니다. 처음에는 코딩테스트의 중요성을 간과하고 개발 공부를 하다가 뒤늦게 코딩테스트를 준비하는 분들도 있는데요. 코딩테스트 실력은 한순간에 바로 올라가는 것이 아니기 때문에 차근차근 쉬운 문제들부터 난이도를 올려가며 문제를 풀어나가는 것이 좋습니다. 최근 ChatGPT가 나오면서 단순 코딩테스트 전형보다는 라이브 코딩테스트가 더 중요해지고 있죠. 라이브 코딩테스트를 통해 요구하는 기능을 제한된 시간 안에 구현하거나, 문제를 어떻게 해결하는지를 보게 됩니다. 알고리즘 코딩테스트라고 하는 이 코딩테스트는 자료구조/알고리즘을 잘 이해하고 있어야 합니다. 결국 기본기를 말하고 있는데요. 이 기본기는 초반에 탄탄하게 잘 갖춰놓는 것이 좋습니다. 기술 스택이나 프레임워크들은 빠르게 생겨나고 늘 변하지만, CS나 알고리즘 등 기본기는 과거나 지금이나 변하지 않고 그대로 사용되는 개념이니까요.

그럼 제로베이스 백엔드 스쿨 커리큘럼을 통해 조금 더 자세한 공부 순서를 알려드리고 마치도록 하겠습니다.

백엔드 공부 순서_커리큘럼

4. 백엔드 스쿨 커리큘럼으로 공부 순서 익히기

제로베이스 백엔드 스쿨 커리큘럼은 크게 기본기프로젝트로 나눠져 있습니다.

‘프로젝트가 중요하니까 프로젝트를 더 많이 다뤄야 하는 거 아니야?’ 라고 생각할 수 있지만 초반에 개념을 쌓고 가지 않으면 결국 무너지게 되어 있기 때문에 네트워크, CS, 자료구조/알고리즘 등 정말 실무에 필요한 기본 개념을 상황과 예제를 통해 배웁니다. 기본기를 3개월 동안 다 갖추는 것은 부족하므로 개인적으로 공부할 때도 강의를 찾아 듣는 것뿐만 아니라 개념들에 대해 개인적으로 더 찾아보며 필기를 정리하고 공부하는 것이 더욱더 좋습니다.

다음 3개월은 프로젝트에 집중하게 됩니다.
프로젝트는 실습 프로젝트와 개인 프로젝트, 다음으로 팀 프로젝트를 통해 실제 개발 경험을 쌓을 수 있습니다. 기본기를 갖추고 바로 내 개인 프로젝트를 만들어라고 했을 때 바로 프로젝트를 구성하기란 쉽지 않아요. 하지만 실습 프로젝트들을 통해 어느 정도 프로젝트에 대한 감을 익히고 개인 프로젝트를 진행하면 훨씬 수월하게 진행해 볼 수 있습니다.


부트캠프를 통해서가 아닌 독학으로 백엔드 프로젝트를 준비 중이라면 팀 프로젝트 팀원을 구하기 어려울 수 있어요. 그럴 때는 개인 프로젝트로 차근차근 먼저 만들어 보면 됩니다. 개인 프로젝트는 작은 기능부터 차례대로 구현해 보는 것이 가장 좋습니다. 처음부터 원대한 꿈을 가지고 시작하게 되면 오히려 이것저것 넣으려고 해서 시작도 안 되는 경우가 많아요. 개인 프로젝트를 시작할 때는 작은 기능부터 차례대로! 기억하세요! 그리고 팀 프로젝트를 하고 싶은데 만약 어떻게 시작해야 할지 모르겠다면 최근 오픈카톡방 등 온라인 커뮤니티가 많이 활성화되어 있어서 함께 할 팀 프로젝트를 구해볼 수도 있어요.

또 백엔드 공부를 시작하는 초반부터 시작하면 좋을 것이 하나 있어요. 바로 기술면접 준비인데요. ‘기술 면접은 나중에 해도 되겠지?’라는 생각으로 이력서를 넣고 난 후에 시작하려고 하는데 초반부터 함께 시작하는 것이 더 좋아요.
기술 면접은 컴퓨터 공학 지식을 얼마나 알고 있는지 보기 위해서 치르는 면접이라고 할 수 있습니다. 기술 면접의 기본인 CS 지식은 개발자가 서비스를 개발하는 과정에 있어 비즈니스 로직을 생각해 내기 위해 필요합니다. 하지만 이 CS 지식 워낙 과목도 많고 양이 방대해 관련 강의를 찾아 배우는 것이 어렵습니다. 따라서 사이트에 많이 나와있는 기술 면접 질문들을 찾아 질문에 대한 답을 하며 공부하는 것이 가장 효율적인 공부 방법이라고 할 수 있습니다. 면접에 자주 나오는 질문들이 결국 현업 개발자들이 가장 중요하게 생각하는 부분이기 때문이죠.

기술 면접 질문에서 찾은 키워드를 구글링해서 최상단에 나오는 글, 가장 최근에 작성된 글을 읽은 후 개념을 정리하는 것입니다. 이런 식으로 질문 선정 - 키워드 선정 - 개념 공부 - 정리의 순서로 진행하시면 됩니다. 더 자세한 내용은 제로베이스가 준비한 CS지식 공부법을 읽어보는 것을 추천드려요!
백엔드 스쿨에서도 기술 면접 질문을 준비해 보았는데요. 네이버 현직 백엔드 개발자가 알려주는 백엔드 기술 면접 질문들을 확인해 보세요!

마치며,

백엔드 공부 순서, 잘 읽어보셨나요? 백엔드가 어렵다고들 하지만 초반 기본기를 잘 이겨낸다면 모두 기본기 탄탄한 백엔드 개발자가 될 수 있습니다. 백엔드 학습에서 가장 중요한 점은 순서가 아닌 꾸준함입니다. 어떤 순서든, 어떤 학습법이든 정도를 꾸준하게 걷는다면 여러분은 충분히 성장할 수 있습니다. 여러분의 꾸준함을 응원하겠습니다.

추천 컨텐츠