
JAVA의 실행과정, JVM의 구조, Garbage Collector(GC), OOP 특징 4가지, 문자열 리터럴 방식, new 생성자 방식 차이점
String, StringBuilder, StringBuffer, final 키워드 (final, finally, finalize(), 자바 예외 및 처리 방법 3가지, equals()와 hashcode(), SOLID 개발 원칙 원시타입과 참조타입 비교

static, non-static vs static, Reflection, try-with-resources, 직렬화, 역직렬화, Stream, Lambda, Block/Non-block, Sync/Async, Java의 동시성 이슈

데이터베이스, SQL 실행 과정, Key, Join 연산, 정규화

Nested Loop Join, Merge Join, Hash Join 인덱스, Clustered Index와 Non-Clustered Index, DB Connection Pool, 트랜잭션, 트랜잭션 격리 수준

MySQL 스캔 종류, DB에서 사용되는 두 가지 Lock과 Deadlock, MySQL에 사용되는 스토리지 엔진 수준의 락, SQL Injection

데이터 무결성, NoSQL vs RDMBS, Redis, Partitioning, Sharding, Replication, Clustering

시스템 콜, 인터럽트, 프로세스, 프로세스의 주소공간

단기/중기/장기 스케줄러, 컨텍스트 스위칭, 스케줄링 알고리즘, 뮤텍스, 세마포어

DeadLock(4가지 조건, wait-free, lock-free), 프로그램 컴파일(링커, 로더, 컴파일언어, 인터프리터언어), IPC(IPC의 종류), Thread Safe, Race Condition

Thread Pool, Monitor, Fork-Join / 캐시 메모리 (L1, L2 캐시, 캐시의 지역성, 캐시 동기화, Mapping 방식), 메모리 계층 / 메모리 연속할당 방식 (first, best, worst), Thrashing

가상 메모리, 세그멘테이션, 페이징, 외부 단편화, 내부 단편화, TLB, MMU, 동기화 구현