세상을 보다
면접 속답: 한 문장짜리 단골 질문을 다섯 층 아래까지
문제는 면접관이 실제로 꺼내는 그 한 문장입니다 —— 「프로세스와 스레드의 차이」「TCP와 UDP의 차이」. 용어 설명은 끝이 아니라 시작입니다. 지금 외워 둔 답을 먼저 기록해 두고, 다섯 층 사다리를 따라 파고든 뒤, 마지막에 60초로 다시 말하게 합니다.
이 프롬프트 모음은 지금은 简体中文만 있습니다.
사용법
이 묶음은 가르치지 않고 몰아붙입니다. 모의 면접 그 자체라 답이 막히는 건 정상적인 결말이고, 대신 수습해 주지도, 말끝을 이어 주지도 않습니다. 면접 연습이 아니라 그 분야를 이해하고 싶다면 「컴퓨터 시스템」「데이터베이스」「알고리즘」으로 가세요. 그쪽은 이끌어 주는 자세입니다.
단골 질문 하나로 40분을 채우는 법: 다섯 층 사다리
- 1층 · 정의 —— 각 용어가 무엇이고 차이는 무엇인가. 못 답하면 외운 적이 없다는 뜻.
- 2층 · 메커니즘 —— 그 차이는 어떤 구조의 어느 단계에서 생기는가. 못 답하면 결론만 외웠다는 뜻.
- 3층 · 숫자 —— 얼마나 차이 나는가? 몇 마이크로초, 몇 배, I/O 몇 번. 못 답하면 직접 해 본 적이 없다는 뜻.
- 4층 · 선택 —— 구체적인 상황에서 무엇을 고르고, 대가는 무엇이며, 그 선택이 틀리는 때는 언제인가. 못 답하면 쓸 줄 모른다는 뜻.
- 5층 · 한계 —— 방금 한 설명이 성립하지 않는 경우는 언제인가. 못 답하면 빠짐없이 외웠어도 정말 이해한 건 아니라는 뜻.
기준선: 4층까지 가야 면접을 통과하는 수준, 5층까지 가야 진짜 아는 수준이며, 1층에서 멈춘 건 전부 외운 것으로 기록됩니다.
여섯 막, 그중 처음과 마지막은 이 시리즈만의 것
- 1막에서는 끊지도, 평하지도, 힌트를 주지도 않습니다. 지금 외운 답을 한 번에 끝까지 말하게 하고 그걸 기준판으로 기록합니다. 잠자코 있는 건 일부러 그러는 것이지, 안 듣고 있는 게 아닙니다.
- 가운데 네 막은 사다리를 따라 내려갑니다. 주 전장은 메커니즘과 숫자를 다루는 3막입니다.
- 마지막 막은 60초를 재고 다시 말하게 한 뒤 첫 판과 나란히 비교합니다 —— 면접에서 내놓아야 하는 건 「이해했다」가 아니라 그 자리에서 입 밖으로 낼 수 있는 한 토막의 말이니까요.
시작하는 법
- 하나 골라서 열고, 프롬프트를 복사하세요.
- 완전히 새 대화에 붙여 넣고, 아무 말 없이 첫 질문을 기다리세요.
- 그다음엔 면접처럼, 외워 둔 답을 한 번에 끝까지 말하세요. 형편없어도 괜찮습니다 —— 그게 마지막에 비교할 기준판입니다.
- 이후로는 계속 파고듭니다. 답이 막히는 건 정상적인 결말입니다. 학습 자료가 아니라 모의 면접이니까요.
도중에 언제든 외칠 수 있는 다섯 마디
跳过지금 바로 다음 막으로提示답 말고 힌트 하나만直说吧완전한 답을 그냥 말해 줘重讲마지막 막으로 건너뛰어 60초판을 다시 녹음하고 첫 판과 비교复盘바로 마무리로 가서 회고 카드 출력
함정 셋
- 복사해 간 본문 끝에는 정답 패가 붙어 있습니다. 먼저 읽지 마세요. 이 묶음의 패에는 「암송 지문」이라는 칸이 있는데, 당신이 반사적으로 내뱉을 바로 그 문장들이 적혀 있습니다 —— 읽으면 연습할 게 남지 않습니다.
- 숫자를 내놓아야 할 자리에 형용사를 내놓지 마세요. 「훨씬 빠르다」「부담이 거의 없다」 같은 말은 그 자리에서 붙잡혀 수치를 요구받습니다. 결론은 말해도 자릿수를 못 말하면 전부 외운 것으로 기록됩니다.
- 마지막 두 묶음은 언어에 묶여 있습니다. 자바를 쓰면 자바 묶음, Go를 쓰면 Go 묶음으로. 서로 번역판이 아니라 문제 선정도 다르니 둘 다 할 필요는 없습니다.
다음 주에 백엔드 면접이라면 프로세스와 스레드 → TCP와 UDP → 왜 B+ 트리인가 → 격리 수준 → 캐시가 무너지는 세 가지 → 멱등, 이 순서로. 출제 빈도가 가장 높고 서로 겹치지도 않습니다. 면접에서 실컷 깨져 빈틈을 메우고 싶다면 먼저 「URL 입력부터 화면이 뜰 때까지」를 —— 약한 부분을 가로로 전부 드러내 주니, 거기서 나온 방향으로 다음을 고르면 됩니다.
운영체제와 동시성
캐시와 메시징
자바와 JVM
Java 是值传递还是引用传递
「基本类型值传递、对象引用传递」—— 这是一个错误答案。
JVM 内存区域,一个对象的一生
区域图谁都会画 —— 那跟着一个对象走一遍呢?
GC 怎么判断垃圾、一次 Full GC 意味着什么
全系列最难的几道之一:你线上一次 Full GC 停多久、上次是什么触发的?
HashMap 的原理、它的线程不安全表现在哪
「数组 + 链表 + 红黑树,负载因子 0.75」—— 那容量为什么必须是 2 的幂?
OOM 和内存泄漏怎么定位
「dump 下来用工具看一下」—— 先说清,它报的是哪一种 OOM?
Go와 런타임
slice 和 map 的那些坑
「slice 是动态数组」—— 那把它传进函数改一下,外面看得见吗?
逃逸分析:这个变量在栈上还是堆上
「返回局部变量的指针就会逃逸」—— 那判据到底是什么?
Go 的 GC 和 STW 到底停多久
全系列最难的几道之一:「STW 很短」—— 短到多少,停在哪两处?