본문 바로가기
📖 CS/CS plus+

백엔드 로드맵🌱

by 정람지 2023. 1. 9.

https://velog.io/@yoopark/2022-backend-roadmap.

참고.

 

 

백엔드 개발자의 로드맵

* 2022.04.20 수정 : 네이버, 라인 백엔드 개발자 조언 수렴하며 수정 이번에 지인이 백엔드 개발자 면접에...

blog.naver.com

 

 

1. 인터넷에 대하여

  • 인터넷은 어떻게 작동되는 것인가? ⭕️
  • HTTP란 무엇인가? ⭕️
  • 브라우저는 어떻게 작동되는 것인가? ⭕️
  • DNS는 어떻게 작동되는 것인가? ⭕️
  • Domain Name이란 무엇인가? ⭕️
  • Hosting이란 무엇인가?⭕️
 

인터넷에 대하여

인터넷은 어떻게 작동되는 것인가? HTTP란 무엇인가? 브라우저는 어떻게 작동되는 것인가? DNS는 어떻게 작동되는 것인가? Domain Name이란 무엇인가? Hosting이란 무엇인가?

junggoldchae-coding.tistory.com

2. 기본 프론트엔드 언어

  • HTML ⭕️
  • CSS ⭕️
  • JavaScript ⭕️- 예전에 해서 까먹음

3. OS와 컴공 기본 지식 CS - 책읽기

  • Terminal 사용법 
  • OS는 어떻게 돌아가는가? (기초만) 
  • 프로세스 관리
  • 스레드와 동시성 
  • 기본 Terminal 커맨드 
    • grep, awk, sed, lsof, curl, wget, tail, head, less, find, ssh, kill
  • 메모리 관리 
  • 프로세스 간 통신 
  • I/O 관리 
  • POSIX 기본 명령어 
    • stdin, stdout, stderr, pipes
  • 네트워크 개념 (기초만) 

4. 백엔드 언어 하나 배우기

  • JavaScript❌
  • Java <- 이거랑 스프링 

Spring - Spring mvc, Spring JPA, Spring security, 동적쿼리를 위한 queyryDSL

책/강의

- 자바 인 액션

- 인프런 강의 : 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 

- 인프런 강의 : 실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

- 인프런 강의 : 실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

  •  C# ⭕️ 백ㄴ 게임용으로
  • PHP ❌
  • Python ⭕️ 백ㄴ 알고리즘용으로
  • Ruby ❌
  • Rust ❌
  • Go ❌

5. Git과 Github

  • 버전 컨트롤이 필요한 이유 
  • Git 기본 명령어 ⭕️ - 까먹었는데 다시 해야 함? 중요?
  • Github 사용해보기 ⭕️ - 더 해봐야 함

중반부

1. 관계형 DB

  • PostgreSQL (추천) 
  • MySQL 
  • MariaDB 
  • MS SQL 
  • Oracle 

2. NoSQL

  • 문서 : MongoDB , CouchDB 
  • Column형 DB : Cassandro 
  • 시계열 : InfluxDB , TimescaleDB 
  • 실시간 : Firebase , RethinkDB 

3. DB 이론

  • ORMs
  • ACID
  • Transactions
  • N+1 Problem
  • Database Normalization
  • Indexes and how the work
  • Data Replication
  • Sharding Strategies
  • CAP Theorem

4. API에 대하여

  • HATEOAS
  • Open API Spec and Swagger
  • Authentication
    • Cookie Based
    • OAuth
    • Basic Authentication
    • Token Authentication
    • JWT
    • OpenID
    • SAML
  • REST
  • JSON APIs
  • SOAP
  • gRPC

5. 캐싱

  • CDN
  • Server Side
    • Redis
    • Memcached
  • Client Side

6. 웹 보안

  • Hashing Algorithms
    • MD5 and why not to use it
    • SHA Family
    • scrypt
    • bcrypt
  • HTTPS
  • Content Security Policy
  • CORS
  • SSL/TLS
  • OWASP Security Risks

7. 테스트 기법

  • Integration Testing
  • Unit Testing
  • Functional Testing

8. CI/CD

후반부

1. 디자인 패턴

  • GOF 디자인 패턴
  • Domain Driven Design
  • TDD
  • 디자인 원칙
    • SOLID 
    • KISS 
    • YAGNI 
    • DRY 

2. 아키텍처 패턴

  • Monolitic Apps
  • Microservices
  • SOA
  • CQRS and Event Sourcing
  • Serverless

3. 검색 엔진

  • Elasticsearch
  • Solr

4. 메시지 브로커

  • RabbitMQ
  • Kafka

5. 컨테이너 VS 가상화

  • Docker 

6. GraphQL

  • Apollo
  • Relay Modern

7. 그래프 DB

  • Neo4j

8. 웹소켓

9. 웹 서버들

  • Nginx
  • Apache
  • Caddy
  • MS IIS

10. 큰 스케일의 프로젝트로 키우기

  • Mitigation Strategies
    • Graceful Degradation
    • Throttling
    • Backpressure
    • Loadshifting
    • Circuit Breaker
  • Understand the Diff.
    • Instrumentation
    • Monitoring
    • Telemetry
  • Migration Strategies
  • Horizontal vs Vertical Scaling
  • Building with Observabillity in mind
    • Metrics logging

'📖 CS > CS plus+' 카테고리의 다른 글

🌈GDSC EWHA🌈 Open Tech Seminar - Backend Session  (0) 2023.11.30
🤔DB 이론 공부🤔 - ing...  (1) 2023.03.09
🍩AWS 서버 구축🍩 - 나중에!  (0) 2023.01.30
인터넷에 대하여  (0) 2023.01.09