¿Los entrevistadores lo juzgan en función del idioma que elige para un desafío de código?

Acabo de recibir un desafío de código de una empresa a la que solicité.

El desafío del código le brinda la opción de elegir entre una amplia selección de idiomas. Sé que Python sería el más fácil, pero me pregunto si debería elegir C++ u otro idioma para que no sea obvio que elijo el idioma "más fácil" de la lista. Porque puedo pensar en muchas preguntas que serían MUCHO más fáciles en Python.

¿Los entrevistadores realmente toman ese tipo de cosas en consideración? ¿O estoy pensando demasiado en esto? ¿Qué debo tener en cuenta al decidir qué herramienta usar para un ejercicio de entrevista como este?

Creo que sería muy, muy extraño dar una lista de idiomas, pero luego marcar en secreto por usar algunos de ellos. Los entrevistadores generalmente no intentan engañar a los solicitantes. Elegir un idioma solo porque es más difícil también va en contra del sentido común. Nunca harías eso en el desarrollo profesional. Realmente dudo que tengan ese tipo de expectativa para una entrevista.
¿Cuál es el idioma principal que usaría en este puesto? Si Python es él o uno de ellos, entonces tiene mucho sentido.
Definitivamente lo hacen, según la experiencia personal. En el pasado, he usado PHP5 y Ruby con una recepción tibia. Un entrevistador hizo un comentario después, preguntándose por qué usé PHP. Desde entonces, ya no usaré esos dos, y optaré por Python o el idioma de back-end más popular de la hora (el que sea en ese momento).
@Kai, la compañía no desarrolló el sitio web en el que se encuentra el desafío, por lo que no sé si la lista fue una cuestión de elegir algunos idiomas predeterminados o si ellos mismos personalizaron la lista.
@Kai Después de volver a leer la descripción del trabajo, parece ser una lista personalizada, así que no importa. Lo tendré en cuenta cuando acepte el reto.
@IDrinkandIKnowThings No enumeraron un idioma principal, pero eso es algo que podría preguntarle al reclutador.
En respuesta a los votos cerrados, diría que si hubiera preguntado QUÉ idioma elegir, estaría basado en la opinión, pero Python y C ++ fueron solo ejemplos en la pregunta real que fue "¿Me importan/juzgan los entrevistadores?" que no creo que sea una pregunta basada en una opinión.
Muchas veces el lenguaje es algo "irrelevante" porque la resolución de problemas es generalmente la misma en todos ellos. Es un enfoque de metodología que es más interesante que un problema de sintaxis.
@StarSweeper Voté para cerrar porque la respuesta es "algunos sí, otros no, pero no podemos decirle cómo o cuánto le importa a una persona determinada". La apuesta más segura es elegir un idioma con el que se sienta lo suficientemente cómodo como para no tener problemas o estropear la sintaxis y ese es uno que usará principalmente en el trabajo (o es similar a uno) (cuando no se superponen, es una pregunta más difícil, pero no una que podamos responder). Descubrí que, por lo general, es bastante obvio a partir de una especificación de trabajo cuando buscan un experto en algún idioma en lugar de alguien que simplemente es bueno en programación en general.
Necesitas más información. En el mundo real, se deben considerar cosas como el rendimiento, el tiempo de desarrollo, el potencial para manejar el cambio, el riesgo del departamento técnico, pero generalmente tiene una mejor comprensión de un proyecto que no sea solo para resolver una tarea aislada.
Utilice el lenguaje adecuado para la tarea.

Respuestas (3)

Sí, lo tienen en cuenta, pero no hay forma de que usted sepa cómo lo consideran.

Sé que no es la respuesta que querías, pero es la verdad. La única tranquilidad que puedo ofrecer es que a la gente no le gusta ver fracasar a otras personas. Así que dudo mucho que este sea un juego de ruleta rusa. Cualquier idioma debe ser igualmente recibido.

Dijiste que Python es "más fácil", pero también podrías haber dicho una de estas muchas comparaciones subjetivas.

  • un lenguaje dinámico frente a un lenguaje escrito
  • un idioma lento versus un idioma rápido
  • un lenguaje fácil de depurar versus uno difícil
  • ¿Un lenguaje de código abierto frente a un estándar ANSI?

Estás comparando manzanas y naranjas aquí.

Saber qué idioma consideran la elección correcta es tan subjetivo como preguntar si Python es mejor que C++. La respuesta depende de a quién le preguntes.

Es tu elección personal, y quieren que elijas uno. La clave aquí es que es una oportunidad para decirles con quién preferiría trabajar cuando comience en su nuevo trabajo. Por lo tanto, se trata de elegir uno con el que pueda completar con éxito el desafío, pero también elegir uno que le guste usar.

Así que elija el idioma que le brinde la mayor satisfacción y también complete el desafío.

Puede elegir el incorrecto, o tal vez no haya uno incorrecto. El punto aquí es ser fiel a ti mismo acerca de lo que preferirías. Eso es todo sobre lo que tienes control.

