개발자 CS 지식백과
개발자 기술 면접에서 반복해서 나오는 전공 지식을 주제별 문서 172편으로 정리했습니다. 자료구조와 알고리즘, 운영체제, 네트워크, 데이터베이스 같은 컴퓨터 과학(CS) 기초부터 디자인 패턴, 언어별 동작 원리, 웹과 인프라까지 한 곳에서 읽을 수 있고, 모든 문서는 무료입니다.
데브핏(DevFit)은 Dozer Labs가 만드는 한국어 기술 면접 준비 서비스입니다. 여기서 개념을 정리했다면, 다음 단계는 겨냥한 채용공고 1건과 본인의 깃허브(GitHub) 커밋으로 «내 코드에서 나올 질문»을 만들어 보는 것입니다.
최종 업데이트 2026.09.17문서 작성 원칙과 출처
개발자 기술면접 질문 리스트
문서 172편의 «면접에서 이렇게 물어본다» 절을 한 페이지에 모았어요. 질문마다 답이 있는 문서로 이어져요.
전체 질문 보기 →- 이분 탐색 (Binary Search)
- 비트마스크 (Bitmask)
- DFS와 BFS (Depth First Search, Breadth First Search)
- 다익스트라 알고리즘 (Dijkstra's Algorithm)
- 동적 계획법 (Dynamic Programming)
- 최대공약수와 최소공배수 (GCD, LCM)
- 해시 테이블 구현 (Hash Table Implementation)
- 힙 정렬 (Heap Sort)
- 최소 공통 조상 (LCA, Lowest Common Ancestor)
- 최장 증가 부분 수열 (LIS, Longest Increasing Subsequence)
- 병합 정렬 (Merge Sort)
- 순열과 조합 구현 (Permutation and Combination)
- 퀵 정렬 (Quick Sort)
- 코딩테스트 최적화 기법 (Optimization Techniques)
- 계수 정렬 (Counting Sort)
- 기수 정렬 (Radix Sort)
- CPU 스케줄링 (CPU Scheduling)
- 교착 상태 (Deadlock)
- 파일 시스템 (File System)
- 인터럽트 (Interrupt)
- 프로세스 간 통신 (IPC, Inter Process Communication)
- 메인 메모리와 메모리 관리 (Main Memory)
- 운영체제란 무엇인가 (Operating System)
- 시스템 콜과 fork, exec, wait (System Call)
- 페이지 교체 알고리즘 (Page Replacement Algorithm)
- 페이징과 세그먼테이션 (Paging and Segmentation)
- PCB와 컨텍스트 스위칭 (Context Switching)
- 프로세스의 주소 공간 (Address Space)
- 프로세스 관리와 상태 전이 (Process Management)
- 프로세스와 스레드 (Process vs Thread)
- 경쟁 상태 (Race Condition)
- 세마포어와 뮤텍스 (Semaphore, Mutex)
- I/O 모델: 블로킹, 논블로킹, I/O 멀티플렉싱 (I/O Models)
- CORS (Cross-Origin Resource Sharing)
- DNS (Domain Name System)
- HTTP와 HTTPS (HTTP and HTTPS)
- 로드 밸런싱 (Load Balancing)
- OSI 7계층 (OSI 7 Layers)
- 대칭키와 공개키 암호화 (Symmetric Key and Public Key Cryptography)
- 동기/비동기와 블로킹/논블로킹 (Sync/Async and Blocking/Non-blocking)
- TCP 3-way와 4-way 핸드셰이크 (TCP 3-way and 4-way Handshake)
- TCP 흐름 제어와 혼잡 제어 (TCP Flow Control and Congestion Control)
- TLS 핸드셰이크 (TLS Handshake)
- UDP (User Datagram Protocol)
- 이상 현상 (Anomaly)
- 데이터베이스 커넥션 풀 (Database Connection Pool)
- 인덱스 (Index)
- 데이터베이스 레플리케이션 (Database Replication)
- 데이터베이스 키 (Key)의 종류
- 정규화 (Normalization)
- 레디스 (Redis)
- 샤딩과 파티셔닝 (Sharding vs Partitioning)
- SQL 인젝션 (SQL Injection)
- SQL 조인 (JOIN)의 종류
- SQL과 NoSQL의 차이
- 저장 프로시저 (Stored Procedure)
- 트랜잭션 (Transaction)과 ACID
- 트랜잭션 격리 수준 (Transaction Isolation Level)
- 어댑터 패턴 (Adapter Pattern)
- 어댑터 패턴 Java 구현 (Adapter Pattern in Java)
- 컴포지트 패턴 (Composite Pattern)
- 디자인 패턴 개요 (GoF Design Patterns)
- 팩토리 메서드 패턴 (Factory Method Pattern)
- 옵저버 패턴 (Observer Pattern)
- 싱글톤 패턴 (Singleton Pattern)
- SOLID 원칙 (SOLID Principles)
- 전략 패턴 (Strategy Pattern)
- 템플릿 메서드 패턴 (Template Method Pattern)
- 템플릿 메서드 패턴 Java 구현 (Template Method in Java)
- 오토 박싱과 오토 언박싱 (Auto Boxing and Unboxing)
- Call by Value와 Call by Reference
- 캐스팅 (Casting), 업캐스팅과 다운캐스팅
- 자바 컴파일 과정 (Java Compile Process)
- 컴포지션과 상속 (Composition vs Inheritance)
- 문자열 인터닝 (String Interning)
- 고유 락 (Intrinsic Lock)과 synchronized
- Java 8 핵심 정리
- Java 주요 버전별 변화 (9~21)
- 레코드 (Record)
- 직렬화 (Serialization)
- 스트림 API (Stream API)
- String, StringBuilder, StringBuffer 차이
- 자바의 스레드 (Thread)
- wait, notify, notifyAll
- 자바 가상 머신 (JVM)
웹18편
클러스터 전체 보기- 웹 인증 방식 총정리 (Authentication)
- 쿠키와 세션 (Cookie, Session)
- CSR과 SSR (Client Side Rendering, Server Side Rendering)
- CSRF와 XSS (Cross Site Request Forgery, Cross Site Scripting)
- 브라우저 동작 원리 (Browser Rendering)
- HTTP 요청 메서드 (HTTP Request Method)
- HTTP 상태 코드 (HTTP Status Code)
- JWT (JSON Web Token)
- 로깅 레벨 (Logging Level)
- 네이티브 앱, 웹 앱, 하이브리드 앱 (Native, Web, Hybrid App)
- 넉스트 (Nuxt.js)
- OAuth 2.0
- PWA (Progressive Web App)
- UI와 UX (User Interface, User Experience)
- Vue.js와 React의 차이
- REST API
- 웹 서버와 WAS의 차이 (Web Server, Web Application Server)
- 웹소켓 (WebSocket)
개념 다음은 내 코드입니다
채용공고 URL을 붙여 넣고 레포지토리를 연결하면, 내가 쓴 커밋에서 예상 질문과 어필 포인트를 만듭니다. 하루 10회까지 무료입니다. 합불 판정이나 지원자 랭킹은 만들지 않고, 최종 판단은 사람이 합니다.
공고 넣고 시작하기