El reclutador solicita un código de muestra

Después de una buena conversación telefónica con un reclutador de TI, me pidió un código C# (software) de muestra de un proyecto de mi empleador actual.

Aunque esta es una pregunta lógica, es imposible enviar el código de mi empleador actual. Como alternativa, creé una biblioteca de clases de muestra de C# que muestra mis habilidades de programación actuales. Me enfoqué en:

  • legibilidad
  • documentación
  • modularización/encapsulación

Después de revisar mi código de muestra, el reclutador solicitó más códigos/proyectos porque afirma que el código actual no es suficiente para emitir un juicio.

Estoy bastante seguro de que el código refleja mis habilidades actuales. La pregunta es: ¿debo enviar más código o detenerme con este reclutador?

Si desea cualquier trabajo que le ofrezca el reclutador, entonces debe pasar por sus aros. Si hay mucho trabajo alrededor, entonces sigue adelante.
No importa cuánto desee el trabajo que le ofrece el reclutador, no puede simplemente darles el código que escribió para su empleador actual. Si está de acuerdo con exponerse a cargos penales, existen opciones de empleo más lucrativas que escribir software para otra empresa.
No tiene derecho a regalar el código que le han pagado por escribir, su empleador obtiene los derechos intelectuales sobre eso. Esto suena increíblemente dudoso, con toda honestidad. Suena a espionaje industrial. Si realmente es un reclutador, y no lo entienden, entonces necesitan aprender una lección cuando votas con los pies. Aléjate de este reclutador.
¿Ha explicado que la confidencialidad y los derechos de propiedad intelectual le impiden mostrarles el código que escribió para un empleador anterior y parecen entenderlo?
¿Es este reclutador de primera o tercera parte?
Te venderé más código a razón de $1 por línea... ¿cuántas líneas más quieres?
Los reclutadores son una maldición para la humanidad. En el mejor de los casos, son un potente símbolo de las ineficiencias del mercado, pero la realidad es que, por lo general, introducen ineficiencias y confusión que benefician poco a cualquiera de las partes.
Suena como una señal de alerta de que el reclutador, no el gerente de contratación, está realizando una evaluación técnica no trivial (a menos que realmente piensen que infló su currículum). ¿Por qué no hablas con el gerente de contratación?
Entonces, ¿pidieron un código "de un proyecto de [su] empleador actual" y luego pidieron "más código/proyectos" cuando les dio una muestra diferente/personal? Suena como una forma inteligente de persuadirlo para que revele fragmentos interesantes del código de su empleador. ¿Estás seguro de que este reclutador no es en realidad un competidor que se dedica al espionaje corporativo?
@EthanKaminski en este caso están pidiendo más código en general. Si decido hacer esto, será un código que desarrollé en mi propio tiempo
Simplemente cree un proyecto de hobby git hub que use para mostrar o experimentar con características. Comparta esto con el reclutador, y siempre podrá usarlo en el futuro.
Esto podría ser potencialmente un reclutador falso contratado por su empresa para atraparlo infringiendo la ley por motivos relacionados con la seguridad o para deshacerse de usted.

Respuestas (10)

Uno de los umbrales para detenerse con un reclutador es si es honesto , ¿se puede confiar en él ?

Pregúntele al reclutador si entiende/sabe qué hay de malo en proporcionar el código de su empleador actual (ni siquiera mencione las implicaciones legales). Si son desdeñosos con su pregunta o no ven nada malo en ella, le recomendaría que deje de interactuar con ellos. Si no pueden ver nada malo en mirar el código de una empresa, entonces no se les puede confiar cosas más grandes e importantes, como encontrar un buen trabajo para usted.

En cuanto a su código de muestra, a menos que puedan explicar y articular lo que quieren, entonces parece que está tratando esencialmente con un cliente que no sabe lo que quiere. En ese momento, puede decidir si desea seguir expandiendo ciegamente su API de prueba y esperar que cumpla con lo que buscan.

