아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
화려한바다표범39
화려한바다표범3921.02.22

백엔드 개발자가 되려면 어떤걸 공부해야 할까요?

회사를 다니며 백엔드 개발자가 되기 위해 혼자 공부하려하는데 현재 이것이 자바다 라는 책을 통해 독학하고 있습니다.

이후에 스프링이라던지 DB파트라던지 백엔드와 서버사이드 파트로 여러 파트와 다양한 언어가 있다는 것을 알고 있는데 어떤 순서로 공부해야할지 궁금합니다.

55글자 더 채워주세요.
답변의 개수2개의 답변이 있어요!
  • 안녕하세요.

    현재 개발을 하고 계신건가요? 아니면 다른 직종에 계신건지.. 일단은 초보 위주로 설명드리겠습니다.

    일단은 프로그래밍 언어를 배우신 다음 스프링 같은 프레임워크랑 DB 공부를 하시면 될 것 같습니다.

    프로그래밍 언어는 각각의 특징과 용도가 조금씩 차이가 납니다. 각 언어의 특징을 보고 맞는 언어로 공부하시기 바랍니다. 처음하신다면 화면쪽 언어를 추천드립니다. 배우기도 쉽고 재미도 있습니다.

    우선 프로그래밍 언어를 공부하기 전에 프로그래밍에 대한 기초를 좀 공부하시면 더 도움이 됩니다.

    보통 프로그래밍 입문은 서버쪽 언어(백엔드)인 파이썬, 자바, C 로 많이 시작합니다. 그리고 화면 쪽(프론트엔드)에서 사용하는 언어로 HTML, CSS, 자바스크립트가 있습니다.

    파이썬은 데이터통계, 인공지능 쪽에서 많이 사용되고 비교적 쉽게 배울 수 있는 언어이고 자바는 웹이나 안드로이드 등 다양한 분야에 많이 사용 되는 언어입니다. 정부에서 사용하는 전자정부프레임워크에서도 쓰입니다. C는 하드웨어제어나 게임등에 사용되는 언어로 기초를 다지기에 적합한 언어입니다.

    HTML, CSS는 단순히 화면을 만들고 디자인 하는데 사용이 되고 실질적인 로직 구현은 자바스크립트를 사용합니다. 자바스크립트는 제일 배우기 쉬운 언어이기도 하지만 기능이 막강합니다. 간단하게 화면을 만들어서 바로바로 테스트를 해 볼수 있는 장점도 있습니다.

    모든 언어가 알고리즘이나 로직은 다 똑같습니다. 그 로직을 구현하는 문법이 조금씩 다를 뿐이죠. 그 언어를 배우는 것도 좋지만 그 안에 로직이나 알고리즘을 구현하는 연습을 많이 하시면 다른 언어를 배울 때도 큰 도움이 됩니다.

    인터넷이나 유튜브 검색해 보면 관련자료가 많이 나와 있습니다. 아래 관련 사이트 참고하시길 바랍니다.

    [기초강의]
    https://youtube.com/playlist?list=PLU9-uwewPMe0ynomccdrAX2CtVbahN4hD

    [생활코딩]
    https://opentutorials.org/course/1

    [인프런]
    https://www.inflearn.com

    [커뮤니티]
    https://okky.kr/

    [추천도서]
    프로그래밍 기초를 공부하시려면 "Do it! 첫 코딩(정동균/이지스퍼블리싱)"이란 책을 추천드립니다. 프로그래밍의 개념부터 해서 아주 기초적인 부분을 설명해 주고 있습니다. 뒷부분에는 가장 많이 쓰이는 언어인 자바로 코딩하는 법에 대한 설명도 있습니다.

    C언어를 공부하신다면 "혼자 공부하는 C 언어(서현우/한빛미디어)"란 책을 추천드립니다. 제목처럼 혼자 공부하기에 적합한 책입니다. 챕터별(19개)로 나누어져 있어서 하루에 하나씩 공부하면 될것 같습니다. 각 챕터마다 연습문제도 있어 배운 것을 확인해 볼 수 있습니다. 유튜브에 강의동영상도 있습니다.

    자바 쪽을 공부하시면 "Java의 정석(남궁성/도우출판)" 이란 책을 추천드립니다. 기초부터 심화학습까지 자세히 나와있습니다. 또한 작가가 직접 운영하는 카페, 유튜브 강의도 있어서 하다가 모르는 것이 있으면 물어보면서 더 많이 배울 수 있습니다.

    파이썬언어를 공부하신다면 "혼자 공부하는 파이썬(윤인성/한빛미디어)"란 책을 추천드립니다. 제목처럼 혼자 공부하기에 적합한 책입니다. 초보자도 알기 쉽게 설명이 되어 있어서 배우실 때 어려움 없이 배울 수 있으리라 생각됩니다. 유튜브 강의동영상도 있어서 같이 시청하시면 좋을 것 같습니다.


  • 백엔드 개발은 언급하신 자바를 포함하여 여러 언어가 있습니다.

    저는 파이썬 기반으로 백엔드를 개발하는데 이와 관련래서는 다음과 같은 기술, 도구 들이 사용됩니다.

    - 웹서버: nginx (리버스 프락시 서버)

    - wsgi 서버: gunicorn

    - 웹 서비스 프레임워크: django, flask (여기가 파이썬)

    - db: postgres, mongodb

    django나 flask가 입문하기 편하게 되어 있습니다. 파이썬 개발자라면 더욱 쉽게 접근할 수 있습니다. django의 경우 db와 연동하는 부분이 매우 편리합니다.

    여기서 더 나아가 서버 운영 관리 기술로 docker가 대세가 되었습니다. docker를 이용한 컨테이너 관리 기술인 kubernetes가 서버 관리의 대세입니다.