TDAH y evaluaciones de codificación previas a la entrevista

Soy un ingeniero de software experimentado que tiene mucho éxito y ha superado los logros a lo largo de mi carrera. También tengo una sólida formación en conceptos de informática y puedo hablar apasionadamente sobre cualquier tipo de problema de algoritmo. También soy neurodivergente con un diagnóstico de TDAH.

Saco lo mejor de mis desafíos y fortalezas donde puedo y he desarrollado mi propio estilo de trabajo que me permite ser altamente productivo mientras desarrollo software y mientras trabajo con otros. El gran desafío que encontré recientemente es que no importa cuánto estudie o practique, parece que nunca puedo cumplir con los requisitos mínimos de una evaluación de codificación previa a la entrevista.

Siento que estas evaluaciones están orientadas a acelerar hacia una solución perfecta en una pequeña cantidad de tiempo. Es extremadamente difícil para mí hacer un seguimiento de varias cosas en mi cabeza al mismo tiempo de una manera que las personas neurotípicas encuentran sencillas. Me pierdo en mi cabeza y luego empiezo a trabajar hacia atrás desde la optimización, me detengo y luego trato de volver a la normalidad, pero esto me cuesta mucho tiempo que no tengo. Mis intentos recientes implican que tomo toneladas de notas para ayudar, pero nuevamente, esto nunca me deja suficiente tiempo para codificarlo y se me acaba el tiempo antes de tener una solución completa. Cuando practico en Hackerrank y Leetcode, he estado completando la mayoría de las tareas fáciles en 30 minutos y las tareas difíciles en aproximadamente 4 horas. Por lo general, me encuentro con problemas porque quieren que resuelvas algo así como 2 tareas medianas en solo 45 minutos.

Todo parece muy injusto e innecesariamente exclusivo para las personas neurodivergentes que son casi más capaces de realizar las funciones laborales. ¿Es típico que las empresas brinden de alguna manera adaptaciones especiales para las personas con diagnóstico de TDAH? ¿Las protecciones laborales para discapacitados solo están vigentes para los empleados o estas empresas pueden discriminar a los neurodivergentes durante el proceso de entrevista?

He realizado un análisis de estas tareas de codificación y puedo decirles que no solo tienen como objetivo la precisión y la velocidad. Los que usamos podían ver el código a medida que se escribía, por lo que podíamos inferir el proceso de pensamiento del solicitante mientras escribía el código.
@GregoryCurrie ¿Los selecciona para todas las empresas porque en las que entrevisto puedo explicar en comentarios de código detallados lo que estoy tratando de hacer, pero nunca tengo suficiente tiempo para terminar de codificarlo? Nunca paso de la pantalla previa.
@closevoters NO se trata de políticas específicas de la empresa.
@JoeStrazzere Buena pregunta. Trabajé más o menos para la industria que no es FAANG ni tecnología, generalmente en una organización de TI más pequeña donde no hay una gran cantidad de ingenieros de software. El problema es que este trabajo a menudo no es interesante y limita la carrera. Me encanta resolver problemas técnicos complejos por sí mismos y siempre parece que las empresas de FAANG tienen muchas posibilidades. Durante toda mi carrera siempre me he sentido como un pez enorme en un estanque pequeño, pero me siento solo y la gente realmente no me entiende y simplemente asume que soy un genio cuando no lo soy...
... Realmente odio eso porque sé que no soy una estrella de rock. No quiero que me traten así porque sé que no lo soy. Una estrella de rock no tendría ningún problema con una prueba de codificación, por ejemplo. Solo quiero ver cuál es mi posición frente a las más grandes y brillantes, y tal vez eso signifique que tengo que tratar de mantenerme al día con las ballenas en el océano, pero al menos me sentiría como un pez que finalmente encaja en la escuela correcta.
@maple_shaft, Con más prácticas, eventualmente puedes resolver 1 tarea mediana o incluso 1 tarea difícil en 30 minutos o menos.
No es una respuesta a su pregunta exacta, pero le recomiendo que practique entrevistas de codificación simuladas con otros buscadores de empleo en pramp.com y que vea videos de Edbert Chan en youtube.

Respuestas (2)

Pide alojamiento antes de la prueba.

Esto no es diferente de si tuviera problemas de audición y le pidieran un intérprete de lenguaje de señas en una entrevista. En la mayoría de los países occidentales, un empleador está legalmente obligado a realizar adaptaciones razonables para su discapacidad.

Siento simpatía por tu situación. Las pruebas de codificación son como un sprint, tomando un problema simple y llegando a una solución decente muy rápidamente. El desarrollo de software real es una carrera de distancia, toma un problema complejo y produce una solución robusta y probada a fondo durante un período de tiempo mucho más largo. Es posible ser bueno en el desarrollo y no en las pruebas de codificación.

Explique su situación y solicite más tiempo para la prueba, o alguna otra forma de evaluar su capacidad de codificación. Señale que ha tenido éxito en una carrera de codificación. Deje en claro que tiene una condición médica que requiere esto.