Una buena manera de formular esta pregunta sería "¿Tendría algún problema al proporcionarle el código de mi empresa actual?" Déjalo abierto, pero no des la pista de que ya sabes que es completamente ilegal.
@Nelson No intentaría dar la impresión de que no tenía ni idea de algo así...
Hmm, esa no era la intención, pero si el reclutador conoció a alguien que no tenía ni idea, el reclutador debería abordar eso, no pedirle el código fuente de su empresa.
Obviamente, usted es un candidato para las vacantes de desarrollo de software. Esto significa que NO eres un candidato para apoyo legal o algo así. No debería ser un problema para el reclutador, si da la impresión de no estar seguro acerca de este tema. Siempre que no proporcione el código felizmente (pero pregunte, según lo previsto), un buen reclutador le informará los problemas legales con eso y simplemente continuará con el proceso regular. Si el reclutador hace algo más, no es digno de confianza. Entonces, básicamente, puedes asegurarte de cuán profesional es, simplemente jugando al desconocimiento.
@Sempie: lo que pasa es que sabemos que nos hacemos el inocente, pero el reclutador podría pensar que somos sinceros. Si tuviera un empleado que, al pedírsele el código de la empresa, le preguntara a la persona que le pidió el código si está bien o no en mi lugar, entonces lo consideraría un grave error de juicio de su parte, independientemente de ellos no siendo un abogado. Así que haciéndonos los tontos atraparemos a los malos reclutadores, pero les daremos una mala impresión a los buenos reclutadores. Entonces, necesitamos un plan para mitigar ese riesgo, en lugar de simplemente hacernos los tontos.
¿Por qué jugar y fingir que no sabes si puedes compartir el código? Solo tenga completamente claro que su empleador no le permite compartir el código y trabaje con el reclutador para pensar en una solución.
¿No es más posible que el reclutador pidiera un código de muestra/trabajo, y el OP tomó eso como el código de su empleador actual, cuando en realidad se referían a cualquier código de muestra que OP haya escrito recientemente? Quizás el OP no tiene código escrito fuera del trabajo (lo que no será un buen augurio para muchos trabajos que quieren ver algunos ejemplos de código).
@SnakeDoc, de hecho, no es el código de mi empleador actual, sino el código que hice en mi propio tiempo
@CitizenSP entonces no veo ningún problema en mostrárselo al reclutador. Eso es bastante estándar para los puestos de desarrollo. "Tú hablas por hablar, pero ¿puedes caminar por el camino?" tipo de cosa.
@SnakeDoc: bueno, el reclutador pidió un código de un proyecto del empleador actual, pero en realidad recibió un código personal y pareció aceptarlo. La pregunta es si seguir escribiendo más código personal para satisfacer las solicitudes de los reclutadores. El punto de Anketam en esta respuesta es que el reclutador es sospechoso debido a la solicitud original y esto debe abordarse antes de perder el tiempo con un reclutador dudoso. Claro, es posible que el autor de la pregunta haya malinterpretado por completo la solicitud original (en cuyo caso, la pregunta debe actualizarse para eliminar la información incorrecta).
@SteveJessop El punto que estaba diciendo es que quizás OP no entendió al reclutador. "¿Puedo ver un ejemplo de un proyecto actual?" podría interpretarse como un proyecto actual en la empresa OP ... no simplemente cualquier proyecto actual. Si el reclutador trata con personas de tecnología a menudo, sabría que las personas no pueden liberar bases de código confidenciales y propietarias en la naturaleza. Parece más probable que haya sido un malentendido.
@SnakeDoc: sí, pero luego el interrogador pareció estar de acuerdo con usted "de hecho, no es el código de mi empleador actual". Si realmente están de acuerdo con usted en que el reclutador ni siquiera pidió el código del empleador, entonces (a) la pregunta debe corregirse y (b) esta respuesta ya no es relevante. Sin embargo, si en realidad está diciendo que el interrogador debe verificar lo que el reclutador realmente dijo antes de continuar con esta investigación sobre su honestidad, ¡entonces ciertamente estoy de acuerdo! Problema común de SE, "¿creemos que la situación del interrogador puede ser realmente tan mala como piensa?" ;-)

Explique la situación al reclutador: dígale que no trabaja en ningún proyecto fuera de su empleo actual y, como tal, no tiene la propiedad de ningún código que pueda compartir sin infringir la ley de derechos de autor, los acuerdos de confidencialidad y la confianza de sus empleadores actuales. .

Pregúnteles si estarían dispuestos a hacerle una breve prueba técnica en forma de un problema trivial para resolver, cuyo código resultante demostrará sus habilidades en su nivel actual. La mayoría de los reclutadores deberían estar dispuestos a hacer esto si solicitan ejemplos de código.

