---
type: synthesis
date: 2026-05-24
author: raphael
extends:
  - learning/2026-05-22-redis-lock-db-commit-mismatch.md
  - learning/2026-05-22-interview-simulation-and-deep-questions.md
  - learning/2026-05-23-cs-interview-day3-os-db.md
  - learning/2026-05-23-day3-workbook.md
  - learning/2026-05-24-cs-interview-day4-db-index-network.md
  - learning/2026-05-24-dropwizard-vs-spring-channeltalk.md
  - learning/2026-05-24-network-http2-websocket-tls.md
tags: [channeltalk, interview, cs-interview]
---

# [Synthesis] 채널톡 면접 준비 — CS 인터뷰 학습 전체

<div class="tldr-box"><strong>TL;DR</strong> — 채널톡 1차 인터뷰(2026-05-26) 대비 CS 학습 5일 전체 요약. 동시성/락(사전 출제 패턴) > DB(인덱스·MVCC) > 네트워크(HTTP/WebSocket/TLS) 순 중요도. 답변 약점 패턴 4종(narrative 재현·강점 평가절하·수동 마무리·flattery) 지속 점검 필요.</div>

---

## 공통 메시지

채널톡 사전 인터뷰 출제(환형 큐 + CS 4문제: 프로세스/스레드·낙관/비관 락·데드락)에서 **동시성·락이 핵심 출제 축**임이 확인됨. 본 인터뷰는 라이브 코딩 + CS 심층으로 구성되며, 이론 암기 깊이보다 **"실무에서 어떤 판단을 했는가"** 두 축(왜 + 경험)이 평가 기준.

채널톡 스택: Java/Dropwizard 코어 + Lambda/Go/Node.js 신규 서비스 (Strangler Fig 패턴). Spring이 아닌 Dropwizard → JPA/Spring 특화 질문보다 **범용 CS** 중심으로 출제.

---

## 소스 파일 요약

### [학습] Redis lock + DB 트랜잭션 정합성

> `learning/2026-05-22-redis-lock-db-commit-mismatch.md`

Redis lock과 DB 트랜잭션은 서로 다른 레이어. Lock 해제가 DB commit보다 빠르면 후속 트랜잭션이 롤백된 결과를 정상으로 가정해 정합성 파괴. 면접 정답: Lock은 DB commit 이후 해제, 또는 DB 비관적 락(`SELECT FOR UPDATE`) 사용.

### [학습] 면접 시뮬레이션 + 깊이 질문

> `learning/2026-05-22-interview-simulation-and-deep-questions.md`

답변 약점 패턴 4종: narrative 재현·강점 평가절하·수동 마무리·flattery 반복. 실 경험 끌어내는 깊이 질문 12개 + Raphael 튜터 운영 개선 5개.

### [학습] Day 3 — OS 동시성 + DB 트랜잭션/MVCC

> `learning/2026-05-23-cs-interview-day3-os-db.md`

OS 동시성 메커니즘 + DB 트랜잭션·격리수준(4단계)·MVCC(InnoDB undo log + 스냅샷 읽기). 채널톡 사전 출제 영역(낙관/비관 락·데드락·프로세스/스레드) 정면 대응.

### [학습] Day 3 — 워크북 v2

> `learning/2026-05-23-day3-workbook.md`

지식 인벤토리 매트릭스 기반 시스템 재설계. Narrative 50→10%, 라이브 코딩 50→40%, CS 딥다이브 NEW 50%. 사전 출제 패턴 기반 우선순위 재배치.

### [학습] Day 4 — DB 인덱스 + N+1 + 네트워크 기초

> `learning/2026-05-24-cs-interview-day4-db-index-network.md`

B-tree 인덱스 O(log n). Covering index (Using index). Composite index leftmost prefix. N+1 해결책 비교(Fetch Join·BatchSize·DTO). TCP 3-way handshake. HTTP Keep-Alive vs HTTP/2 기초.

### [학습] Dropwizard vs Spring — 채널톡 선택 배경

> `learning/2026-05-24-dropwizard-vs-spring-channeltalk.md`

2014~2016 창업기 도입, Spring Boot 안정화 이전. Airbnb·Uber 실전 검증. DI 자유도(Guice). 현재 레거시 전환 비용이 전환 동기 압도. 면접 답변: "도입 시점 합리적 + 현재 전환 비용".

### [학습] HTTP/2 심화 + WebSocket + TLS

> `learning/2026-05-24-network-http2-websocket-tls.md`

HTTP/1.1 TCP 연결당 순차 vs HTTP/2 스트림 병렬. gRPC 실질 이점 = Protobuf(3~5배) + 타입 계약, 멀티플렉싱은 부차적. WebSocket Upgrade(101) + heartbeat 필수. TLS 비대칭→대칭키 교환.

---

## 면접 당일 체크리스트

| 영역 | 핵심 한 줄 | 실무 연결 |
|------|-----------|----------|
| 락·동시성 | 낙관=버전 충돌 감지, 비관=DB FOR UPDATE | Redis lock + DB commit 순서 |
| 프로세스/스레드 | 프로세스=독립 메모리, 스레드=공유 힙 | 데드락 패턴 + HikariCP |
| DB 인덱스 | B-tree O(log n), leftmost prefix | N+1 Fetch Join vs BatchSize |
| MVCC/격리 | 스냅샷 읽기 vs 잠금 읽기 | Phantom Read + Gap Lock |
| HTTP/WebSocket | TCP 연결 모델, Upgrade, heartbeat | API Gateway idle timeout 경험 |
| Dropwizard | Jersey+Jetty+Jackson 고정, 창업기 도입 | Strangler Fig 채널톡 아키텍처 |

## 참고

- 소스 파일들은 각각 `extends: synthesis/2026-05-24-channeltalk-interview-prep.md` 포함
- 채널톡 면접: 2026-05-26 (화) 15:30~17:30, GS강남타워 8층