Entonces, ¿no está en peligro de no conseguir el trabajo debido a su discapacidad? También tengo ADD y nunca le dije a ningún empleador porque tenía miedo de que no me aceptaran por eso. Dado que, por lo general, la mayoría de la gente piensa que el ADD es como el TDAH y que solo los niños tienen esto y que saltarías como loco, y yo soy una persona muy tranquila y serena la mayor parte del tiempo, pero a menudo paso por alto problemas muy pequeños. Por ejemplo, puedo resolver un algoritmo complejo y tener una buena solución, pero olvidé que nombré una variable John y creé una nueva variable johnson aunque es lo mismo que John. Nadie se quejó todavía.
@bibleblade Todavía hay una falta general de conciencia sobre el TDAH en adultos y esto a menudo puede conducir a malentendidos y discriminación involuntaria. De hecho, es posible que no sepa que ADD y ADHD se consideran solo TDAH en la actualidad. El TDAH ahora se diferencia en dos tipos, el tipo de hiperactividad y el tipo de falta de atención, y puede variar entre los dos.

Descargo de responsabilidad personal: tengo ADD. No TDAH: no tengo el componente de hiperactividad; Me lo diagnosticaron cuando estaba en la escuela primaria. Entonces, aunque no estamos exactamente en el mismo barco, siento que estoy lo suficientemente cerca como para poder comentar.

Y para ser honesto, encontré tu pregunta un poco insultante.

¿Esas tareas que te piden que hagas? No son tan diferentes a lo que estarías haciendo en el trabajo. Y si te toma el doble de tiempo hacerlo como otro candidato, ¿por qué estás asumiendo que te están discriminando por una condición neurológica, en lugar de querer al candidato que por todas las señales será más productivo? Quiero decir, desde su perspectiva, ¿por qué asumirían que serías más productivo simplemente porque la tarea es en el trabajo?

Está un poco en el camino correcto: está intentando practicar este tipo de cosas en Hackerrank y Leetcode . Pero... ¿has trabajado con otros para hacer un balance de lo que estás haciendo? ¿Para pretender evaluarlo, observar el código que produce y brindarle comentarios específicos?

Quiero decir, podría ir a ProjectEuler y generar una solución al Problema #X... pero aparte de practicar la codificación , en realidad no me ayuda a mejorar a los ojos de un evaluador . Por lo que sé, me quitarían una gran cantidad de puntos porque no estoy nombrando mis variables de forma descriptiva, o porque no estoy probando adecuadamente mi código y tiene errores, o porque no estoy siguiendo SRP, etc. , etc. Quiero decir, como alguien que evaluó el código del solicitante, puedo decirles que prefiero tener un código bueno pero incompleto que un código completamente malo.

Así que este es mi consejo: deja de culpar al TDAH. Si no te va bien en un aspecto de una entrevista? Averigua qué puedes hacer para mejorar para el próximo. Incluso si el TDAH está contribuyendo a que las cosas no vayan bien, culparlo en última instancia no lo ayuda en absoluto, simplemente le brinda un chivo expiatorio y una razón para no mejorar en la próxima entrevista .

Sin embargo, ese es el problema, están determinando la productividad en la forma en que memoriza patrones de algoritmos y escribe el código. No apruebas o fallas en base a los comentarios. No pasa ni falla en la cobertura de la prueba unitaria o incluso en el estilo de codificación. Ni siquiera obtiene crédito parcial en una solución de complejidad de tiempo O (n ^ 2) con una explicación de cómo puede lograr el tiempo logarítmico si tuviera más tiempo de codificación. En mi opinión, una visión completa de la productividad sin todo lo demás es incompleta y francamente injusta para las personas que pueden crear una solución empaquetada integral y completa con la misma rapidez en un entorno más natural.
Yo también tengo TDAH. Tengo una exitosa carrera en programación. Tuve que practicar en preguntas de algoritmos desde la perspectiva del proceso, no del código. Tuve que practicar centrándome en la implementación de fuerza bruta más idiota que no se ajustaba del todo a los requisitos, solo para hacer que algo funcionara y luego refinar la solución a partir de ahí. Deje de tratar de mantener todo en su cabeza a la vez, practique obtener algo y luego repetirlo. Eso es lo que los entrevistadores quieren ver.
Además, los problemas medios en Hackerrank y Leetcode siempre tienen algún tipo de restricción de tiempo de ejecución para que todas las pruebas funcionen. A menudo, en una solución de entrevista real, puede escribir la solución de fuerza bruta y luego hablar sobre cómo la mejoraría, en lugar de codificarla. Por lo general, eso es suficiente para demostrar que sabe lo que está haciendo.
@maple_shaft no memorice los algoritmos, comprenda los principios subyacentes y obtenga el resto sobre la marcha. En mi experiencia, las preguntas de la entrevista generalmente no son directamente de un libro de texto y tienes que adaptarte.
@maple_shaft Estás haciendo algunas suposiciones bastante importantes sobre cómo se analiza el código. La mayoría de los empleadores, cuando reciben envíos de códigos de sus solicitantes, en realidad miran el código y verifican su calidad (¡lo sé!) Y su respuesta es un poco el punto de mi respuesta: está culpando a algo fuera de su control (ellos no ¡No evalúe de una manera que me muestre de manera positiva!) en lugar de preguntar "¿Cómo mejoro lo que estoy haciendo para impresionar a los entrevistadores cuando hacen estas pruebas?" Incluso si fuera técnicamente correcto, su enfoque no conduce a la superación personal.