En el futuro, encuentre algo en lo que quiera trabajar como proyecto personal y manténgalo en una cuenta de Github; de esa manera, tiene un conjunto de muestras listas para usar que puede compartir legalmente, y también le permite desarrollar en direcciones que su empleo podría no permitir (por ejemplo, otras tecnologías, metodologías, le da la libertad de pulir el código más allá del nivel que su empleador le permitirá, etc.).

No es necesario que su cuenta de Github sea pública, pero ayuda si desea ampliar su exposición entre los reclutadores: muestra que no tiene miedo de mostrar su código para que todos lo vean (lo que puede ser una molestia a veces, pero a menos que esté trabajando en algo que no quiere que el mundo sepa, los beneficios superan los problemas).

Una última cosa a tener en cuenta: asegúrese de que cualquier código que exponga de cualquier manera a los reclutadores o al público no incluya contraseñas, tokens de API o tokens de autenticación. Te sorprendería la frecuencia con la que estas cosas se filtran a través del control de código fuente...

No se trata necesariamente de querer que su código sea un "secreto". Mis proyectos paralelos son algunas pequeñas aplicaciones de Android que, si bien es un pasatiempo, trato de comercializar porque me gusta el dinero gratis. No tengo ningún deseo de hacerlos de código abierto.
@Davor Nunca dije "secreto", dije "no quieres que el mundo lo sepa" cuya intención en el momento en que escribí la publicación era incluir un código comercial. Ese es el tipo de base de código que no mostraría a los reclutadores de todos modos: el objetivo de mantener algunos repositorios públicos de GH es mostrar que tiene un código sobre el que no está actuando como guardián, por lo que no está seleccionando y eligiendo elija fragmentos de código que mostrar, pero adopte un buen código en bases de código completas que no tenga problemas con la gente que mira.
Además de esto: los escépticos que mencionan que un reclutador no sabrá C#, parecen olvidar que pueden estar cooperando con alguien. Y también si me pidieran que juzgara a alguien por su código, dudaría en hacerlo basándome en una pequeña pieza de trabajo perfeccionado.
@DennisJaheruddin Para eso es una entrevista técnica. Esto es una estafa, como lo demuestra el hecho de que podría enviar un código escrito por un amigo mío y no se darían cuenta. Este es un intento de obtener secretos de la empresa o consultoría gratuita. Sea como sea, ESTAFA.
@RichardU una prueba técnica no excluye una entrevista técnica: les doy a mis candidatos (en trabajos recientes he contratado a desarrolladores de software) pruebas técnicas, y si las pasan, se les invita a una entrevista técnica donde tenemos una discusión en profundidad en torno a su solución, por lo que no solo tienen que enviar un código no trivial, sino que también tienen que entenderlo. Hace algunas conversaciones interesantes.

De los reclutadores profesionales que conozco, los reclutadores generalmente no tienen reclamos de saber que es un escritor de C # "talentoso". Me parece una estafa o algo peor. No hay forma de que un reclutador tenga el tiempo y los conocimientos para hacer conjeturas tan informadas sobre el nivel exacto de experiencia.

¿O él o ella se especializa en C# antes de que llegaras? Y si es así, ¿por qué él o ella realmente necesita ver más código si fundamentalmente la persona tiene mucha experiencia leyendo código competente?

Estafa. Y estúpido. Preguntando por la codificación de la empresa... deberías denunciar a ese vagabundo antes de que robe las cosas de otras personas.

Estoy de acuerdo. Parece que el reclutador está tratando de obtener un código gratuito.
Podría ser, pero conozco a un reclutador que tiene ese conocimiento. Emplean programadores y los usan para ofrecer algunos servicios a empleados potenciales, uno de los cuales es decidir qué nivel de habilidad tiene alguien. Por supuesto que hacen esto porque conocen el valor de los buenos programadores para los empleadores.
¿Quizás el reclutador le preguntó al equipo de desarrollo qué pensaban y le dijeron que pidiera un código? Como desarrollador, sugerí pedir código, aquellos que desarrollan en su tiempo libre no tendrían problemas para compartir código y, de todos modos, generalmente son mejores desarrolladores.
Sin embargo, el código de la empresa. Imagina pedirle a un científico de Coca Cola involucrado en el proceso de creación que vea algunos de los trabajos de su empresa. Poco ético, si me preguntas.
Puede ser más que una estafa, puede ser espionaje industrial.

