¿Qué tan efectivos son los desafíos de programación en el proceso de reclutamiento? [cerrado]

14

Creo que nuestra empresa puede crear desafíos diseñados para encontrar candidatos para ingenieros de software que sean:

  • Bueno para resolver problemas, no para sorprender a los reclutadores.
  • Es más probable que tenga miedo de acercarse a nosotros en una feria de carreras.
  • Es más probable que se subutilicen en su trabajo de programación actual, pero son demasiado introvertidos para hacer algo al respecto.

Para ver un ejemplo, vea este artículo que trata sobre Facebook ocultando una dirección de correo electrónico en una imagen usando Piet .

Simplemente no puedo encontrar ningún estudio o datos concretos sobre si esto realmente funciona o no.

JoeB
fuente
Estoy en desacuerdo. No es inusual tener títulos de dos líneas en los sitios web de SE, y este título específico es muy claro como está. Acortarlo puede hacerlo más confuso.
Arseni Mourzenko
1
No me puedo imaginar un estudio serio. ¿Cómo decide si los que son contratados después de tal desafío son mejores que los que hubieran sido contratados de otra manera, o viceversa? Los programadores difieren, su educación cambia mucho a lo largo de las décadas, los reclutadores cambian, los desafíos cambian, un sistema de puntuación utilizable es apenas imaginable.
usuario desconocido
1
Hola Joe: las solicitudes de estudios tienden a ser deficientes aquí: nuestra experiencia no está en la recuperación de información. Si esto se expresó como, "¿Qué tan efectivos son los desafíos de programación en el proceso de reclutamiento?", Probablemente sería mucho mejor.
1
@mattnz: No veo de dónde viene tu conclusión. Puede realizar pruebas en animales con humo de tabaco con ratones. Puede medir la velocidad de reacción en un simulador después de que las personas bebieron un poco de alcohol. ¿Cómo podemos transferir estos métodos a la contratación de programadores?
usuario desconocido
3
@mattnz, el número de muertes por cada 10,000 personas durante un período de tiempo específico, ya sea por cáncer de pulmón o por accidentes de tránsito, es una cantidad (más o menos) objetivamente medible. La bondad de un desarrollador, o el éxito de un proyecto SW, ni siquiera son términos bien definidos.
Péter Török

Respuestas:

7

Como cualquier herramienta, pueden ser extremadamente útiles o extremadamente peligrosos. Un taladro eléctrico te hará la vida mucho más fácil, hasta que taladres por la parte superior de tu mano y aterrices en la sala de emergencias. Lo mismo es cierto con los desafíos de programación en el reclutamiento.

Lo bueno : esta puede ser una forma efectiva de detectar a alguien que, en el papel, podría no ser tan convincente como programador. El que tiene un título en algo que tiene muy poco que ver con lo que la gente normalmente considera campos relacionados con la "programación": biología, ciencias políticas, historia del arte ...

Si superan tus desafíos, entonces genial. Aprendieron programación, de alguna manera, y aparentemente está atascado. Si se estancan, su aplicación realmente puede ser algo que se deslizó por RRHH.

Lo malo : un desafío de programación mal escrito no evalúa realmente la habilidad de programación . Prueba la resolución de rompecabezas a través de la habilidad de programación . El problema es que la segunda es una pregunta de dos variables: ¿eres bueno para resolver acertijos y puedes resolverlo mediante código? Es posible tener un programador perfectamente talentoso que falla completamente en la parte de resolución de rompecabezas.

La mayoría de los desafíos de programación que he visto también fallan en la detección de personas cercanas a lo que quieres, dependiendo de cómo esté escrito.


Hay maneras de mitigar ambos. Para este último, consideraría aceptar un "crédito parcial" en forma de soluciones que no parecen llegar a ese punto, "Así es como resolvería esto ...", etc., si realmente está buscando un problema solucionadores. Después de todo, muy pocas personas codifican por sí solas, y si su respuesta hubiera sido correcta si hubieran podido preguntarle a un colega senior "Hola Jim, ¿conoces una buena manera de implementar X?", Puede ser alguien a quien quieras Tu equipo.

Lo primero es algo más difícil, porque la carga de eso recae sobre ti. Elige acertijos / problemas / desafíos que importen. Si nadie en su grupo se ha topado con algo que se parezca remotamente al problema del vendedor ambulante en su trabajo, no haga un giro inteligente en el vendedor que viaja con el desafío que se le presenta. De esa manera, si están fallando en el aspecto de resolución de problemas de "resolver el problema y codificarlo", al menos están fallando en algo que realmente surgirá, en lugar de un poco de inteligencia arbitraria que su equipo escuchó durante el almuerzo.

Fomite
fuente
+1. Crear un buen desafío de programación es un verdadero desafío para el reclutador.
Simon Bergot
6

Muy efectivo.

... siempre y cuando su proceso de reclutamiento no solo contenga desafíos de programación. Mientras que traste y odio hacer la evaluación técnica de cualquier entrevista, se hace actuar como un sencillo medidor para filtrar los idiotas. Y filtrar a los idiotas es el quid del proceso de reclutamiento, por lo que puede dedicar más tiempo a aquellos que son aptos para el papel.

Al entrevistar, considero muy importante ver lo que la gente dice bajo presión. Si están inclinados a escupir un montón de basura descarada, es fácilmente identificable y sabré que esta persona no vale mi tiempo.

Es más probable que tenga miedo de acercarse a nosotros en una feria de carreras.

Esto no es algo malo. Si su candidato potencial no está dispuesto a apostar que vale la pena ser empleado allí, ¿realmente quiere reclutarlo de todos modos?

JK
fuente
1
Puede haber otras razones por las cuales alguien tendría miedo de acercarse a ellos ... Por ejemplo, a algunas personas les resulta difícil / aterrador intentar vender, o incluso simplemente presentarse, ellos mismos. Los sentimientos se interponen en el camino. Eso no significa que no serían brillantes y / o valiosos una vez que pasen esa fase inicial de contacto.
Supr
0

Supongo que quiere que alguien trabaje como parte de un equipo; como tal, el mejor programador es la persona que trabaja mejor con los miembros del equipo existentes. Desea reunir a un grupo de personas que puedan comunicarse efectivamente entre sí, que realmente se lleven bien entre sí (no tienen que ser amigos, pero necesitan una buena relación y respeto), que estén dispuestos a estar de acuerdo y utilizan estándares de desarrollo comunes (código y proceso), que están dispuestos a ayudar a sus universidades cuando se enfrentan a un nuevo problema o tienen un bloqueo mental (teoría de los cuatro ojos). También necesita encontrar una combinación de tipos de personalidad, por lo que si tiene un equipo de introvertidos que rara vez habla, entonces traer un miembro más hablador puede mejorar la dinámica del equipo, lo que hará que el equipo sea más productivo. Por otra parte,

Después de que una persona encaje en esa mezcla, considere la habilidad / habilidad técnica. Estos también necesitan complementarse. Cada uno tiene diferentes áreas en las que son fuertes, otras en las que están bien y algunas no tienen idea. Por lo tanto, debe obtener una combinación de fortalezas relevantes para el proyecto en cuestión. Recuerde que un codificador intermedio que trabaja bien con un buen codificador tendrá el nivel de su trabajo elevado por la persona más fuerte. El eslabón débil en la cadena son las relaciones, no las habilidades (siempre que la habilidad esté en el equipo)

Buena suerte en armar eso.

adam f
fuente