Veo que muchas empresas hacen preguntas a LeetCode para trabajos de ingeniería de software. (incluso solo para desarrollar el front-end del sitio web).
Esas preguntas pueden ser muy específicas y no algo que un ingeniero de software típico haría incluso en 15 o 20 años. Por ejemplo, podría ser, dadas las ranuras de 10000 x 10000 y los divisores de altura variable entre ellas, ahora descubra una región de 20 x 20 que pueda atrapar la mayor cantidad de agua de lluvia cuando llueve durante mucho tiempo.
Y puede haber 1500 preguntas diferentes en la base de datos de LeetCode.
Y el problema es que muchos programadores pueden escribir algún código que pueda encontrar la respuesta, pero el problema generalmente tiene algunos trucos en la propiedad del problema que, de alguna manera, puede hacerlo más rápido.
Y se hacían investigaciones para este tipo de problemas, a veces durante meses o años, como maestría o doctorado. tesis.
Pero la cuestión es que los programadores, especialmente los programadores que desarrollan el front-end de un sitio web, no lo hacen en absoluto. Ni siquiera una vez en 20 años. Así que no es realmente el contenido de su trabajo real.
Pero a las compañías les gusta hacerle estas preguntas, y las personas que leen las respuestas en LeetCode, pueden obtener 5 de 5 puntos por varias sesiones de entrevista y entrar a la compañía, mientras que la persona que escribió una solución correcta pero no la solución que la gente tardó meses o años en averiguarlo antes, obtiene un 3 o 3.5 de 5 solamente, y es rechazado como candidato.
Y lo que encontré a veces es: estos ingenieros ingresan a la empresa y, a veces, ni siquiera pueden escribir el código correcto. Conocen las respuestas estándar a esas preguntas, pero cuando ven un problema real, a veces no saben cómo pensar, no tan bien como los candidatos que realmente pueden pensar bien en las entrevistas.
Pero las empresas contratan a personas que utilizan este método de todos modos. No entiendo muy bien cómo y por qué funciona de esta manera?
Pero las empresas contratan a personas que utilizan este método de todos modos. No entiendo muy bien cómo y por qué funciona de esta manera?
Algunas empresas no cuentan con ingenieros experimentados que analicen el proceso de la entrevista. Una falla de su parte si están contratando ingenieros, pero bastante común. Entonces, RR. HH. solo busca alguna métrica para usar.
No entiendo muy bien cómo y por qué funciona de esta manera?
Una cosa muy importante a tener en cuenta es que el objetivo del proceso de contratación de una empresa es contratar a personas calificadas, lo más fácilmente posible. Eso es todo.
Su objetivo no es asegurarse de que todas las personas calificadas obtengan una entrevista. El objetivo no es encontrar a ese candidato "diamante en bruto", alguien con un historial laboral deficiente, o que hace mal las entrevistas, o que olvida cosas mientras codifica en la pizarra, o que comete errores en una codificación cronometrada. evaluación, etc., pero en realidad tendría éxito en el trabajo.
Mientras los puestos de trabajo estén ocupados por buenas contrataciones, el proceso de contratación está funcionando. ¿Hay "falsos negativos", personas rechazadas por el proceso que están calificadas y que habrían tenido éxito en el trabajo? Por supuesto que los hay, pero desde el punto de vista del proceso de contratación, eso es necesario. Una empresa no tiene tiempo para entrevistar a todas las personas que se postulan, por lo que necesita alguna forma de filtrar a los solicitantes para que las personas que realmente sean entrevistadas tengan muchas probabilidades de estar calificadas. Si entrevistan a 5 personas calificadas para un puesto, no importa que otras 5 personas calificadas no hayan pasado el corte.
Tenga en cuenta que no estoy afirmando que las preguntas del tipo LeetCode hagan la mejor evaluación de un desarrollador, o que una empresa que las usa piense que lo hacen. Lo que digo es que no importa nada si estas preguntas no tienen ninguna relevancia para el trabajo. No importa que nunca inviertas una cadena o que encuentres todos los números primos en una lista; lo único que importa es que la empresa piense que su proceso está funcionando: que está encontrando candidatos calificados de la manera más eficiente posible.
Entonces, si desea postularse para una empresa que ha decidido que usará estas pruebas, tiene dos opciones: puede practicar estos problemas o puede sentarse sin estar preparado y esperar que tenga suerte.
Porque RH y los reclutadores a menudo están totalmente desconectados de la realidad (como en: delirantes de su valor) y no saben nada sobre TI. Buscan ALGUNA métrica para medir qué tan buenas son las personas sin molestar al departamento de TI con un día laboral de prueba o algo así.
Y eso significa que necesitan pruebas medibles. Y luego los agregas y posiblemente algún gerente sea tan estúpido (sí, esa es la versión amigable) que no se da cuenta de que CADA persona de TI que he conocido se da cuenta de que esas pruebas no significan nada, que rápidamente usan una prueba totalmente inexacta.
Este es un caso serio de engaño masivo: toda una industria que piensa que significan algo cuando todos los que programan saben que no significan nada.
Se vuelve aún mejor cuando esos empleados incompetentes no son despedidos nuevamente porque "es muy difícil conseguir a CUALQUIERA de nuestro departamento de recursos humanos, es mejor que trabajemos con lo que tenemos". Eso significa que el Principio de Peter está en pleno efecto, el grupo de TI se convierte en una mezcla de personas incompetentes (ya que los competentes seguirán adelante), todo porque Recursos Humanos hace un trabajo maravilloso con pruebas que no funcionan.
Desde el punto de vista de un entrevistador: se puede aprender mucho sobre la competencia de un codificador observando cómo aborda el problema, qué suposiciones hace, qué preguntas se da cuenta de que debe hacer, etc. Eso a menudo ni siquiera requiere que el candidato proporcione una solución completa. Puede parecer ridículo, pero en realidad tiene valor cuando se hace bien.
Esto no significa que todos los entrevistadores estén capacitados para hacerlo de esta manera; algunos realmente se están desmoronando.
La contratación es un proceso lento y costoso. Muchas empresas descargan eso en los reclutadores y/o pruebas de tecnología en línea.
Estas pruebas de estilo están muy bien comercializadas. Afirman que brindan a las empresas una forma casi gratuita de examinar a los candidatos, hacer las preguntas correctas, encontrar el mejor talento, y es por eso que las empresas los utilizan.
Si no te gusta hacerlos o no ves cómo son relevantes, entonces dilo. Pregunte por una forma diferente de demostrar sus habilidades. - No siempre funciona, pero a veces sí.
Esas preguntas pueden ser muy específicas y no algo que un ingeniero de software típico haría incluso en 15 o 20 años.
Estas preguntas de estilo son 100% relevantes para la ingeniería de software y lo que un ingeniero de software "típico" debería saber, pero completamente irrelevantes para muchas áreas de nicho dentro de la ingeniería de software, como el desarrollo web, porque la mayor parte del conocimiento de CS es abstraído por lenguajes de alto nivel. y bibliotecas.
La mayoría de estas pruebas de estilo se centran en la ingeniería de software en su conjunto, no en áreas agradables, por lo que muchas empresas ofrecen pruebas de CS, no de desarrollo web.
(Más bien, los centrados en el desarrollo web a menudo están mal escritos y se centran en preguntas irrelevantes de CS)
Algunas empresas están comenzando a darse cuenta de esto, pero tomará tiempo para que las cosas cambien.
Esencialmente, las empresas solo quieren la forma más económica de encontrar buenos candidatos, y estas pruebas de estilo lo prometen, incluso si no lo proporcionan.
Si tiene muchos candidatos, dedicar tiempo a cada uno se vuelve muy costoso. Entonces, cualquier cosa que filtre 500 candidatos a 10 es bueno para la empresa. También es valioso si no puede ser acusado de discriminación cuando eliminó a 492 candidatos. Entonces, una pregunta de "leetcode" es bastante buena a este respecto.
Puedes ser un buen desarrollador sin poder resolver ese tipo de problema, pero la habilidad da una pequeña pista.
Quiero agregar una respuesta aquí, que es afirmar que no es que la empresa no sepa lo que está haciendo. Saben exactamente lo que están haciendo: quieren contratar al tipo obediente, no al inteligente.
Este tipo de patrón se repite en la historia. Hace 1000 o 2000 años, si puedes recitar y memorizar alguna escritura o texto antiguo, te conviertes en el oficial de la dinastía y, en cierto modo, gobiernas a otras personas. Las personas que no se molestaron en memorizar 200,000 palabras de guiones, serán gobernadas por las personas que estén dispuestas a ser obedientes a la Dinastía. ¿Es eso razonable? Tal vez no.
Sin embargo, si no es razonable, ¿lo hará? ¿Serás lo suficientemente obediente como para hacer lo que no es razonable para obedecernos? Si nos obedeces, haremos que gobiernes a otras personas. De otra forma no. El "obedecer" es la clave aquí.
Lo mismo sucedió con la educación en Hong Kong o quizás en el Reino Unido hace algunos años. (No estoy seguro de hoy en día). La física o las matemáticas avanzadas que te enseñaron, no era para que las entendieras. Te dicen cómo resolver algo, memoriza algunas ecuaciones, por ejemplo, la longitud de una cuerda y el peso de una bola de plomo, y ahora muévela 45 grados, ¿cuál es su frecuencia de vibración? Si memorizas la fórmula en un examen y das la respuesta, obtienes 10/10 puntos. De lo contrario, obtienes 0/10 puntos. Los que pueden obtener 95/100 puntos, pueden ir a una universidad. (Solo alrededor del 2% de la población de Hong Kong podía ingresar a una universidad en ese momento, porque Hong Kong en ese momento solo tenía solo dos universidades para una población de 6 millones de personas). Y cuando ingrese a la universidad, se convertirá en líder o ingeniero en una empresa y obtendrá 8000 dólares de Hong Kong al mes. De lo contrario, ingresa con un diploma de escuela secundaria, y es un "técnico", y obtiene quizás 3000 dólares de Hong Kong por mes. Mucha gente no podía permitirse el lujo de estudiar en el extranjero, por lo que no era como "oh, solo ve a la universidad" como en los EE. UU. (pero incluso en los EE. UU., mire lo que sucede cuando está dispuesto a hacer Leetcode o cuando no está dispuesto a regurgitar soluciones óptimas).
Así que memorizar fórmulas, ¿es eso razonable? Talvez no. Pero, ¿eres lo suficientemente obediente para hacer eso? Hong Kong especialmente tenía esta cosa sobre el colonialismo. Que es: Reino Unido quería gobernar HK (como colonia). No podía usar a la gente del Reino Unido para gobernar directamente a la gente de Hong Kong, ya que a la gente no le gustaría. Así que pagan un salario ridículamente alto a la gente de Hong Kong, digamos, cuando son mayores, 15.000 dólares de Hong Kong cada mes, para que obedezcan al gobierno. Y luego, al obtener un salario tan alto, a su vez se convertirán en funcionarios del gobierno y gobernarán a la gente. Tienden a seguir órdenes porque no quieren perder su trabajo e ingresar al sector privado y quizás ganar solo $ 11,000 por mes en su lugar. Entonces, el punto clave es que el gobierno quería gente obediente. La obediencia es la clave. Como resultado, te dan un sistema de educación que es lo que la gente local llama "rellenar un pato a la pequinesa" y mucha gente pensaba que no era razonable, y casi todo el mundo seguía ese sistema. Verás, si obedeces, estarás en lo alto de la sociedad. Si no obedeces, se asegurarán de que permanezcas en el fondo.
stefania gauss