Entendiendo Procesos de Entrevistas
La mayoría de los devs se pelean con procesos que existen y funcionan, y en lugar de entenderlos, y dominarlos terminan atentando contra sus propios intereses.
🏰 Mitos sobre entrevistas técnicas
Los programadores se forman un modelo de como funcionan entrevisats en base a sus experiencias.
Esa visión es unidimensional y no entiende el proceso en su totalidad, produciendo malos rendimientos en las entrevistas.
- “Podes ser bueno en las entrevistas técnicas y malo en el trabajo, no miden nada”
- “Las mejores entrevistas son una charla técnica”
- “Te entrevista gente que no sabe lo que haces (recruiters)”
- “Los ejercicios en vivo no son realistas, ponen stress y nerviosismo que no es real”
❤️🔥 Contratar es High-Risk
Contratar talento es una apuesta muy cara en términos nominales (el salario) y en términos de costo de oportunidad (no contratar a otro talento).
Una startup típica tiene 2 años de runway - si una contratación le hace perder 6 meses de tiempo calendario, perdió el 25% de su “lifetime”
Las startups se pueden salvar por contratar al talento correcto y morir por contratar al equivocado.
Una persona que se va de la empresa en menos de 1 año es un fracaso rotundo para la empresa. Una persona con 3+ años en la empresa es un éxito.
La probabilidad y el costo de equivocarse suben a medida que sube la compensation. Por eso los procesos de entrevista se tienen que volver exponencialmente mas difíciles.
Hay varias maneras de manejar el hiring risk. Una de esas es utilizar el llamado “contractor” (acepción de relación laboral, no legal) o agencia temporal.
Las empresas rechazarían el talento ofrecido si tuviesen que contratarlos como full-time. Pero en esta relación los acepta porque mitiga el riesgo de mala contratación. Si no funciona, lo despiden rápidamente. Y estiman no darles proyectos clave.
La falta de candidatos que pasen entrevistas técnicas en Argentina es una explicación de porque proliferaron tanto las consultoras y terciarizadoras. Simplemente no hay gente que pase las entrevistas, y hay que bajar la calidad de la relación laboral para acceder a posiciones en empresas americanas.
🟢 Buscando Señal
Por eso necesitan subir la confianza lo más que puedan, y para eso sirve entrevistar.
El proceso de entrevistas es la búsqueda de Señal - los indicadores de gran talento y de gran fit con la empresa. A mayor señal, más confianza tanto por sí o por no.
- Soft & Hard Skills - Inteligencia y conocimiento, tanto en lo técnico como lo emocional y profesional.
- Valor de largo plazo - Capacidad de crecer y proveer valor
- Capacidad de cumplir las expectativas - Match entre conocimiento y expectativas actuales
Las entrevistas lucen como exámenes que podes pasar o fallar, pero en realidad es la búsqueda de información. Entrevistar “bien” y dar señales negativas te deja afuera. Entrevistar “mal” y dar señales positivas te deja adentro.
Tipos de entrevista
Distintos tipos de entrevista y como ayudan a encontrar señal.
Hard Skills | Soft Skills | Valor de largo plazo | Match con la posición | |
---|---|---|---|---|
Behavioral | 🔴 Low | 🟢 High | 🟡 Medium | 🟢 High |
System Design | 🟡 Medium | 🟢 High | 🟡 Medium | 🟡 Medium |
Takehome | 🟡 Medium | 🔴 Low | 🔴 Low | 🟡 Medium |
Live Coding | 🟢 High | 🔴 Low | 🟢 High | 🔴 Low |
Work Test | 🟢 High | 🟢 High | 🟢 High | 🟢 High |
📊 Funnel de Entrevistas & Recruiters
En los procesos de entrevistas se filtran mas del 95% de los aplicantes. Del grupo de los filtrados la mayoría son un gran costo para la empresa.
Esto indica que se necesitan 20 candidatos por contratación, y en promedio va a tomar entre 1 y 3 entrevistas por candidato (hasta 50 entrevistas/meetings por hire).
Sería imposible cumplir este volumen para programadores, por eso siempre se necesitan recruiters.
El objetivo del recruiter es tratar de adivinar quienes van a pasar las próximas entrevistas, fijandose en otros candidatos dentro del mismo pipeline.
🇺🇸 El Proceso de entrevista Americano
En estados unidos hay millones de desarrolladores de software (opens in a new tab). Mientras que las empresas “top” del mercado contratan solamente a decenas de miles de programadores.
En estados unidos, el top 3% apunta a entrar a una FAANG, donde se pagan los salarios mas altos del mercado. Para cada posición de estas empresas, cientos de miles personas intentan entrar, y practican y estudian fuertemente para esos procesos. Para procesos de esta escala lo mas eficiente es el live coding estilo Leetcode. Problemas algorítmicos difíciles que requieren mucha práctica y estudio.
La dificultad de las entrevistas no es proporcional al seniority. Las FAANG son empleadores agresivos en las universidades, donde contratan a gente aún antes de graduarse. Pero de todas maneras se les pide que programen en vivo ejercicios estilo Leetcode.
Pasantes y recién graduados de estados unidos pueden pasar procesos de entrevistas de Live Coding. Que un Sr. 5YOE+ en Argentina no pase lo que pasa un pasante es una situación vergonzosa para nuestro mercado.
⚰️ El error fatal
Cuando un programador se “queja” de los procesos de código en vivo queda automaticamente descalificado frente a cientos de miles de desarrolladores, inclusive pasantes, en los ojos de los americanos.
Sin embargo, una gran parte de los programadores argentinos que trabajan para empresas americanas nunca hicieron o pasaron estos procesos.
Pero excepto con contadas excepciones, que no puedan pasar los mismos procesos que sus pares americanos los hacen ciudadanos de segunda dentro de la empresa.
Esto es evidenciado en la paga, y en el orden de prioridad al momento de hacer layoffs.
A veces los devs hablan de “aceptar” el juego que se juega, que son las reglas y no tiene sentido pelearlas, por más ridículos que sean los procesos.
Pero no es así. Los Live Coding son una herramienta muy buena de evaluación de talento. Se requieren muchos skills juntos para pasarlas: conocimiento técnico, tipeado rápido, experiencia codeando, grit (capacidad de hacer trabajo intenso de estudio). Interview Ready es evidencia del esfuerzo requerido para volverse bueno entrevistando.
👪 Las entrevistas son competencias, no exámenes
En los exámenes, uno aprueba o desaprueba si hace bien los ejercicios. Potencialmente todos pueden aprobar.
Pero en contratación hay posiciones limitadas y los aplicantes son muchos - no se puede contratar a todos.
Esto es cada vez mas cierto a medida uno progresa en la escala salarial, donde mas gente quiere conseguir ese puesto.
Los argentinos no están acostumbrados a competir en este aspecto, y usan tácticas de escuela con empleadores: “Lo hice bastante bien. Cumplí los requerimientos. Safa.”
Los americanos compiten fuertemente aún para entrar en la universidad. Tienen el chip de “ganar” no de “Safar”.
Para cobrar como americanos hay que ganarle a los americanos. Uno puede decidir no entrar a “competir” y el resultado va a ser quedar siempre abajo de ellos.
📐 El triángulo de Hierro de Recruiting
En una estrategia de recruiting uno puede considerar tres valores clave: Precio (la compensación del empleado), Velocidad (cuanto tiempo se tarda en contratar) y Calidad (que tan bueno es el talento)
Si uno quiere contratar mas rapido, tiene que bajar la vara o subir la compensación.
Si uno quiere pagar menos, tiene que ser paciente o bajar la vara.
Si uno quiere más calidad, tiene que pagar más o ser paciente.
Moverse en cualquier dirección afecta a las otras dos variables.
-
La Pandemia
Durante el boom de la pandemia, se quería contratar a una enorme cantidad de talento. Para hacerlo, fue necesario subir significativamente la compensación, y tambien bajar la vara.
Eso nos llevo al subsiguiente crash donde las empresas no podian justificar esos salarios, y los programadores hoy tienen grandes desafíos en el mercado donde las entrevistas se “endurecieron” mucho para las mismas expectativas salariales.
🪨 Entrevistas duras
Los programadores argentinos muchas veces consideran el proceso de entrevistas como un detrimento o una experiencia negativa, y terminan optando por empresas con entrevistas más fáciles.
Hay que hacer lo contrario. Cuando una empresa tiene la vara alta esta invirtiendo más en su proceso de contratación, y construyendo un equipo mas sólido.
La empresa que baja la vara es peligrosa para tu carrera. Tiene mas chances de quiebra, de layoff y de tener compañeros de trabajo de menor competitividad en el mercado.
🃏 Takeaways
- No se peleen con los procesos de entrevistas. Tienen razón de ser.
- Señal > Resolución de ejercicios. Podes hacer “todo bien” y ser filtrado, o algunas cosas mal y ser contratado.
- Los recruiters son necesarios para no abrumar a los developers. No son el filtro, es más, son la ayuda.
- Sin Live Coding vas a tener una carrera condicionada y acotada, siempre por debajo de los pares americanos.
- A medida que los salarios suben, sube la competencia.
- Busca empresas con entrevistas duras. ¡Mientras más difícil mejor!