Además de esta respuesta porque es bastante completa: recientemente asumí un desafío de código y para mostrar mi apertura al cambio; Empecé a trabajar con framework (en este caso fue un desafío front-end) con el que tenía poca o ninguna experiencia, ya que me dijeron que esta empresa trabaja mucho con él (parece que todavía no). Después no estaban del todo contentos y me dejaban desarrollarme con lo que me siento más cómodo y ellos estaban absolutamente más contentos. Depende principalmente de su razonamiento detrás de esto, también puede preguntar qué quieren ver; código limpio? o la mejor opción de idioma?
Gran respuesta. Es posible que desee considerar poner en negrita las partes clave de su respuesta y condensar la cantidad de párrafos después de las viñetas.
Para una mayor exhaustividad, la elección correcta no se trata solo de a quién le preguntas, sino también de lo que vas a hacer con ese idioma.
Y, en la entrevista de seguimiento, prepárate para defender por qué elegiste un idioma. Asegúrate de tener más que decir al respecto que "parece más fácil hacerlo en este idioma". Sepa un par de cosas sobre por qué este problema en particular se resolvería bien con el lenguaje particular que eligió.
Después de leer esta respuesta y leer un poco más la descripción del trabajo, creo que esperaré hasta ver cuáles son las preguntas y tomaré la decisión en función del idioma que usaría para resolver el problema en la vida real. ¡Gracias por la ayuda!
Excelente respuesta Podría mejorarse con un énfasis aún mayor en el concepto de que los entrevistadores son los que deciden sobre lo que te juzgan. Podrían optar por juzgarte por algo tan frívolo como el color de tu camisa si así lo desean. Como candidato, siempre debe concentrarse en mantenerse fiel a sí mismo y a sus habilidades y asegurarse de transmitir cómo cree que podría hacer el trabajo para el que está siendo considerado.
Vale la pena recordar que parte de la habilidad de un buen desarrollador está en usar la herramienta adecuada para el trabajo. La mayoría de las veces, la herramienta más simple es la herramienta correcta.
@DanPuzey Siento que esa es la respuesta correcta a la pregunta.

Como entrevistador, me gustaría ver que

  • el idioma de su elección es adecuado para la tarea que se le asigna;
  • el idioma de su elección se utiliza correctamente;
  • puede explicar su elección indicando los pros y los contras del idioma seleccionado frente a otras opciones.

Por supuesto, la solución tiene que ser correcta y demostrar tu habilidad para resolver el problema.

Seleccionar el idioma "más fácil" podría indicar su capacidad para elegir las herramientas adecuadas para el trabajo; asegúrese de explicar su decisión.

Estoy de acuerdo. En realidad, un problema común con los desarrolladores jóvenes es que creen que algún lenguaje es "mejor" sin saber realmente por qué. Me uní a un proyecto en el que decidieron desarrollar una GUI en C++/Qt a pesar de que no había requisitos para el soporte multiplataforma, y ​​todo el proyecto era en realidad una extensión para AutoCAD que tiene un soporte .NET perfectamente bueno. Pero bueno, C++ es el lenguaje para programadores reales...

Ofrezca una solución impecable.

Muestre su capacidad para producir soluciones bien estructuradas, fáciles de leer, bien documentadas, mantenibles, robustas, eficientes, etc. para problemas de programación. Si yo fuera el entrevistador, le daría la solución a un desarrollador interno aleatorio y le preguntaría si entiende el código, y le preguntaría a un experto en el idioma elegido para juzgar su estilo de codificación.

Por lo tanto, elija un lenguaje que le permita hacer eso (y que tenga sentido con el desafío dado, así que, por ejemplo, no elija Javascript para algoritmos de alto rendimiento). No elija un idioma con el que no esté familiarizado; cometerá muchos errores de novato.

Y no te preocupes si cumples con el idioma preferido de la empresa: si quisieran contratar a un experto en exactamente un idioma, te lo habrían dicho.

No usaría Javascript como ejemplo de una mala elección para algoritmos de alto rendimiento; en realidad es bastante rápido en estos días. Es probable que obtenga resultados más rápidos con Javascript si lo sabe, luego con un lenguaje "más rápido" no lo sabe.
Buen punto de @Erik: prefiero ejecutar el algoritmo correcto en JS que el incorrecto en algo más rápido.
Por supuesto, con el algoritmo incorrecto puede desperdiciar fácilmente un factor de 1000, con el idioma incorrecto tal vez un factor de 20, así que con el algoritmo incorrecto en el idioma incorrecto desperdiciará un factor de 20000...
La única "solución impecable" es elegir no hacer el desafío. El código fuente es muy subjetivo y las personas que revisan el código quieren saber si el candidato encajará con su estilo y cultura de codificación. Simplemente se supone que el candidato completará el desafío. Lo que buscan son banderas rojas en su estilo que indiquen que no encajarán. Tal vez su código esté ofuscado o escriba comentarios con una actitud de superioridad. Tal vez él no escribe ningún comentario. Tal vez prefieran funcional y escribe OOP. Es muy subjetivo. Entonces puedes hacerlo perfectamente y aun así fallar.