Cualquier reclutador debe saber que muchos desarrolladores de software excelentes solo han realizado trabajos que son propiedad de sus empleadores actuales o anteriores, y ese trabajo también suele mezclarse con el trabajo de muchas otras personas. Si no lo sabe, o lo ignora cuando se lo dices, busca otro reclutador.

Tuve un problema similar con el reclutador local. Literalmente, pidió desarrollar todo el proyecto como una DEMO y verificar que funciona: lo aloja por su cuenta y simplemente les muestra el enlace. Después de eso, dijo que era genial, y pidió que le enviaran la fuente COMPLETA en formato .zip. Y nunca nos habíamos visto antes, ni me dieron ningún detalle sobre el puesto de trabajo, sin mencionar el nivel de salario esperado, etc. Por lo tanto, toda la comunicación se realizó por teléfono y correo electrónico. Simplemente me negué a enviar el proyecto, con el argumento de que me encantaría mostrárselo, pero SÓLO después de que me invitaran a hablar en persona en las instalaciones de su empresa. Él / ellos nunca respondió de nuevo. Y estaba feliz ya que logré ver su SCUM. Pedir que se haga un proyecto completo con el código fuente es realmente malo y propenso al mal uso.

Nunca le daría ningún código a un reclutador. Ni siquiera hago evaluaciones técnicas con los reclutadores. ELLOS no son los que te van a contratar. La mayoría de ellos solo conocen "palabras de moda" y no distinguirían la buena programación de la mala. Es una completa pérdida de tiempo y hay MUCHOS reclutadores por ahí que no van a hacerte saltar a través de aros tontos.

Su recurso más valioso es su tiempo. Si lo desperdicias demostrándole a un reclutador que eres capaz, entonces tienes que dar la vuelta y pasar más tiempo demostrando lo mismo a la empresa real que realiza la contratación, todo el tiempo dedicado a complacer al reclutador es un desperdicio. Ahora imagina que no recibes la oferta de trabajo. Eso es mucho tiempo que has invertido.

Además, NUNCA debe proporcionar un código que sea propiedad de otra persona. Tal vez este chico/chica tiene conexiones con el competidor de su empresa actual y está suplantando el código.

Creo que has hecho MÁS que suficiente. Si no están satisfechos, busque un reclutador diferente.

No es necesariamente una estafa o un fraude que un reclutador pida muestras de código. Quieren algo para evaluarte. Podría ser algo que pidan con total inocencia. Sin embargo, es ilegal que les des un código que escribiste para otro empleador. Si no ven eso, diría: "Supongamos que estuviera solicitando un trabajo como trabajador automotriz. ¿Me pediría que le diera un automóvil que había construido para General Motors para que pudiera evaluar la calidad de mi ¿No crees que GM se opondría a eso?

Escribir un código de muestra solo para darles algo que ver me parece una solución razonable. ¿Pidieron más? ¿Cuánto les diste y qué pidieron exactamente? Si les diste una función de 10 líneas y dijeron: "Bueno, eso está bien, pero realmente necesitamos ver más que eso", creo que es bastante razonable. Si les das 20 páginas y quieren más, te pregunto qué quieren ver específicamente. Si dicen: "Necesitamos ver un ejemplo de una clase con subclases" o "... de una consulta SQL compleja" o algo así, está bien.

Si dicen que quieren ver un código que cumpla con algunos requisitos especificados por ellos, comenzaría a sospechar que se trata de una estafa. Como la última vez que estaba buscando trabajo, hace aproximadamente 5 años, vi un anuncio de una empresa que decía que querían que los solicitantes desarrollaran un sistema completo con tales y tales pantallas e informes, minuciosamente depurados y con documentación completa, para ellos para evaluar. Mis pensamientos fueron, (a) Esto suena como una estafa. Quieren un sistema que cumpla con estos requisitos y, en lugar de pagar por él, quieren que la gente se lo escriba gratis bajo la apariencia de una "solicitud de trabajo". Y (b) incluso si fue un intento honesto de evaluar a los solicitantes de empleo, desarrollando un sistema del tamaño y la complejidad que describieron, sí, era un sistema pequeño, pero todavía media docena de pantallas y una docena de informes, Seguramente sería una semana o más de trabajo, y escribir documentación de calidad sería al menos unos días más. De ninguna manera iba a dedicar 2 semanas de esfuerzo para solicitar un trabajo, ni siquiera para una entrevista, sino solo para enviar una solicitud. ¿Cuántos otros trabajos podría encontrar y aplicar en 2 semanas de esfuerzo?

