백엔드 개발자가 알아야 하는 필수항목

백엔드 개발자가 되기 위해서는 어떤 기술들을 공부해야 하는지 알아보도록 하겠습니다. 꽤 많은 것들을 숙지하고 있어야 하는데요. 개발자로 계속해서 성장해 나가고 싶다면 각자 자신의 목표를 설정하고 로드맵을 구축해 나가야 합니다. 아래는 백엔드 개발자가 알아야 하는 필수항목입니다.

1. 인터넷

– 인터넷 작동 원리

– HTTP는 무엇인가

– 브라우저 작동 방식

– DNS란 무엇인가

– Domain Name

– 호스팅은 무엇인가

2. 개발 언어

– Java

– C#

– PHP

– Javascript

– Python

– Ruby

– Rust

– Go

3. 소스 관리 시스템

– Git

4. 소스 관리 서비스

– GitHub

– GitLab

– Bitbucket

5. OS와 사용툴

– 터미널 사용법

– POSIX

6. 관계형 데이타베이스

– PostgreSQL

– MySQL

– MariaDB

– MS SQL

– Oracle

7. NoSQL 데이타베이스

– Document DB

– Time Series

– Realtime

– Column DB

– Key-Value

– Graph DB

8. DB 기술

– ORM

– ACID

– Transactions

– N+1 Problem

– Nomalization

– Failure Modes

– Profiling Perfor.

9. Scaling Database

– Database Indexes

– Data Replication

– Sharding 전략

– CAP Theorem

10. API

– HATEOAS

– Open API Specs

– Authentication

– REST

– JSON API

– SOAP

– gRPC

– GraphQL

11. Caching

– Client Side

– Server Side

– CDN

12. 웹 보안

– Hashing Algorithm

– API Security Best Practices

13. Testing

– Integration Testing

– Unit Testing

– Functional Testing

14. CI/CD

소프트웨어 디자인

  1. 개발 원리

– GOF 디자인 패턴

– Domain Driven Design

– Test Driven Development

– CQRS

– Event Sourcing

2. 아키텍처

– Monolithic Apps

– Microservices

– SOA

– Serverless

– Service Mesh

– Twelve Factor Apps

3. Message Brokers

– RabbitMQ

– Kafka

4. Containerization vs Virtualization

– Kubernetes

– Docker

– LXC

5. GraphQL

– Apollo

– Relay Modern

6. WebSockets

7. Server Sent Events

8. Web Servers

– Nginx

– Apache

– Caddy

– MS IIS

9. Building for Scale

– Graceful Degradation

– Throttling

– Backpressure

– Loadshifting

– Circuit Breaker

– Instrumentation

– Monitoring

– Telemetry

백엔드 개발자가 되기 위해서 공부해야 하는 것들이 상당합니다. 하지만 해당 기술 스택에 대해 하나씩 공부하며 실무에 적용해 가면 됩니다. 그리고 서비스 성격에 따라 사용해야 할 기술 스택이 다르니 각각 장단점을 알고 있는 것이 향후 개발방향을 잡는데 중요합니다.

Back to top