Cómo la función de la mediana revela el criterio de un candidato en una entrevista técnica

Fuentes: The humble median as a technical interview question

En su bitácora personal, Kris Shamloo comparte el tipo de preguntas que formula durante entrevistas técnicas a personas candidatas a puestos de programación. Rehúye los acertijos por considerarlos de escaso valor y, en su lugar, plantea ejercicios aparentemente sencillos pero con múltiples ángulos para explorar conceptos más profundos. Su pregunta recurrente es la implementación de una función que calcule la mediana de una lista de números. Shamloo muestra una implementación en Python de apenas una docena de líneas que sirve como hilo conductor para discutir cuatro cuestiones clave que un buen evaluador puede explorar a partir del mismo enunciado. La primera es la gestión del caso vacío: el código lanza una excepción ValueError, una decisión defensiva que obliga a la persona candidata a justificar su elección entre alternativas como devolver un valor centinela o propagar el error. La segunda aborda la diferencia entre sorted(numbers) y numbers.sort(): la primera crea una nueva lista respetando el principio de paso por referencia de Python, mientras que la segunda muta la lista original, con implicaciones para el llamador. La tercera observación es de carácter irónico: Shamloo señala que quienes obtienen el trabajo suelen ser quienes no dudan en importar dependencias innecesarias, en lugar de detenerse a razonar. Por último, la implementación calcula el índice medio con división entera y distingue entre longitud par e impar para devolver la media de los dos valores centrales o el elemento central. La entrada funciona como una pequeña guía para quienes entrevistan a desarrolladores en Python.