기술계보 핵심정리
- •⭐⭐⭐ 반드시 알아야 할 핵심
- •⭐⭐ 중요하게 알아야 할 것
- •⭐ 알면 좋은 것
1. 컴퓨터 구조 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
CPU 아키텍처 발전
폰 노이만 구조 (1945) ↓ 하버드 구조 (분리 메모리) ↓ CISC (1970s) - x86, 복잡한 명령어 ↓ RISC (1980s) - ARM, MIPS, 단순 명령어, 파이프라인 최적화 ↓ 슈퍼스칼라 (1990s) - 다중 파이프라인, 비순차 실행 ↓ 멀티코어 (2000s) - 전력 한계, 병렬 처리 ↓ 헤테로지니어스 (2010s~) - big.LITTLE, CPU+GPU+NPU
메모리 계층 구조 발전
SRAM (1960s) - 빠름, 비쌈 → 캐시용 ↓ DRAM (1970s) - 느림, 저렴 → 주기억장치 ↓ L1/L2 캐시 (1980s) - 속도 격차 해소 ↓ L3 공유 캐시 (2000s) - 멀티코어 지원 ↓ HBM/HBM2 (2010s~) - 고대역폭 메모리, GPU/AI용 ↓ CXL (2020s~) - 메모리 풀링, 캐시 일관성
가상 메모리 발전
물리 메모리 직접 접근 (초기) ↓ 세그멘테이션 (논리적 분할) ↓ 페이징 (고정 크기, 4KB) ↓ 다단계 페이지 테이블 (메모리 절약) ↓ TLB (Translation Lookaside Buffer) - 주소 변환 캐시 ↓ Huge Page (2MB/1GB) - TLB 효율, 대규모 메모리
⭐⭐ 중요하게 알아야 할 것
병렬 처리 발전
ILP (Instruction Level) - 파이프라인, 슈퍼스칼라 ↓ TLP (Thread Level) - SMT, Hyper-Threading ↓ DLP (Data Level) - SIMD, SSE, AVX ↓ TLP (Task Level) - 멀티코어, 분산 시스템
AI 가속기 발전
CPU (범용 연산) ↓ GPU (SIMT, 병렬 연산, 2000s~) ↓ TPU (Google, Tensor 연산 특화, 2016) ↓ NPU (모바일/엣지, 2010s~) ↓ MoE 전용 칩 (2020s~)
⭐ 알면 좋은 것
인터커넥트 발전
- •FSB (Front Side Bus) → QPI (Intel) → UPI
- •HyperTransport (AMD) → Infinity Fabric
- •PCIe 1.0 → 6.0 (속도 2배씩 증가)
- •CXL (메모리 중심 인터커넥트)
- •DPU/SmartNIC (네트워크 데이터 처리 오프로드)
칩 설계 패러다임 발전
모놀리식 다이 (전통, 단일 칩) ↓ SoC (System on Chip) - 기능 통합 ↓ Chiplet (2020s~) - 모듈 분리, UCIe 표준 - 수율 향상, 이기종 공정 조합 ↓ 3D 패키징 (TSV, HBM 적층)
2. 운영체제 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
프로세스/스레드 관리 발전
단일 프로세스 (Batch) ↓ 멀티프로그래밍 (시분할) ↓ 멀티프로세싱 (SMP) ↓ 멀티스레딩 (경량 프로세스) ↓ 컨테이너 (Namespace + Cgroup, 2013~) ↓ 서버리스 (FaaS, 2014~)
스케줄링 발전
FCFS (First Come First Served) ↓ SJF (Shortest Job First) ↓ Round Robin (시분할) ↓ Priority + Aging (우선순위 + 기아 방지) ↓ Multilevel Feedback Queue (적응형) ↓ CFS (Completely Fair Scheduler, Linux 2.6.23~)
메모리 관리 발전
고정 분할 ↓ 동적 분할 (Best-Fit, First-Fit) ↓ 페이징 (외부 단편화 해결) ↓ 세그멘테이션 + 페이징 ↓ 가상 메모리 (요구 페이징) ↓ Copy-on-Write (fork 최적화) ↓ 메모리 압축 (zRAM, zswap)
파일 시스템 발전
FAT (1977) - MS-DOS, 단순 ↓ ext2 (1993) - Linux, i-node ↓ NTFS (1993) - Windows NT, 저널링 ↓ ext3 (2001) - 저널링 추가 ↓ ext4 (2008) - 대용량, Extent ↓ Btrfs/ZFS (2000s~) - CoW, 스냅샷, 압축 ↓ OverlayFS (2014~) - 컨테이너 이미지
⭐⭐ 중요하게 알아야 할 것
컨테이너 기술 발전
chroot (1982) - 루트 격리 ↓ FreeBSD Jail (2000) - OS 수준 가상화 ↓ Solaris Zones (2004) ↓ LXC (2008) - Linux Container ↓ Docker (2013) - 컨테이너 이미지 표준화 ↓ Kubernetes (2014) - 컨테이너 오케스트레이션
커널 관측 기술
strace/ptrace (시스템 콜 추적) ↓ DTrace (2005, Solaris) ↓ SystemTap (Linux) ↓ eBPF (2014~) - 커널 내 프로그래밍, 관찰성 혁명
3. 네트워크 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
인터넷 프로토콜 발전
IPv4 (1981) - 32bit, 43억 주소 ↓ NAT (1994) - 주소 부족 임시 해결 ↓ IPv6 (1998) - 128bit, 무한 주소 ↓ Dual Stack (IPv4+IPv6 공존)
웹 프로토콜 발전
HTTP/0.9 (1991) - 단순 GET ↓ HTTP/1.0 (1996) - 헤더, POST ↓ HTTP/1.1 (1997) - Keep-Alive, 파이프라이닝 ↓ HTTP/2 (2015) - 멀티플렉싱, 서버 푸시, HPACK ↓ HTTP/3 (2022) - QUIC, UDP 기반, 0-RTT
네트워크 가상화 발전
VLAN (1990s) - L2 분리 ↓ VPN (IPsec, 1990s) - 암호화 터널 ↓ MPLS (1990s) - 레이블 스위칭 ↓ VXLAN (2011) - L2 over L3, 클라우드용 ↓ SDN (2011~) - 소프트웨어 정의 네트워크 ↓ Service Mesh (2016~) - 마이크로서비스 통신
⭐⭐ 중요하게 알아야 할 것
로드밸런싱 발전
DNS 라운드 로빈 (L3) ↓ L4 로드밸런서 (IP+Port) ↓ L7 로드밸런서 (HTTP, 애플리케이션) ↓ GSLB (Global Server Load Balancing) ↓ Service Mesh (Envoy, Istio)
보안 프로토콜 발전
SSL 2.0/3.0 (1990s) - 취약점 많음 ↓ TLS 1.0 (1999) ↓ TLS 1.2 (2008) - 현재 표준 ↓ TLS 1.3 (2018) - 1-RTT, 0-RTT, 암호화 강화
4. 데이터베이스 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
데이터베이스 모델 발전
파일 시스템 (1960s) ↓ 계층형 DB (IMS, 1960s) ↓ 네트워크형 DB (CODASYL, 1970s) ↓ 관계형 DB (RDBMS, 1970s~) - Oracle, MySQL, PostgreSQL ↓ NoSQL (2000s~) - 확장성, 유연성 ├─ Key-Value (Redis, DynamoDB) ├─ Document (MongoDB, Couchbase) ├─ Column-Family (Cassandra, HBase) └─ Graph (Neo4j, Neptune) ↓ NewSQL (2010s~) - RDBMS + 분산 (CockroachDB, TiDB)
트랜잭션 처리 발전
단일 트랜잭션 ↓ 2PL (Two-Phase Locking) - 비관적 동시성 ↓ MVCC (Multi-Version Concurrency Control) - 낙관적, 높은 동시성 ↓ 분산 트랜잭션 (2PC, Two-Phase Commit) ↓ Saga Pattern (마이크로서비스 트랜잭션)
데이터 처리 패러다임
OLTP (Online Transaction Processing) - 트랜잭션, 실시간 ↓ OLAP (Online Analytical Processing) - 분석, 집계 ↓ HTAP (Hybrid) - OLTP + OLAP 통합 ↓ 실시간 스트림 처리 (Kafka, Flink)
⭐⭐ 중요하게 알아야 할 것
분산 데이터베이스 발전
단일 서버 DB ↓ Replication (Master-Slave) ↓ Clustering (Active-Active) ↓ Sharding (수평 분할) ↓ 분산 합의 (Paxos, Raft) ↓ Multi-Region (글로벌 분산)
데이터 웨어하우스 발전
전통 DW (Oracle, Teradata) ↓ MPP (Massively Parallel Processing) ↓ Columnar Storage (컬럼형 저장) ↓ Cloud DW (Redshift, BigQuery, Snowflake) ↓ Lakehouse (Delta Lake, Iceberg) - DW + Data Lake
5. 클라우드 컴퓨팅 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
클라우드 서비스 모델 발전
On-Premise (자체 운영) ↓ Hosting (서버 임대) ↓ IaaS (2006~) - AWS EC2, 가상 서버 ↓ PaaS (2008~) - Heroku, GAE, 플랫폼 ↓ CaaS (2013~) - Docker, Kubernetes, 컨테이너 ↓ FaaS/Serverless (2014~) - Lambda, 함수
컨테이너 오케스트레이션 발전
Docker Swarm (2013) - 단순 ↓ Apache Mesos (2013) ↓ Kubernetes (2014) - 사실상 표준 ↓ Managed Kubernetes (EKS, GKE, AKS) ↓ Serverless Kubernetes (Fargate, Cloud Run)
인프라 자동화 발전
수동 설정 ↓ 스크립트 (Shell) ↓ Configuration Management (Puppet, Chef, Ansible) ↓ IaC (Infrastructure as Code) - Terraform, CloudFormation ↓ GitOps (2017~) - ArgoCD, Flux
⭐⭐ 중요하게 알아야 할 것
서버리스 발전
AWS Lambda (2014) - 이벤트 기반 함수 ↓ API Gateway + Lambda (백엔드리스) ↓ Step Functions (워크플로우 오케스트레이션) ↓ 컨테이너 서버리스 (Fargate, Cloud Run)
관찰성 (Observability) 발전
Logging (로그 수집) ↓ Monitoring (지표 수집, Nagios, Zabbix) ↓ APM (Application Performance Monitoring, New Relic) ↓ 분산 트레이싱 (Zipkin, Jaeger) ↓ 통합 관찰성 (Prometheus + Grafana + Jaeger) ↓ OpenTelemetry (표준화, 2019~)
6. 소프트웨어 공학 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
개발 방법론 발전
Waterfall (1970s) - 순차적, 문서 중심 ↓ Spiral (1986) - 반복적, 위험 관리 ↓ RUP (1990s) - 반복적, 아키텍처 중심 ↓ Agile (2001) - 애자일 선언, 적응형 ├─ XP (Extreme Programming) ├─ Scrum (스프린트, 일일 스탠드업) └─ Kanban (간판, 흐름 최적화) ↓ DevOps (2009~) - 개발+운영 통합 ↓ DevSecOps (2010s~) - 보안 통합
CI/CD 파이프라인 발전
수동 빌드+배포 ↓ 자동 빌드 (Make, Ant) ↓ CI (Continuous Integration) - Jenkins, 2011 ↓ CD (Continuous Delivery) - 자동 배포 준비 ↓ CD (Continuous Deployment) - 자동 프로덕션 배포 ↓ GitOps (2017~) - Git 중심 배포
테스트 전략 발전
Manual Testing (수동) ↓ Unit Testing (단위 테스트) ↓ TDD (Test-Driven Development, 2002~) ↓ BDD (Behavior-Driven Development) ↓ Shift-Left (테스트 조기화) ↓ Chaos Engineering (2010s~) - 장애 주입
⭐⭐ 중요하게 알아야 할 것
아키텍처 패턴 발전
Monolithic (단일 애플리케이션) ↓ 3-Tier (Presentation, Business, Data) ↓ SOA (Service-Oriented Architecture, 2000s) ↓ MSA (Microservices, 2014~) - 독립 배포, API 통신 ↓ Serverless (FaaS)
버전 관리 발전
SCCS/RCS (1970s~) - 파일 단위 ↓ CVS (1990) - 중앙집중식 ↓ Subversion (2000) - CVS 개선 ↓ Git (2005) - 분산형, Linus Torvalds ↓ GitHub/GitLab (2008/2011) - 협업 플랫폼
7. 인공지능 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
AI 발전 단계
AI 1차 붐 (1950s~1970s) - 기호주의, 전문가 시스템 ↓ AI 겨울 (1970s~1980s) - 한계 직면 ↓ AI 2차 붐 (1980s~1990s) - 전문가 시스템 ↓ AI 겨울 (1990s~2000s) ↓ AI 3차 붐 (2010s~) - 딥러닝, 빅데이터, GPU
머신러닝 발전
전통적 ML (1990s~) ├─ Decision Tree ├─ SVM (Support Vector Machine) ├─ Random Forest └─ Gradient Boosting (XGBoost, LightGBM) ↓ Deep Learning (2010s~) ├─ CNN (이미지, 2012 AlexNet) ├─ RNN/LSTM (시계열, 2014~) └─ Transformer (2017) - Attention Is All You Need ↓ Foundation Model (2020s~) ├─ GPT (Generative Pre-trained Transformer) ├─ BERT (양방향 Transformer) └─ Vision Transformer (ViT)
LLM (Large Language Model) 발전
Transformer (2017, Google) - 120M params ↓ GPT-1 (2018, OpenAI) - 117M params ↓ BERT (2018, Google) - 340M params ↓ GPT-2 (2019) - 1.5B params ↓ GPT-3 (2020) - 175B params, Few-shot Learning ↓ ChatGPT (2022) - GPT-3.5 + RLHF ↓ GPT-4 (2023) - Multimodal, MoE 추정 ↓ Claude 3 / Gemini 1.5 (2024) - 긴 컨텍스트
⭐⭐ 중요하게 알아야 할 것
학습 기법 발전
지도 학습 (Supervised) ↓ 비지도 학습 (Unsupervised) ↓ 강화 학습 (Reinforcement, AlphaGo 2016) ↓ Transfer Learning (전이 학습) ↓ Few-Shot Learning (GPT-3, 2020) ↓ Zero-Shot Learning ↓ RLHF (Reinforcement Learning from Human Feedback, 2022~)
AI 응용 발전
분류 (Classification) ↓ 객체 탐지 (Object Detection) ↓ 이미지 생성 (GAN, 2014~) ↓ Text-to-Image (DALL-E, 2021 / Stable Diffusion, 2022) ↓ Multimodal (GPT-4V, Gemini, 2023~)
AI 에이전트 발전
챗봇 (규칙 기반, 2010s) ↓ LLM 기반 대화 (ChatGPT, 2022) ↓ RAG (검색 증강 생성, 2023~) ↓ AI 에이전트 (도구 사용, 자율 행동, 2023~) - Function Calling, Tool Use - 계획 → 실행 → 관찰 루프 ↓ 멀티에이전트 시스템 (2024~) - 역할 분담, 협업, 토론 - AutoGen, CrewAI, LangGraph ↓ Physical AI (2024~) - 로봇/자율시스템의 AI 제어 - 시뮬레이션 기반 학습
8. 정보보안 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
암호화 알고리즘 발전
대칭키 암호화 ├─ DES (1977) - 56bit, 취약 ├─ 3DES (1998) - 168bit ├─ AES (2001) - 128/192/256bit, 현재 표준 └─ ChaCha20 (2008) - 모바일 최적화 ↓ 비대칭키 암호화 ├─ RSA (1977) - 2048/4096bit ├─ ECC (1985) - 짧은 키, 모바일 └─ 양자내성 암호 (Post-Quantum, 2024 NIST 표준 확정: FIPS 203 ML-KEM, FIPS 204 ML-DSA, FIPS 205 SLH-DSA)
인증 프로토콜 발전
Password (단순 비밀번호) ↓ Hashing (MD5 → SHA-1 → SHA-256) ↓ Salt + Hash (Rainbow Table 방어) ↓ Key Stretching (bcrypt, scrypt, Argon2) ↓ 2FA (Two-Factor Authentication) ↓ MFA (Multi-Factor Authentication) ↓ Passkey (FIDO2, 2022~) - 비밀번호 없는 인증
네트워크 보안 발전
Firewall (1980s~) - 패킷 필터링 ↓ IDS (Intrusion Detection System, 1990s) - 탐지 ↓ IPS (Intrusion Prevention System) - 차단 ↓ WAF (Web Application Firewall) - L7 보호 ↓ NGFW (Next-Generation Firewall) - 애플리케이션 인식 ↓ Zero Trust (2010s~) - "절대 신뢰하지 않고 항상 검증"
⭐⭐ 중요하게 알아야 할 것
클라우드 보안 발전
전통적 Perimeter Security (경계 보안) ↓ IAM (Identity and Access Management) ↓ CASB (Cloud Access Security Broker) ↓ CSPM (Cloud Security Posture Management) ↓ SASE (Secure Access Service Edge) ↓ Zero Trust Network Access (ZTNA)
9. 자료구조 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
기본 자료구조 발전
배열 (Array, 1960s) - 연속 메모리, O(1) 접근 ↓ 동적 배열 (Dynamic Array, 1970s) - 가변 크기 (ArrayList, Vector) ↓ 연결 리스트 (Linked List, 1960s) - 포인터 연결, 동적 메모리 ├─ 단방향 (Singly) ├─ 양방향 (Doubly) └─ 환형 (Circular) ↓ Skip List (1990) - O(log n) 검색, 확률적 균형
스택/큐 발전
스택 (Stack, 1946) - LIFO, 함수 호출, 후위 표기식 ↓ 큐 (Queue, 1960s) - FIFO, 스케줄링, BFS ↓ 덱 (Deque) - 양방향 삽입/삭제 ↓ 우선순위 큐 (Priority Queue) - 힙 기반, 다익스트라 ↓ Concurrent Queue (2000s~) - Lock-Free, CAS
트리 구조 발전
이진 트리 (Binary Tree, 1960s) ↓ BST (Binary Search Tree) - O(log n) 검색 (균형 시) ↓ 균형 트리 (1960s~1970s) ├─ AVL Tree (1962) - 엄격 균형, 회전 ├─ Red-Black Tree (1972) - 느슨한 균형, 빠른 삽입 └─ B-Tree (1972) - 디스크 I/O 최적화, DB 인덱스 ↓ B+Tree (1973) - 리프 노드 연결, 범위 쿼리 ↓ Trie (1960) - 문자열 검색, 자동완성 ↓ LSM Tree (1996) - 쓰기 최적화, NoSQL (Cassandra, LevelDB)
해시 테이블 발전
해시 테이블 (1953) - O(1) 평균 접근 ↓ 체이닝 (Chaining) - 충돌 해결, 연결 리스트 ↓ 개방 주소법 (Open Addressing) - 선형/이차/이중 해싱 ↓ 동적 해싱 (Dynamic Hashing) - 확장 가능 ↓ Consistent Hashing (1997) - 분산 시스템, 캐시 ↓ Cuckoo Hashing (2001) - 최악 O(1) 보장
⭐⭐ 중요하게 알아야 할 것
그래프 표현
인접 행렬 (Adjacency Matrix) - O(V²) 공간, O(1) 간선 확인 vs 인접 리스트 (Adjacency List) - O(V+E) 공간, 희소 그래프
고급 자료구조
Heap (1964) - 우선순위 큐, O(log n) ├─ Binary Heap ├─ Fibonacci Heap (1984) - 빠른 decrease-key └─ Pairing Heap ↓ Disjoint Set (Union-Find, 1964) - 집합 관리, Kruskal ↓ Segment Tree (1977) - 구간 쿼리, O(log n) ↓ Fenwick Tree (BIT, 1994) - 구간 합, 메모리 효율
동시성 자료구조
Blocking Queue (초기) ↓ Lock-Free Queue (2000s) - CAS 기반 ↓ Work-Stealing Queue (2000s) - ForkJoinPool
10. 알고리즘 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
정렬 알고리즘 발전
단순 정렬 (1950s~) - O(n²) ├─ Bubble Sort (교환, 안정) ├─ Selection Sort (선택, 불안정) └─ Insertion Sort (삽입, 안정, 거의 정렬된 데이터에 빠름) ↓ 분할정복 정렬 (1960s~) - O(n log n) ├─ Merge Sort (1945) - 안정, O(n) 공간 ├─ Quick Sort (1960) - 불안정, 평균 빠름, 최악 O(n²) └─ Heap Sort (1964) - 불안정, O(1) 공간 ↓ 특수 정렬 ├─ Counting Sort (1954) - O(n+k), 정수, 안정 ├─ Radix Sort (1954) - O(d×n), 자릿수 └─ Bucket Sort - O(n+k), 균등 분포 ↓ 하이브리드 정렬 ├─ Introsort (1997) - Quick + Heap, C++ std::sort └─ Timsort (2002) - Merge + Insertion, Python/Java
탐색 알고리즘 발전
순차 탐색 (Linear Search) - O(n) ↓ 이진 탐색 (Binary Search, 1946) - O(log n), 정렬 필요 ↓ 보간 탐색 (Interpolation Search) - O(log log n), 균등 분포 ↓ 해시 탐색 (Hash Search) - O(1) 평균 ↓ 트리 탐색 (BST, B-Tree) - O(log n)
그래프 탐색
DFS (Depth-First Search, 1950s) - 스택/재귀, 경로 탐색 ↓ BFS (Breadth-First Search, 1959) - 큐, 최단 경로 ↓ Dijkstra (1956) - 단일 출발 최단 경로, O((V+E) log V) ↓ Bellman-Ford (1958) - 음수 가중치 허용, O(VE) ↓ Floyd-Warshall (1962) - 모든 쌍 최단 경로, O(V³) ↓ A* (1968) - 휴리스틱 기반, 게임/경로 찾기 ↓ Bidirectional Search (양방향 탐색)
알고리즘 패러다임
분할 정복 (Divide and Conquer) - Merge Sort, Quick Sort, 이진 탐색, FFT ↓ 동적 프로그래밍 (Dynamic Programming, 1950s) - 피보나치, 배낭 문제, LCS, Memoization ↓ 탐욕 알고리즘 (Greedy, 1950s) - Dijkstra, Kruskal, Prim, Huffman 코딩 ↓ 백트래킹 (Backtracking) - N-Queen, 미로, 부분집합
⭐⭐ 중요하게 알아야 할 것
문자열 알고리즘
브루트 포스 (O(nm)) ↓ KMP (1977) - O(n+m), 실패 함수 ↓ Boyer-Moore (1977) - O(n/m) 최선, Bad Character ↓ Rabin-Karp (1987) - O(n+m) 평균, 해싱 ↓ Aho-Corasick (1975) - 다중 패턴, Trie 기반
최소 신장 트리 (MST)
Kruskal (1956) - 간선 정렬, Union-Find, O(E log E) vs Prim (1957) - 정점 확장, 우선순위 큐, O(E log V)
네트워크 플로우
Ford-Fulkerson (1956) - 최대 유량 ↓ Edmonds-Karp (1972) - BFS, O(VE²) ↓ Dinic (1970) - Level Graph, O(V²E)
근사 알고리즘 (Approximation)
NP-완전 문제 (1971) ↓ 근사 알고리즘 (1970s~) - TSP, Vertex Cover ↓ 휴리스틱 (Heuristic) - 빠른 근사해 ↓ 메타 휴리스틱 (1980s~) ├─ Simulated Annealing (1983) ├─ Genetic Algorithm (1975) └─ Ant Colony Optimization (1992)
11. 시스템 아키텍처 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
아키텍처 패턴 발전
Monolithic (1960s~) - 단일 배포 단위, 간단, 확장 어려움 ↓ Layered Architecture (1970s~) - Presentation, Business, Data ↓ Client-Server (1980s) - 2-Tier, 3-Tier ↓ MVC (1979) - Model, View, Controller 분리 ↓ SOA (Service-Oriented, 2000s) - SOAP, ESB, 재사용 ↓ MSA (Microservices, 2014~) - 독립 배포, REST/gRPC, 폴리글랏 ↓ Serverless (FaaS, 2014~) - 이벤트 기반, 자동 스케일링
메시징 패턴 발전
동기 호출 (Synchronous Call) - 직접 호출, 강결합 ↓ 비동기 메시징 (Asynchronous Messaging) ├─ Message Queue (1980s~) - MQ, RabbitMQ ├─ Pub/Sub (1990s~) - 토픽 기반, Kafka └─ Event Streaming (2010s~) - 이벤트 소싱, CQRS ↓ Event-Driven Architecture (EDA, 2000s~) - 느슨한 결합 ↓ Event Sourcing + CQRS (2010s~) - 이벤트 저장, 읽기/쓰기 분리
데이터 아키텍처 발전
중앙집중식 DB (1970s~) - 단일 데이터베이스 ↓ 레플리케이션 (Replication) - Master-Slave ↓ 샤딩 (Sharding) - 수평 분할 ↓ 분산 데이터베이스 (2000s~) - NoSQL, 분산 합의 ↓ 폴리글랏 퍼시스턴스 (2010s~) - 용도별 DB 선택 ↓ Data Mesh (2019~) - 도메인 중심 데이터 소유권
⭐⭐ 중요하게 알아야 할 것
통합 패턴 발전
직접 통합 (Point-to-Point) - n(n-1)/2 연결 ↓ ESB (Enterprise Service Bus, 2000s) - 중앙 통합, 병목 ↓ API Gateway (2010s~) - 단일 진입점, 라우팅, 인증 ↓ Service Mesh (2016~) - 사이드카, 트래픽 관리 (Istio, Linkerd)
확장성 패턴
수직 확장 (Vertical Scaling) - Scale-Up, 한계 존재 ↓ 수평 확장 (Horizontal Scaling) - Scale-Out, 무한 확장 ↓ Auto Scaling (2000s~) - 부하 기반 자동 확장 ↓ Elastic Scaling (클라우드) - 즉각 확장/축소
회복성 패턴
Retry (재시도) - 단순 재시도, 지수 백오프 ↓ Circuit Breaker (2007) - 장애 전파 차단, Hystrix ↓ Bulkhead (격벽) - 리소스 격리 ↓ Rate Limiting (속도 제한) - Token Bucket, Leaky Bucket ↓ Chaos Engineering (2010s~) - 장애 주입, Netflix
12. IT 경영전략 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
경영전략 프레임워크 발전
SWOT 분석 (1960s) - 강점/약점/기회/위협 ↓ Porter의 5 Forces (1979) - 산업 구조 분석 ↓ 가치사슬 (Value Chain, 1985) - 본원 활동, 지원 활동 ↓ 핵심역량 (Core Competence, 1990) - 경쟁우위 원천 ↓ 블루오션 전략 (2005) - 비경쟁 시장 창출 ↓ 린 스타트업 (2011) - MVP, Build-Measure-Learn
IT 전략 프레임워크
전략적 정렬 모델 (Strategic Alignment, 1993) - 비즈니스 전략 ↔ IT 전략 정렬 ↓ EA (Enterprise Architecture, 1987~) ├─ Zachman Framework (1987) ├─ TOGAF (1995) └─ Federal EA (1999) ↓ IT 거버넌스 (2000s~) ├─ COBIT (1996) ├─ ITIL (1989) └─ ISO 20000 ↓ 디지털 전환 (Digital Transformation, 2010s~)
성과 관리 발전
재무 지표 (1900s~) - ROI, 매출, 이익 ↓ BSC (Balanced Scorecard, 1992) - 4가지 관점 균형 ├─ 재무 (Financial) ├─ 고객 (Customer) ├─ 내부 프로세스 (Internal Process) └─ 학습과 성장 (Learning & Growth) ↓ KPI (Key Performance Indicator, 1990s~) - 핵심 지표 ↓ OKR (Objectives and Key Results, 1970s/2010s~) - Objective(목표) + Key Results(핵심 결과) - Google, Intel 사용 ↓ North Star Metric (2010s~) - 단일 핵심 지표
⭐⭐ 중요하게 알아야 할 것
프로젝트 관리 방법론 발전
Waterfall (1970s) - 순차적, 문서 중심 ↓ Spiral (1986) - 반복적, 위험 관리 ↓ RUP (1990s) - 반복적, 아키텍처 중심 ↓ Agile (2001) - 애자일 선언 ├─ Scrum (1995) - 스프린트, 일일 스크럼 ├─ XP (1996) - TDD, 페어 프로그래밍 └─ Kanban (2000s) - 흐름 최적화, WIP 제한 ↓ SAFe (Scaled Agile, 2011) - 대규모 애자일
비즈니스 모델 혁신
전통적 비즈니스 모델 (제품 판매) ↓ 구독 모델 (Subscription, 2000s~) - SaaS, Netflix ↓ 프리미엄 (Freemium, 2006) - 기본 무료, 프리미엄 유료 ↓ 플랫폼 비즈니스 (2010s~) - 양면 시장, 네트워크 효과 ↓ 공유 경제 (Sharing Economy, 2010s~) - Airbnb, Uber ↓ API 이코노미 (2010s~) - API as a Product
디지털 전환 단계
디지타이제이션 (Digitization) - 아날로그 → 디지털 변환 ↓ 디지털라이제이션 (Digitalization) - 프로세스 디지털화 ↓ 디지털 트랜스포메이션 (Digital Transformation) - 비즈니스 모델/문화/조직 혁신 ↓ AI 트랜스포메이션 (2020s~) - AI 중심 혁신
13. 신기술 동향 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
블록체인 발전
비트코인 (2009) - PoW, 퍼블릭, 7 TPS ↓ 이더리움 (2015) - 스마트 컨트랙트, Solidity ↓ 프라이빗/컨소시엄 체인 (2015~) ├─ Hyperledger Fabric (2016) - PBFT, 허가형 └─ Corda (2016) - 금융 특화 ↓ 이더리움 2.0 (2022) - PoS, 샤딩, 확장성 개선 ↓ 레이어2 (2020s~) - 롤업(Optimistic/ZK), 사이드체인 ↓ 토큰 경제 (2020s~) ├─ NFT (2017~) - 디지털 자산 소유권, ERC-721 ├─ DeFi (2020~) - 탈중앙 금융, DEX, 대출 ├─ CBDC (2020s~) - 중앙은행 디지털 화폐 ├─ STO (Security Token Offering) - 증권형 토큰 └─ RWA 토큰화 (2023~) - 실물자산 토큰화
IoT 발전
M2M (Machine-to-Machine, 2000s) - 단순 연결 ↓ IoT (Internet of Things, 2010s~) - 센서, 액추에이터, 게이트웨이, 클라우드 ↓ 프로토콜 발전 ├─ MQTT (1999) - 경량 Pub/Sub ├─ CoAP (2010) - 제약 장치용 HTTP └─ LoRaWAN (2015) - 저전력 장거리 ↓ Edge Computing (2016~) - 엣지에서 처리, 저지연 ↓ Digital Twin (2010s~) - 물리적 객체의 디지털 복제 ↓ IoB (Internet of Behavior, 2020s~) - 행동 데이터 수집
양자 컴퓨팅 발전
양자역학 이론 (1920s) ↓ Shor's Algorithm (1994) - RSA 암호 해독 알고리즘 ↓ Grover's Algorithm (1996) - 탐색 속도 향상 ↓ 초기 양자 컴퓨터 (2000s~) - 수십 큐비트 ↓ 양자 우위 (Quantum Supremacy, 2019) - Google 53큐비트 ↓ 실용적 양자 컴퓨터 (2020s~) ├─ IBM (2023, 433큐비트) ├─ Google (Willow, 2024) └─ Amazon Braket ↓ 양자 내성 암호 (Post-Quantum Cryptography) - NIST 표준화
XR (Extended Reality) 발전
VR (Virtual Reality, 1960s~) - 완전 몰입, HMD, Oculus (2012) ↓ AR (Augmented Reality, 1990s~) - 현실 + 가상, Pokemon GO (2016), ARKit/ARCore ↓ MR (Mixed Reality, 2010s~) - 가상↔현실 상호작용, HoloLens (2016) ↓ XR (Extended Reality) - VR+AR+MR 통칭 ↓ 메타버스 (Metaverse, 2020s~) - 3D 가상세계, 경제 활동, Roblox, Fortnite ↓ Spatial Computing (2020s~) - Vision Pro (2024)
핀테크/디지털 금융 발전
전통 금융 (오프라인, 지점 중심) ↓ 인터넷뱅킹 (2000s) - 온라인 계좌 조회/이체 ↓ 핀테크 (FinTech, 2010s~) - 기술 + 금융 결합 ├─ 간편결제 (2013~) - Apple Pay, 카카오페이 ├─ P2P 대출 (2015~) └─ 로보어드바이저 (2016~) ↓ 오픈뱅킹 (2019~) - API 기반 금융 데이터 공유 ↓ 마이데이터 (2022~) - 개인 금융정보 자기결정권 ↓ 임베디드 금융 (Embedded Finance, 2020s~) - 비금융 서비스에 금융 기능 내장 - BaaS (Banking as a Service) ↓ RegTech (2020s~) - 규제 준수 자동화, AI 기반 이상탐지
⭐⭐ 중요하게 알아야 할 것
엣지 컴퓨팅 발전
클라우드 중심 (2010s) - 중앙 집중 처리 ↓ Fog Computing (2012) - 중간 계층 처리 ↓ Edge Computing (2016~) - 엣지 디바이스에서 처리 ├─ MEC (Multi-access Edge Computing) └─ Cloudlet (소규모 데이터센터) ↓ Far Edge (2020s~) - 디바이스 자체에서 처리 (AI 칩)
6G 통신 (2030 예상)
1G (1980s) - 아날로그 음성 ↓ 2G (1991) - 디지털 음성, SMS ↓ 3G (1998) - 모바일 인터넷 ↓ 4G LTE (2009) - 고속 데이터, 100Mbps ↓ 5G (2019) - 초저지연(1ms), 초고속(10Gbps), 초연결 - eMBB (광대역), URLLC (저지연), mMTC (대규모 연결) ↓ 6G (2030 예상) - 테라헤르츠파, 100Gbps, 홀로그램
그린 IT 발전
전통적 IT (에너지 소비 무관심) ↓ Green IT (2007~) - 에너지 효율, 전자 폐기물 감소 ↓ 탄소 중립 (Carbon Neutral, 2010s~) - 탄소 배출 상쇄 ↓ Carbon-Aware Computing (2020s~) - 탄소 배출 낮은 시간/지역에서 워크로드 실행 ↓ Sustainable IT (지속가능 IT) - ESG, 순환 경제, 재생 에너지
14. 출제 빈도 높은 기술 조합
⭐⭐⭐ 시험 필수 암기
컨테이너 + 오케스트레이션 스택
Docker (이미지) → Kubernetes (오케스트레이션) → Helm (패키지 관리) + Service Mesh (Istio/Linkerd) + GitOps (ArgoCD) + 관찰성 (Prometheus + Grafana + Jaeger)
MSA 필수 기술
API Gateway → 인증/인가 → 서비스 디스커버리 → 로드밸런싱 → Circuit Breaker → 분산 트레이싱 → 로깅 → 모니터링
데이터 파이프라인
수집 (Kafka) → 처리 (Spark/Flink) → 저장 (Data Lake/DW) → 분석 (Presto/Athena) → 시각화 (Tableau/Superset)
DevOps 도구체인
코드 (Git) → 빌드 (Maven/Gradle) → CI (Jenkins/GitHub Actions) → 테스트 (JUnit/Jest) → CD (ArgoCD/Spinnaker) → 모니터링 (Prometheus/Grafana)
AI/ML 파이프라인 (MLOps)
데이터 수집 → 전처리 (Feature Store) → 학습 (MLflow) → 모델 레지스트리 → 배포 (Seldon/KServe) → 모니터링 (Drift Detection)
15. 법제도 및 표준 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
개인정보보호법 발전
개인정보보호 개별법 (2000s~) ├─ 정보통신망법 (2001) ├─ 신용정보법 (2001) └─ 위치정보법 (2005) ↓ 개인정보보호법 제정 (2011) - 일반법 ↓ 개정 강화 (2020) - 데이터 3법 (가명정보, 개인정보위 출범) - 가명처리, 결합 허용 ↓ GDPR 정합성 (2021~) - EU 적정성 결정 - 국외 이전 규정 강화 ↓ 전면 개정 (2023, 2024.3 시행) - 과징금 전체 매출 3%로 상향 - 국외이전 규정 개선 - 자동화된 의사결정 대응권 신설
보안 인증 제도 발전
정보보호관리체계 (ISMS, 2001) - 정보보호 관리 체계 인증 ↓ PIMS (2010) - 개인정보보호 관리 체계 ↓ ISMS-P (2018) - ISMS + PIMS 통합 - 정보보호 + 개인정보보호 ↓ 인증기준 개정 (2023) - 통제항목 104개 → 80개(관리체계 16 + 보호대책 64) - ISMS-P: 102개(관리체계 16 + 보호대책 64 + 개인정보 22) ↓ 인증 범위 확대 (2020s~) - 클라우드 보안인증 (CSAP) - IoT 보안인증
국제 보안 표준
ISO/IEC 27001 (2005) - 정보보안 관리체계 ↓ ISO/IEC 27002 (2005) - 실행 지침 ↓ ISO/IEC 27017 (2015) - 클라우드 보안 ↓ ISO/IEC 27018 (2014) - 클라우드 개인정보 ↓ ISO/IEC 27701 (2019) - 개인정보 관리체계 (PIMS)
⭐⭐ 중요하게 알아야 할 것
전자정부 표준 발전
전자정부법 (2001) ↓ 전자정부 표준프레임워크 (2009) - 표준화된 개발 환경 ↓ 공공 클라우드 전환 (2010s~) - 클라우드컴퓨팅법 (2015) - G-Cloud ↓ 디지털정부법 (2020) - 데이터 기반 행정 - 마이데이터
소프트웨어 품질 표준
CMM (1991) - 성숙도 모델 ↓ CMMI (2000) - 통합 성숙도 모델 ├─ CMMI-DEV (개발) ├─ CMMI-SVC (서비스) └─ CMMI-ACQ (획득) ↓ ISO/IEC 25010:2011 (SQuaRE) - 소프트웨어 품질 모델 (8개 특성) - 기능 적합성, 성능 효율성, 호환성, 사용성, 신뢰성, 보안성, 유지보수성, 이식성 ↓ ISO/IEC 25010:2023 (개정) - 안전성(Safety) 추가 → 9개 특성
16. 빅데이터/검색 기술 계보
⭐⭐⭐ 반드시 알아야 할 핵심
빅데이터 처리 기술 발전
RDBMS (1990s~) - 정형 데이터, 수직 확장 한계 ↓ Hadoop Ecosystem (2006~) ├─ HDFS (분산 저장) ├─ MapReduce (배치 처리) └─ Hive (SQL on Hadoop) ↓ Spark (2014~) - In-Memory 처리 - 10~100배 빠름 - Spark SQL, Spark Streaming ↓ Flink (2016~) - True Streaming (이벤트 단위) - Exactly-once 보장 ↓ Lakehouse (2020s~) - Delta Lake, Iceberg, Hudi - DW + Data Lake 통합
검색 엔진 발전
Lucene (1999) - 검색 라이브러리 ↓ Solr (2004) - 검색 서버 - 풀텍스트 검색 ↓ Elasticsearch (2010) - 분산 검색 엔진 - RESTful API - ELK Stack (Elastic + Logstash + Kibana) ↓ Vector DB (2020s~) ├─ Pinecone (2021) ├─ Milvus (2021) ├─ Weaviate (2022) └─ Chroma (2022) - 임베딩 벡터 검색 - RAG, 추천시스템
실시간 스트리밍 발전
메시지 큐 (2000s~) ├─ ActiveMQ (2004) └─ RabbitMQ (2007) ↓ Kafka (2011) - 분산 로그 시스템 - 높은 처리량, 내구성 ↓ Kafka Ecosystem (2015~) ├─ Kafka Streams (스트림 처리) ├─ ksqlDB (스트리밍 SQL) └─ Kafka Connect (연동) ↓ Pulsar (2016, Yahoo→Apache) - 멀티테넌시 - Geo-Replication
⭐⭐ 중요하게 알아야 할 것
데이터 거버넌스 발전
수동 데이터 관리 (2000s~) ↓ 마스터 데이터 관리 (MDM, 2000s) - 핵심 데이터 표준화 ↓ 데이터 카탈로그 (2010s~) - Alation, Collibra - 메타데이터 관리 ↓ Data Fabric (2020s~, Gartner) - 메타데이터 기반 자동 통합 - 중앙 관리, AI/ML 활용 ↓ Data Mesh (2019~, Zhamak Dehghani) - 도메인 중심 데이터 소유권 - Data as a Product - 셀프서비스 플랫폼 ↓ DataOps (2020s~) - 데이터 파이프라인 자동화 - 데이터 품질 모니터링
17. 시험 출제 키워드 연결
⭐⭐⭐ 과목 간 연결 키워드
"확장성" 연결
컴퓨터구조: 멀티코어, NUMA ↔ DB: 샤딩, 레플리케이션, CAP ↔ 클라우드: Scale-Out, Auto Scaling ↔ 아키텍처: MSA, 무상태
"캐시" 연결
컴퓨터구조: L1/L2/L3 캐시, TLB ↔ DB: 버퍼 캐시, 쿼리 캐시 ↔ 네트워크: CDN, 프록시 캐시 ↔ 아키텍처: Redis, Memcached ↔ 웹: HTTP 캐시, 브라우저 캐시
"트랜잭션" 연결
DB: ACID, 2PC, MVCC ↔ 분산시스템: Saga, 보상 트랜잭션 ↔ 블록체인: 스마트 컨트랙트 ↔ MSA: 이벤트 소싱, 최종 일관성
"보안" 연결
네트워크: TLS, IPSec, VPN ↔ 암호학: 대칭키, 비대칭키, 해시 ↔ 인증: OAuth, SAML, FIDO ↔ 법제도: 개인정보보호법, ISMS ↔ 아키텍처: Zero Trust, mTLS
"AI" 연결
알고리즘: 그래프, 최적화 ↔ 데이터: 전처리, 피처 엔지니어링 ↔ 인프라: GPU, TPU, 분산 학습 ↔ 운영: MLOps, 모델 서빙 ↔ 법제도: AI 윤리, 설명가능 AI
18. 프론트엔드 프레임워크 발전사
웹 프론트엔드 진화
정적 HTML (1990s) - 서버에서 완성된 HTML 전송 ↓ JavaScript + DOM 조작 (1995~) - 동적 웹페이지 - document.getElementById() ↓ jQuery (2006~) - DOM 조작 단순화 - $() 셀렉터, 크로스브라우저 - 플러그인 생태계 ↓ Backbone.js / Ember.js (2010~) - MVC 패턴 도입 - 구조화된 코드 ↓ AngularJS (2010~) - 양방향 데이터 바인딩 - 의존성 주입 - Google 지원 ↓ React (2013~, Facebook) - Virtual DOM - 컴포넌트 기반 - 단방향 데이터 흐름 - JSX ↓ Angular 2+ (2016~) - TypeScript 기반 - 완전 재작성 - RxJS 반응형 ↓ Vue.js (2014~) - Progressive Framework - 쉬운 학습 곡선 - 양방향 바인딩 + Virtual DOM ↓ Svelte (2016~) - 컴파일 타임 처리 - No Virtual DOM - 최소 번들 크기 ↓ Next.js/Nuxt.js (2016~) - SSR + SSG - 파일 기반 라우팅 - 풀스택 프레임워크화 ↓ React Server Components (2020~) - 서버 컴포넌트 - 하이브리드 렌더링
상태 관리 진화
jQuery (전역 변수/이벤트) ↓ Flux (2014, Facebook) - 단방향 데이터 흐름 - Action → Dispatcher → Store → View ↓ Redux (2015) - 단일 Store - 불변성 - Pure Function Reducer ↓ MobX (2015) - Observable 패턴 - 자동 추적 - 덜 보일러플레이트 ↓ Context API (React 16.3, 2018) - 내장 상태 공유 - Provider/Consumer ↓ Zustand / Jotai / Recoil (2020~) - 경량 상태 관리 - Hooks 기반 - 원자적 상태 ↓ TanStack Query (React Query, 2020~) - 서버 상태 관리 - 캐싱, 동기화 - Stale-While-Revalidate
렌더링 전략 진화
CSR (Client-Side Rendering) - 브라우저에서 렌더링 - SPA, 초기 로딩 느림 ↓ SSR (Server-Side Rendering) - 서버에서 HTML 생성 - SEO 개선, TTFB 개선 ↓ SSG (Static Site Generation) - 빌드 타임에 HTML 생성 - CDN 배포, 최고 성능 ↓ ISR (Incremental Static Regeneration) - 정적 + 동적 결합 - 백그라운드 재생성 - Next.js 도입 ↓ Streaming SSR + React Server Components - 점진적 HTML 전송 - 서버/클라이언트 컴포넌트 분리
19. IaC (Infrastructure as Code) 발전사
인프라 관리 진화
수동 관리 (1990s~) - 콘솔 클릭 - 문서화된 수동 절차 - 휴먼 에러 빈번 ↓ 쉘 스크립트 (2000s) - Bash, PowerShell - 반복 작업 자동화 - 멱등성 없음 ↓ CFEngine (1993) - 최초의 구성 관리 도구 - 선언적 언어 ↓ Puppet (2005) - Ruby DSL - 에이전트 기반 - 엔터프라이즈 구성 관리 ↓ Chef (2009) - Ruby 기반 DSL - "Recipe", "Cookbook" - 절차적 접근 ↓ Ansible (2012, Red Hat) - YAML 기반 - 에이전트리스 (SSH) - 쉬운 학습 곡선 - 멱등성 보장 ↓ SaltStack (2011) - 이벤트 기반 - 빠른 실행 속도 ↓ Docker (2013) - 컨테이너 이미지 - Dockerfile - 불변 인프라 ↓ Terraform (2014, HashiCorp) - HCL (선언형) - 멀티 클라우드 - State 관리 - Plan → Apply ↓ CloudFormation (AWS) - AWS 네이티브 IaC - YAML/JSON ↓ Kubernetes (2014) - 선언적 YAML - 컨테이너 오케스트레이션 - Desired State 관리 ↓ Pulumi (2018) - 일반 프로그래밍 언어 - Python, TypeScript, Go - 조건문, 반복문 사용 가능 ↓ CDK (AWS, 2019) - 프로그래밍 언어로 CloudFormation 생성 - TypeScript, Python ↓ Crossplane (2018~) - K8s 기반 인프라 관리 - CRD로 클라우드 리소스 정의 ↓ OpenTofu (2023~) - Terraform 포크 (오픈소스) - BSL 라이선스 대응
IaC 패러다임 비교
선언형 (Declarative) 절차형 (Imperative) ┌─────────────────────┐ ┌─────────────────────┐ │ "무엇을" 원하는지 │ │ "어떻게" 할지 │ │ 정의 │ │ 단계별 명령 │ ├─────────────────────┤ ├─────────────────────┤ │ Terraform │ │ Ansible (일부) │ │ CloudFormation │ │ Shell Script │ │ Kubernetes YAML │ │ Chef (일부) │ │ Pulumi │ │ │ └─────────────────────┘ └─────────────────────┘ 장점: 멱등성, 상태 관리 장점: 유연성, 디버깅 용이 단점: 복잡한 로직 어려움 단점: 드리프트 발생 가능
20. Observability 발전사
모니터링에서 Observability로
시스템 모니터링 (1990s~) - CPU, Memory, Disk 사용률 - SNMP, Nagios, Zabbix - 임계값 기반 알림 ↓ APM 등장 (2000s) - Application Performance Management - 트랜잭션 추적 - New Relic, AppDynamics, Dynatrace ↓ 로그 집계 (2010s) - 중앙화된 로그 관리 - ELK Stack (Elasticsearch + Logstash + Kibana) - Splunk ↓ 시계열 메트릭 (2012~) - Graphite, InfluxDB - 시계열 데이터베이스 - 대시보드 시각화 ↓ Prometheus (2012~, SoundCloud) - Pull 기반 메트릭 수집 - PromQL - Kubernetes 네이티브 - Alertmanager ↓ 분산 트레이싱 (2010s~) - Google Dapper 논문 (2010) - Zipkin (2012, Twitter) - Jaeger (2017, Uber) - 마이크로서비스 추적 ↓ Observability 3요소 통합 (2018~) - Metrics + Logs + Traces - 상관관계 분석 - Datadog, Grafana Cloud ↓ OpenTelemetry (2019~) - OpenTracing + OpenCensus 통합 - 벤더 중립 표준 - 자동 계측 (Auto-instrumentation) ↓ Grafana 스택 (2020s) - Prometheus (Metrics) - Loki (Logs) - Tempo (Traces) - 통합 대시보드 ↓ eBPF 기반 관측 (2020s~) - 커널 레벨 관측 - 무에이전트 계측 - Cilium, Pixie, Falco
Observability 3요소 연결
┌────────────────────────────────────────┐
│ Correlation │
│ (Trace ID로 연결) │
└────────────────────────────────────────┘
│ │ │
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ Metrics │ │ Logs │ │ Traces │
│ (집계) │ │ (이벤트) │ │ (흐름) │
├──────────┤ ├──────────┤ ├──────────┤
│Prometheus│ │ Loki/ELK │ │ Jaeger │
│Datadog │ │ Splunk │ │ Zipkin │
│CloudWatch│ │CloudWatch│ │ X-Ray │
└──────────┘ └──────────┘ └──────────┘
│ │ │
└────────────┴────────────┘
│
▼
┌──────────────┐
│ Grafana │
│ (통합 UI) │
└──────────────┘
질문 예시:
- "에러율이 왜 올랐지?" → Metrics 확인
- "어떤 에러가 발생했지?" → Logs 확인
- "요청이 어디서 느려졌지?" → Traces 확인알림(Alerting) 진화
임계값 알림 (전통) - CPU > 80% → 알림 - 노이즈 많음, 컨텍스트 부족 ↓ 이상 탐지 (Anomaly Detection) - 통계적 기준선 대비 - 동적 임계값 ↓ SLO 기반 알림 - Error Budget 소진 시 알림 - 비즈니스 영향 중심 ↓ AIOps - ML 기반 이상 탐지 - 자동 상관관계 분석 - 노이즈 감소
21. 자료구조 심화 계보
⭐⭐⭐ 반드시 알아야 할 핵심
선형 자료구조 발전
배열 (Array) - 연속 메모리, O(1) 접근 ↓ 연결 리스트 (Linked List) - 동적 메모리, O(1) 삽입/삭제 ↓ 이중 연결 리스트 (Doubly Linked List) - 양방향 탐색
스택/큐 계열 발전
스택 (Stack) - LIFO ↓ 큐 (Queue) - FIFO ↓ 덱 (Deque) - 양방향 삽입/삭제 ↓ 우선순위 큐 (Priority Queue) - 힙 기반, O(log n)
트리 구조 심화 발전
이진 트리 (Binary Tree) ↓ BST (Binary Search Tree) - O(log n) 평균 ↓ AVL Tree (1962) - 엄격 균형, 높이 차 ≤ 1 ↓ Red-Black Tree (1972) - 느슨한 균형, 삽입/삭제 빠름 ↓ B-Tree (1972) - 디스크 I/O 최적화, DB 인덱스 ↓ B+ Tree (1973) - 리프 연결, 범위 쿼리 최적화 ↓ LSM Tree (1996) - 쓰기 최적화, NoSQL (Cassandra, RocksDB)
해시 테이블 심화 발전
해시 테이블 (1953) - O(1) 평균 접근 ↓ 체이닝 (Chaining) - 충돌 해결, 연결 리스트 ↓ 개방 주소법 (Open Addressing) - 선형/이차/이중 해싱 ↓ Cuckoo Hashing (2001) - 최악 O(1) 조회 보장 ↓ 분산 해시: Consistent Hashing (1997) → DHT (Distributed Hash Table)
⭐⭐ 중요하게 알아야 할 것
문자열 특화 자료구조
Trie (1960) - 문자열 검색, 자동완성, O(m) ↓ Radix Tree (Compressed Trie) - 메모리 절약, 공통 접두사 압축 ↓ Suffix Tree (1973) - 모든 접미사 인덱싱, 패턴 매칭
22. 알고리즘 패러다임 계보
⭐⭐⭐ 반드시 알아야 할 핵심
알고리즘 설계 패러다임 발전
완전 탐색 (Brute Force) - 모든 경우 확인 ↓ 백트래킹 (Backtracking) - 가지치기, 불필요한 탐색 제거 ↓ 그리디 (Greedy) - 지역 최적해, Dijkstra/Huffman ↓ 분할 정복 (Divide and Conquer) - 문제 분할, Merge Sort/FFT ↓ 동적 프로그래밍 (Dynamic Programming) - 중복 부분문제, 최적 부분구조 ↓ 메타휴리스틱 (Meta-Heuristic) ├─ 유전 알고리즘 (Genetic Algorithm, 1975) ├─ 시뮬레이티드 어닐링 (SA, 1983) └─ 개미 군집 최적화 (ACO, 1992)
정렬 알고리즘 세대별 발전
1세대: O(n²) ├─ 버블 정렬 (Bubble Sort) - 교환, 안정 ├─ 삽입 정렬 (Insertion Sort) - 안정, 거의 정렬 시 빠름 └─ 선택 정렬 (Selection Sort) - 불안정 ↓ 2세대: O(n log n) ├─ 머지 정렬 (Merge Sort) - 안정, O(n) 공간 ├─ 퀵 정렬 (Quick Sort) - 평균 최빠름, 최악 O(n²) └─ 힙 정렬 (Heap Sort) - O(1) 공간 ↓ 3세대: O(n) 특수 정렬 ├─ 기수 정렬 (Radix Sort) - O(d×n), 자릿수 └─ 계수 정렬 (Counting Sort) - O(n+k), 정수 ↓ 4세대: 하이브리드 └─ TimSort (2002) - Merge + Insertion, Python/Java 표준
⭐⭐ 중요하게 알아야 할 것
최단 경로 알고리즘 발전
Dijkstra (1956) - 단일 출발, 양수 가중치, O((V+E) log V) ↓ Bellman-Ford (1958) - 음수 가중치 허용, O(VE) ↓ Floyd-Warshall (1962) - 모든 쌍, O(V³) ↓ A* (1968) - 휴리스틱 기반, 경로 탐색 최적화
문자열 매칭 알고리즘 발전
브루트 포스 (Brute Force) - O(nm), 단순 비교 ↓ KMP (1977) - O(n+m), 실패 함수, 접두사 활용 ↓ Boyer-Moore (1977) - O(n/m) 최선, Bad Character Rule ↓ Rabin-Karp (1987) - O(n+m) 평균, 롤링 해시 ↓ Aho-Corasick (1975) - 다중 패턴 동시 매칭, Trie + BFS
23. 시스템 아키텍처 심화 계보
⭐⭐⭐ 반드시 알아야 할 핵심
애플리케이션 아키텍처 발전
모놀리식 (Monolithic) - 단일 배포, 단순 ↓ 2-Tier (Client-Server) - 프레젠테이션/데이터 분리 ↓ 3-Tier / N-Tier - Presentation/Business/Data 분리 ↓ SOA (Service-Oriented, 2000s) - SOAP, ESB, 서비스 재사용 ↓ MSA (Microservices, 2014~) - 독립 배포, API Gateway, 폴리글랏 ↓ 서버리스 (Serverless/FaaS, 2014~) - 이벤트 기반, 무상태
이벤트 기반 아키텍처 발전
동기 호출 (Synchronous) - 강결합, 직접 호출 ↓ 이벤트 기반 아키텍처 (EDA) - 느슨한 결합, 비동기 ↓ CQRS (Command Query Responsibility Segregation) - 읽기/쓰기 모델 분리 ↓ 이벤트 소싱 (Event Sourcing) - 상태 변화를 이벤트로 저장 - CQRS와 결합 시 강력
서비스 통신 진화
MSA 통신 ↓ Service Mesh (2016~) ├─ Istio - Envoy 사이드카, 트래픽 관리 ├─ Linkerd - 경량, Rust 기반 └─ Consul Connect - 서비스 디스커버리 통합
⭐⭐ 중요하게 알아야 할 것
메시징 시스템 발전
RPC (Remote Procedure Call) - 동기, 강결합 ↓ MQ (Message Queue) - RabbitMQ, ActiveMQ, 비동기 전달 ↓ Kafka (2011) - 이벤트 스트리밍, 분산 로그, 높은 처리량 ↓ Pulsar (2016) - 멀티테넌시, Geo-Replication, 저장/서빙 분리
캐시 아키텍처 발전
로컬 캐시 (In-Process) - HashMap, EhCache ↓ Memcached (2003) - 분산 메모리 캐시, 단순 Key-Value ↓ Redis (2009) - 다양한 자료구조, 퍼시스턴스, Pub/Sub ↓ 분산 캐시 (Redis Cluster) - 샤딩, 고가용성, Sentinel
API 통신 프로토콜 발전
RPC (1970s~) - 원격 프로시저 호출 ↓ SOAP/XML (1998) - 표준화, WSDL, 무거움 ↓ REST/JSON (2000) - 리소스 중심, HTTP 메서드, 경량 ↓ GraphQL (2015, Facebook) - 클라이언트 주도 쿼리, 오버/언더페칭 해결 ↓ gRPC/Protobuf (2016, Google) - 바이너리, HTTP/2, 스트리밍, MSA 내부 통신
24. 프로그래밍 패러다임 계보
⭐⭐⭐ 반드시 알아야 할 핵심
프로그래밍 언어 패러다임 발전
기계어 (Machine Code) - 0과 1, 하드웨어 직접 제어 ↓ 어셈블리 (Assembly) - 니모닉 코드, 1:1 기계어 매핑 ↓ 절차적 (Procedural) - C, Pascal, 순차 실행, 함수 ↓ 객체지향 (Object-Oriented) - C++, Java, 캡슐화/상속/다형성 ↓ 함수형 (Functional) - Haskell, Scala, 불변성, 순수 함수 ↓ 리액티브 (Reactive) - RxJava, Reactor, 비동기 스트림
언어 계열별 발전
스크립트 언어: Perl (1987) → Python (1991) → Ruby (1995) → Node.js (2009) 시스템 프로그래밍: C (1972) → C++ (1983) → Rust (2010) → Zig (2016)
⭐⭐ 중요하게 알아야 할 것
웹 프론트엔드 기술 발전
HTML/CSS (1990s) - 정적 마크업 ↓ jQuery (2006) - DOM 조작 단순화 ↓ Angular (2010) - 양방향 바인딩, SPA ↓ React/Vue (2013/2014) - 컴포넌트, Virtual DOM ↓ Next.js/Nuxt (2016~) - SSR/SSG, 풀스택 프레임워크
컴파일/실행 방식 발전
AOT (Ahead-Of-Time) - C/C++, 네이티브 바이너리, 빠른 실행 ↓ JIT (Just-In-Time) - Java/C#, 런타임 최적화 ↓ 바이트코드 (Bytecode) - JVM/CLR, 플랫폼 독립 ↓ WebAssembly (2017) - 브라우저 네이티브 성능, 다중 언어 지원
25. 웹 기술 스택 계보
⭐⭐⭐ 반드시 알아야 할 핵심
웹 애플리케이션 발전
정적 HTML (1990s) - 서버에서 완성된 HTML 전송 ↓ CGI (Common Gateway Interface) - Perl/C, 동적 페이지 생성 ↓ 서버사이드 (Server-Side) - JSP/PHP/ASP, 템플릿 엔진 ↓ AJAX/jQuery (2005~) - 비동기 부분 갱신, XHR ↓ SPA (Single Page Application) - Angular/React/Vue, 클라이언트 렌더링 ↓ SSR/ISR (Next.js, 2016~) - 서버 렌더링 + 정적 생성 + 증분 재생성
⭐⭐ 중요하게 알아야 할 것
풀스택 아키텍처 발전
LAMP (Linux + Apache + MySQL + PHP) - 전통 웹 스택 ↓ MEAN/MERN (MongoDB + Express + Angular/React + Node.js) ↓ JAMstack (JavaScript + APIs + Markup) - 정적 생성, CDN ↓ Edge Computing (2020s~) - 엣지에서 SSR, Vercel/Cloudflare Workers
배포 방식 발전
FTP (수동 업로드) - 파일 직접 전송 ↓ CI/CD (2010s~) - 자동 빌드/배포, Jenkins/GitHub Actions ↓ GitOps (2017~) - Git 중심, ArgoCD/Flux, 선언적 배포 ↓ Platform Engineering (2022~) - IDP, 셀프서비스 플랫폼
26. 암호 표준 진화 계보
⭐⭐⭐ 반드시 알아야 할 핵심
대칭키 암호 발전
국제 표준:
DES (56bit, 1977) - 최초 표준, 현재 취약
↓
3DES (112bit, 1998) - DES 3회 적용, 과도기
↓
AES (128/192/256bit, 2001) - 현재 표준, Rijndael 알고리즘
한국 표준:
SEED (128bit, 1999) - 국내 금융권 표준
↓
ARIA (128/192/256bit, 2004) - 경량, 정부/공공기관
↓
LEA (128/192/256bit, 2013) - 경량 암호, IoT/모바일 최적화비대칭키 암호 발전
RSA (1977) - 소인수분해, 2048/4096bit ↓ ECC/ECDSA (1985) - 타원곡선, 짧은 키, 모바일 최적화 ↓ Ed25519 - EdDSA 기반, 빠른 서명/검증 ↓ 양자내성 암호 (Post-Quantum Cryptography) - CRYSTALS-Kyber (ML-KEM, FIPS 203) - 키 교환 - CRYSTALS-Dilithium (ML-DSA, FIPS 204) - 전자서명 - 2022 NIST 1차 선정, 2024 FIPS 표준 확정
해시 함수 발전
MD5 (128bit) - 충돌 발견, 사용 금지 ↓ SHA-1 (160bit) - 충돌 공격 성공(2017), 폐기 ↓ SHA-2 (256/384/512bit) - 현재 표준, SHA-256 널리 사용 ↓ SHA-3 (Keccak, 2015) - 스펀지 구조, SHA-2 대안
⭐⭐ 중요하게 알아야 할 것
TLS 프로토콜 발전
SSL 2.0 (1995) - 최초 상용, 심각한 취약점 ↓ SSL 3.0 (1996) - 개선, POODLE 취약점 ↓ TLS 1.0 (1999) - SSL 3.0 후속, BEAST 취약점 ↓ TLS 1.2 (2008) - 현재 주력, AEAD 암호화 ↓ TLS 1.3 (2018) - 1-RTT 핸드셰이크, 0-RTT, 취약 암호 제거
27. AI/ML 심화 계보
⭐⭐⭐ 반드시 알아야 할 핵심
컴퓨터 비전 모델 발전
퍼셉트론 (1957) - 단층, 선형 분류 ↓ MLP (Multi-Layer Perceptron) - 다층, 비선형 ↓ CNN: LeNet (1998) → AlexNet (2012) → VGG (2014) → ResNet (2015) ↓ EfficientNet (2019) - 복합 스케일링 ↓ ViT (Vision Transformer, 2020) - 패치 기반, Attention
NLP 모델 발전
RNN (1986) - 순환 구조, 기울기 소실 ↓ LSTM/GRU (1997/2014) - 장기 의존성, 게이트 메커니즘 ↓ Seq2Seq + Attention (2014) - 인코더-디코더, 기계번역 ↓ Transformer (2017) - Self-Attention, 병렬 처리 ↓ BERT (2018) - 양방향, 사전학습+미세조정 ↓ GPT-3 (2020) - 175B 파라미터, Few-shot ↓ ChatGPT (2022) - GPT-3.5 + RLHF, 대화형 AI ↓ GPT-4 (2023) - 멀티모달, MoE 추정 ↓ 멀티모달 LLM (2024~) - 텍스트+이미지+음성+영상 통합
생성 모델 발전
GAN (Generative Adversarial Network, 2014) ↓ StyleGAN (2018) - 스타일 기반 생성, 고해상도 얼굴 ↓ Diffusion Model (2020) - 노이즈 제거 기반, 안정적 학습 ↓ DALL-E / Stable Diffusion (2022) - Text-to-Image ↓ Sora (2024) - Text-to-Video, 물리 시뮬레이션
⭐⭐ 중요하게 알아야 할 것
강화학습 발전
Q-Learning (1989) - 테이블 기반, 이산 행동 ↓ DQN (2013, DeepMind) - 딥러닝 + Q-Learning, Atari ↓ A3C (2016) - 비동기, Actor-Critic ↓ PPO (2017) - 안정적 학습, 범용 ↓ RLHF (2022) - 인간 피드백 강화학습, ChatGPT 핵심 ↓ DPO (Direct Preference Optimization) - 보상 모델 없이 직접 최적화
AI 에이전트 발전
규칙 기반 (Rule-based) - if-then, 전문가 시스템 ↓ 단일 LLM Agent - 프롬프트 기반, 도구 사용 ↓ ReAct (2022) - Reasoning + Acting, 추론-행동 루프 ↓ 멀티에이전트 (2024~) - 역할 분담, 협업, AutoGen/CrewAI ↓ Agentic AI (2024~) - 자율 계획/실행, 복잡한 워크플로우
모델 경량화 발전
Pruning (가지치기) - 불필요한 가중치 제거 ↓ Quantization (INT8) - 부동소수점 → 정수, 추론 가속 ↓ Knowledge Distillation - 큰 모델 → 작은 모델 지식 전달 ↓ LoRA/QLoRA (2023) - 저랭크 적응, 효율적 미세조정 ↓ On-Device AI (2024~) - 엣지/모바일 디바이스 직접 추론
28. DevOps/인프라 심화 계보
⭐⭐⭐ 반드시 알아야 할 핵심
배포 자동화 발전
수동 배포 - FTP, SSH, 콘솔 ↓ 스크립트 자동화 - Shell, Makefile ↓ CI/CD (Jenkins, 2011~) - 자동 빌드/테스트/배포 ↓ GitOps (ArgoCD/Flux, 2017~) - Git 중심, 선언적, 자동 동기화
IaC (Infrastructure as Code) 발전
쉘 스크립트 - 절차적, 멱등성 없음 ↓ Ansible (2012) - YAML, 에이전트리스, SSH ↓ Terraform (2014) - HCL, 멀티클라우드, State 관리 ↓ Pulumi (2018) - 일반 프로그래밍 언어 (Python/TypeScript) ↓ Crossplane (2018~) - K8s CRD 기반, 인프라를 K8s 리소스로 관리
⭐⭐ 중요하게 알아야 할 것
모니터링 도구 발전
Nagios (1999) - 전통 모니터링, 플러그인 기반 ↓ Zabbix (2001) - 에이전트 기반, 임계값 알림 ↓ Prometheus + Grafana (2012~) - Pull 기반, PromQL, 시계열 메트릭 ↓ OpenTelemetry (2019~) - 통합 Observability, 벤더 중립 표준
로깅 도구 발전
syslog (1980s) - 전통 시스템 로그 ↓ ELK Stack (Elasticsearch + Logstash + Kibana, 2010~) - 중앙 집계, 검색 ↓ Loki (2018, Grafana) - 경량, 로그 라벨 인덱싱, K8s 네이티브 ↓ 통합 Observability 플랫폼 - Metrics + Logs + Traces 통합 분석