백엔드 주니어 개발자는 어떻게 공부해야 할까

🪐 C:on·2021년 8월 8일
6

개발자이야기

목록 보기
1/4
post-thumbnail

백엔드에 필요한 것


참고
우묻다
https://www.youtube.com/watch?v=g5sxpi0sJc4
(2021) 1. 비전공자로 자바 백엔드 개발자 시작하기
https://jojoldu.tistory.com/505?category=689637

추천도서


이 책을 추천하는 이유는, 결과적으로 우리가 어떤 서비스를 하던 밑 단에 있는 최소한의 쿼리가 어떻게 돌아가는 것이고, 리눅스는 어떻게 돌아가고, 네트워크는 어떻게 돌아가는 것인지를 모르는 채로 백엔드 개발자를 할 수는 없기 때문이다.

백엔드 개발자라면 언어, 데이터베이스, 리눅스는 꼭 공부해야 한다.

  • 언어
    • OOP
    • 테스트코드
    • 클린코드
  • 리눅스
    • aws 배포
  • 데이터베이스
    • ORM
    • DB이론

언어, 데이터베이스, 리눅스는 어떤 프레임워크를 쓰든 간에 적용되는 것들이며, 조금이라도 규모가 커지려면 꼭 필요한 기술들이므로 중요시해야한다.


🔎언어


OOP

객체 지향 프로그래밍을 의미하는 oop는 컴퓨터 프로그래밍을 객체들의 모임으로 파악해서 각각의 객체가 메시지를 주고받고 데이터를 처리할 수 있게 하는 것이다.

객체지향프로그래밍은 프로그램을 유연하고 변경이 용이하게 만들기 때문에 대규모 소프트웨어 개발이 많이 사용된다. 개발과 보수를 간편하게 하며 직관적인 코드분석이 가능케 한다.

테스트 코드

TDD는 테스트 주도적 개발을 의미한다. TDD는 소스코드의 품질을 높여주며 재설계 및 디버깅 시간을 절감시켜준다. 파이썬에서는 테스트모듈로 unittest가 내장되어 단위 테스트를 할 수 있다.

클린코드

클린코드의 본질은 다른 엔지니어가 코드를 읽고 유지 관리할 수 있게 하는 것이다. 프로그래밍을 할 때 항상 클린코드에 대한 고민을 하며 코드를 짜며 연습을 하는 것이 큰 도움이 된다.


🔎리눅스


서버를 배포하고 운영하기 위해선 리눅스는 필수적이라고 할 수 있다.

공부 순서

  • 일반적인 사용법
    파일 다루는 법, vi사용, 쉘 사용 등 기본적인 터미널 사용법을 숙지

  • 관리자
    리눅스 설치, 프로세스, 패키지 등의 기술

  • 서비스
    웹서비스를 만들고 사용자에게 서비스를 제공하는 기술들. 웹, 메일, DNS, FTP 등을 공부


🔎데이터베이스


ORM만으로도 간단히 모델을 구축할 수 있다. 하지만 DB에 어떤 문제가 발생했을 때 데이터베이스에 대한 지식이 없다면 문제를 쉽게 해결할 수 없을 것이다.

Real MySQL에서 아키텍쳐, 트랜젝션, 인덱스 등에 관해 공부하고 ORM으로 적용해보면 더 탄탄하고 유연한 데이터베이스가 구축하는 능력을 기를 수 있다.


0개의 댓글