Si alguien exige que infrinja la ley y/o viole los estándares éticos de rutina como parte de la solicitud de un trabajo con ellos, naturalmente me preguntaría qué esperarían de mí DESPUÉS de tener el trabajo. En serio, si tengo que violar la ley de derechos de autor y los acuerdos de confidencialidad para obtener el trabajo, una vez que esté allí, ¿me pedirán que defraude a los accionistas, engañe a los clientes y presente declaraciones de impuestos falsas? Si no lo pensaran bien, les explicaría el problema. Si dicen: "Oh, buen punto, no pensamos en eso. ¿Qué tal si hacemos X en su lugar?", Diría que está bien, tal vez realmente no vieron el problema. Pero si se ponen de rodillas y dicen: "Haz esto o no consigues el trabajo", yo diría: "Encantado de hablar contigo, adiós".

No le diga al reclutador que no puede dar el código de su empleador actual.

Simplemente envíe su código de muestra (no su código de empleador actual). Si el reclutador pregunta, diga que es del empleador actual.

Pueden pasar dos cosas.

1) El reclutador, como siempre, no sabe cómo verificar su código. Él o ella redirigirá su muestra a desarrolladores de clientes a quienes no les importa si su código es de su empleador actual o no.

2) Esto es una estafa y quieren su código de empleador. En este caso, se quejarán de que su código no se parece al negocio de su empleador.

En el caso de 2, puedes ir a divertirte y preguntarles "Oye, ¿cómo lo sabes?"

La conciencia aquí es que no debe darle a un reclutador el código de su empleador, pero parece haber mucha controversia en otras respuestas sobre cómo decirle 'no' a un reclutador, lo que merece más atención de la que puedo poner en los comentarios. La mejor respuesta a esta parte de la pregunta es decirle al reclutador que sabes que lo que está pidiendo sería ilegal y que no puedes bajo ninguna circunstancia cumplir con su solicitud.

La razón por la que debería hacer esto en lugar de hacerse el tonto o fingir código es de su empleador actual es que la pregunta en sí misma puede ser una prueba de SU ética y no al revés. La mejor forma en que un reclutador puede ver si un candidato respetará su información patentada es ver qué tan bien protege la información de la que ya es responsable.

Si está hablando con un estafador, detendrá la entrevista allí mismo sin hacerle perder más tiempo, o continuará con esa línea de interrogatorio como un vendedor de autos turbio que intenta hacer una cuota. Incluso pueden hacer amenazas como: "Bueno, no puedo considerarte para este puesto a menos que hagas esto". Si siguen la línea del cuestionamiento, no pierdas el tiempo aquí, no importa cuán desesperado estés por trabajar, no hay trabajo allí para ti, solo levántate y vete.

Si es un entrevistador legítimo, pasará a la siguiente pregunta.

El último factor posible a considerar es que están recopilando muestras de código en nombre del cliente, pero en realidad no es necesario que sea de su empleador actual. Aquí está el truco: es mucho más fácil comparar la calidad del código entre candidatos cuando todos están resolviendo el mismo problema. Esta es la razón por la cual los reclutadores más experimentados le dan un problema para resolver en lugar de pedirle un código arbitrario; por lo tanto, si un reclutador solicita una muestra de código arbitrario, señale este hecho y luego pídale que le diga el problema a resolver y esto evitará una situación en la que pueda seguir pidiendo más y más.

Además, dichos ejemplos de código nunca deben ser proyectos completos. Una solicitud de muestra típica no debería requerir más de ~100 líneas de código para completarse. En general, solo necesitan ver que su código es lógico, fácil de leer y que puede manejar correctamente cosas como la recursividad, el anidamiento y el manejo de errores. Todo lo demás que necesitan saber sobre su estilo de programación puede resolverse mediante preguntas de la entrevista.

Pedir más código es turbio. Pero no, como usted describió, tan turbio como para justificar alejarse en este punto.

Dado que están claramente interesados ​​en ver lo que puede producir, tal vez sea hora de discutir seriamente la posibilidad de contratarlo para que pueda aportar sus considerables habilidades para influir en sus proyectos.