Mi respuesta será políticamente incorrecta. Sin embargo, en realidad soy el fundador de una startup y mi trabajo es contratar a los mejores programadores.
¿Cómo sé qué personas serán buenos programadores o pueden ser buenos programadores?
1 palabra: IQ.
IQ es para programar como la altura es para jugadores de baloncesto.
Pondría las habilidades matemáticas como otro indicador más políticamente correcto. Mis profesores de informática me dijeron que hay un criterio que predice correctamente quién tendrá éxito en los cursos de programación. Puntajes de matemáticas en la escuela secundaria. Esos son efectivamente IQ de todos modos.
Esto puede ser una sorpresa. Se nos dice que programar es un trabajo de grado universitario. Adivina qué, no me importa el grado. Solo me importan 3 cosas.
- Habilidades de programación (que se pueden probar).
- Aptitud.
- El sentido común (no muy bajo) de las habilidades de las personas.
Lamentablemente, el coeficiente intelectual solo mide una cosa. Entonces hago algunas pruebas.
Le hago preguntas a la gente. Pregunta simple que espero que el niño de la escuela primaria pueda responder.
Hago preguntas como:
- ¿Cuál es la distancia entre la manecilla del reloj corta y larga a las 7:35
- Si voy de Yakarta a Semarang y quiero mantener una velocidad de 60 km / hora. Luego, en las primeras 2 horas conduzco 100 km / hora. ¿Qué tan rápido debo ir para el resto del viaje para que mi velocidad PROMEDIO sea de 60 km / hora?
Si nos fijamos bien, esas preguntas no requieren creatividad en absoluto. Solo sentido común. Cualquier niño de primaria con coeficiente intelectual puede responder eso.
La mayoría de los graduados universitarios no pueden. Ahora imagina si alguien no puede responder eso. ¿Puede él programar? Piénsalo. ¿Con qué frecuencia tendrá que especificar qué debe hacer?
También puede hacer preguntas como Microsoft que requieren creatividad. Puede hacer preguntas sobre cómo pesar 8 bolas en una balanza para saber cuál es la más pesada. El problema con tales preguntas es que involucra suerte. Sin embargo, algunos son bastante fáciles, debería ser un requisito mínimo.
Conseguir un programador increíble puede mejorar la moral de otros programadores. Obtener programadores de una ley puede bajar la moral de todos los demás.
Después de que las personas puedan responder preguntas como esa, lo cual es muy fácil, les haría escribir un código de Google Jam.
Los buenos programadores pueden resolver el código de Google Jam y pueden predecir qué problemas son más fáciles.