- Spring Boot multi threading example
- [Spring Core & IoC]
- [Spring MVC]
- [Spring Boot 구조]
- [Spring Data JPA]
- [Spring Security]
- [Spring Test & MockMvc]
- (도서학습)엘라스틱서치를 활용한 벡터 검색 실무 가이드
- [OpenSearch 기본 개념 및 아키텍처]
- [인덱스 설계 및 매핑]
- [검색 쿼리 (Full-text search, Aggregation)]
- [성능 최적화 및 튜닝]
- [OpenSearch vs Elasticsearch]
- [멀티스레드와 멀티프로세스]
- [교착상태(deadlock)의 발생조건]
- [다익스트라의 은행원 알고리즘]
- [세마포어와 뮤텍스]
- [프로세스 스케줄러]
- [CPU 스케줄링 알고리즘]
- [페이지 교체 알고리즘]
- [페이징과 세그먼테이션, 그리도 단편화]
- [Big-endian, Little-endian]
- [캐시 메모리와 버퍼 메모리]
- [페이지 캐시와 버퍼 캐시]
- [Polling과 Interrupt]
- [Sync와 Async, Blocking과 Non-blocking]
- [Context Switching이 진행되는 단계]
- [데이터 무결성 (Data Integrity)]
- [데이터베이스 인덱스]
- [데이터베이스 정규화]
- [파티셔닝과 샤딩의 차이]
- [트랜잭션과 ACID]
- [DDL / DML / DCL / TCL]
- [DELETE / TRUNCATE / DROP]
- [Top 50 SQL Interview Questions]
- [TCP and UDP]
- [TCP's 3-way handshake, 4-way handshake]
- [HTTP 요청 메소드: GET과 POST의 차이]
- 웹 브라우저가 웹 페이지의 이미지를 보여주기까지의 과정
- Array와 Linked List 비교하기
- Stack과 Queue (Stack으로 Queue 구현하기)
- [Tree]
- [Binary Search Tree (BST)]
- AVL Tree, Heap, etc
- [Hash Table]
- Graph
- [Dijkstra algorithm]
- [Sorting]
- Recursion
- Dynamic Programming
-
Java
- 예외 처리
- [JVM, JIT Compiler, GC]
- [GC 정리]
- ZGC란
- [Java 메모리 누수]
- [On-heap과 Off-heap]
- [String 대신 StringBuffer, StringBuilder를 쓰는 이유]
- [인터페이스 vs 추상클래스]
- 싱글톤 패턴
- static 선언과 GC
- Primitive type, Reference type, Wrapper class
- [Java 기본 문법]
- [객체지향 프로그래밍(OOP)]
- [컬렉션 & 제네릭]
- [동시성 & 멀티스레드]
-
Python
- 동시성 프로그래밍
- GIL(Global Interpreter Lock)
- 데이터 클래스 (dataclasses)
객체지향프로그래밍, 디자인패턴, 아키텍처패턴, 개발방법론, 소프트웨어공학 등
- (도서학습)주니어 백엔드 개발자가 반드시 알아야 할 실무 지식
- (도서학습)컴퓨터 밑바닥의 비밀
- OOP
- 캡슐화, 상속, 메소드 오버라이딩, 메소드 오버로딩, 다형성
- [객체지향 5원칙: SOLID]
- 객체-관계 매핑 (Object Relational Mapping, ORM)
- Lambda architecture