Kacam.net

Ver el mundo

Preguntas de entrevista: una pregunta de manual, cinco capas hacia abajo

El enunciado es la frase exacta con la que abre un entrevistador: «¿qué diferencia hay entre proceso e hilo?», «TCP frente a UDP». La definición de manual no es la meta, es el punto de partida: primero graba la versión que ya tienes memorizada, luego te arrastra cinco capas hacia abajo y al final te hace repetirla en sesenta segundos.

Por ahora estas indicaciones solo existen en 简体中文.

Cómo se usa

Esta tanda interroga, no enseña. Es una entrevista simulada: quedarte sin respuesta es un desenlace normal, y no te va a cubrir ni a terminar la frase cuando te quedes a medias. Si quieres entender un tema en lugar de ensayar para una entrevista, ve a Sistemas informáticos, Bases de datos o Algoritmos: allí la postura es guiarte.

Cómo una pregunta de manual llena cuarenta minutos: la escalera de cinco capas

  • Capa 1 · Definición — qué es cada término y qué diferencias hay. Si no sabes: nunca lo estudiaste.
  • Capa 2 · Mecanismo — qué estructura y qué paso concreto producen esa diferencia. Si no sabes: memorizaste solo la conclusión.
  • Capa 3 · Números — ¿cuánta diferencia? Cuántos microsegundos, cuántas veces, cuántas E/S. Si no sabes: nunca lo has tocado.
  • Capa 4 · Elección — en un caso concreto, cuál eliges, a qué coste y cuándo esa elección es errónea. Si no sabes: no lo sabes aplicar.
  • Capa 5 · Límites — en qué condiciones deja de sostenerse todo lo que acabas de decir. Si no sabes: lo tienes todo memorizado, pero no lo entiendes.

El listón: la capa 4 es la que pasa una entrevista, la capa 5 es entenderlo de verdad, y lo que se queda en la capa 1 se anota como memorizado.

Seis escenas; la primera y la última son exclusivas de esta serie

  • En la primera escena no interrumpe, no comenta y no da pistas: sueltas de una vez la versión que ya tienes y la graba como línea base. Su silencio es deliberado; está escuchando, solo que todavía no te corrige.
  • Las cuatro escenas centrales bajan por la escalera; el campo de batalla es la tercera: mecanismo y números.
  • La última escena pone sesenta segundos en el reloj y te hace repetirla, en paralelo con tu versión de apertura, porque lo que hay que entregar en una entrevista no es «lo entiendo», sino una frase que puedas decir en voz alta.

Cómo empezar

  1. Elige una, ábrela y copia el prompt.
  2. Pégalo en una conversación nueva, no digas nada y espera a su primera pregunta.
  3. Después responde como en una entrevista: suelta de una vez tu versión memorizada. Da igual que salga mal; esa es la línea base con la que se compara al final.
  4. A partir de ahí empieza a presionar. Quedarte sin respuesta es un desenlace normal: esto no es material de estudio, es una entrevista simulada.

Cinco órdenes que puedes decir en cualquier momento

  • 跳过 pasa ya a la siguiente escena
  • 提示 dame una pista, no la respuesta
  • 直说吧 suelta la respuesta completa
  • 重讲 salta a la última escena, vuelve a grabar la versión de sesenta segundos y compárala con la de apertura
  • 复盘 salta al cierre y saca la ficha de repaso

Tres trampas

  • El texto que copias lleva la solución al final: no la leas antes. Una de sus columnas son las «huellas de recitado»: las frases exactas que con toda probabilidad vas a soltar. Si las lees, ya no queda nada que practicar.
  • No des adjetivos donde toca un número. «Mucho más rápido», «apenas tiene coste»: te frena en seco y te pide la cifra. Una conclusión sin orden de magnitud se anota como memorizada.
  • Los dos últimos grupos van atados a un lenguaje: el de Java si escribes Java, el de Go si escribes Go. No son traducciones el uno del otro —cada uno elige sus propias preguntas—, así que no hace falta hacer los dos.

¿Entrevista de backend la semana que viene? Proceso frente a hilo, TCP frente a UDP, por qué árboles B+, niveles de aislamiento, los tres modos de fallo de la caché e idempotencia: las seis más frecuentes y casi sin solapamiento. ¿Te han machacado en las entrevistas y quieres encontrar los huecos? Empieza por «de la URL a la página pintada»: deja al descubierto todos los puntos débiles de golpe y desde ahí eliges las siguientes.

Sistemas operativos y concurrencia

进程和线程的区别
「进程是资源分配的最小单位,线程是 CPU 调度的最小单位」—— 然后呢?
★★★☆☆ · unos 45 min
同步、异步、阻塞、非阻塞
「同步就是要等,异步就是不用等」—— 这句说完,问题才刚开始。
★★★★☆ · unos 40 min
死锁:怎么产生、怎么破、怎么查
四个条件背得滚瓜烂熟 —— 那你们代码里真的破了哪一条?
★★★☆☆ · unos 40 min
乐观锁和悲观锁
「乐观锁假设不会冲突」—— 那你说得出你们那张表的冲突率吗?
★★★☆☆ · unos 35 min
线程池的参数怎么定、满了会怎样
参数表说得出来的人很多,说得出这几个参数谁先谁后的很少。
★★★☆☆ · unos 40 min

Bases de datos

四种隔离级别、幻读到底是什么
「可重复读解决了幻读」—— 真的解决干净了吗?给个反例。
★★★★☆ · unos 40 min
MVCC 是怎么实现的
「多版本,读不加锁」—— 那「多版本」具体存在哪儿?
★★★★☆ · unos 40 min

Caché y mensajería

分布式锁怎么做才对
「setnx 加个过期时间就行」—— 然后它会一个一个坑问过来。
★★★★☆ · unos 40 min

Sistemas distribuidos y arquitectura

限流:三种算法和真实部署
三种算法都说得出来 —— 那你那个阈值是怎么定的?
★★★★☆ · unos 40 min

Java y la JVM

HashMap 的原理、它的线程不安全表现在哪
「数组 + 链表 + 红黑树,负载因子 0.75」—— 那容量为什么必须是 2 的幂?
★★★★☆ · unos 40 min
synchronized 和 Lock、锁升级四个状态
锁升级四个状态背得出来 —— 那每一级到底省了哪一笔开销?
★★★★☆ · unos 40 min

Go y su runtime

GMP 调度模型
「G 是协程、M 是线程、P 是处理器」—— 那为什么非要有 P?
★★★★☆ · unos 40 min
channel 的底层和 select
「无缓冲 channel 会阻塞」—— 它是一个长度为 0 的队列吗?
★★★★☆ · unos 40 min
defer、panic、recover
「defer 延迟执行、后进先出」—— 那它的参数是什么时候求值的?
★★★★☆ · unos 35 min
Estos prompts son de código abierto El texto se mantiene en el repositorio público kacam-net/hero-prompts. Si alguno no aprieta lo suficiente, o a su solución le falta una línea, ve y cámbialo: que se publique aquí es otra decisión, y la toma el catálogo de este lado.