¿Por qué las grandes empresas tienen una ronda de codificación algorítmica tan divertida para la contratación?

La programación requiere la capacidad de resolver problemas. Tienes que ser capaz de tomar grandes problemas y dividirlos en problemas más pequeños. Tienes que ser un pensador claro. Resolver problemas relacionados con algoritmos requiere habilidades similares de resolución de problemas. Si puede demostrar que es un solucionador de problemas sólido con una pregunta de algoritmos, entonces el entrevistador puede asumir que tiene el potencial de ser un buen programador. Esta suposición podría estar equivocada, pero las empresas están dispuestas a apostar que no lo es. No estoy diciendo que si no puedes hacer algoritmos no puedes ser un buen programador.

Además, los entrevistadores no quieren evaluar a las personas en idiomas específicos porque las personas pueden aprender nuevos idiomas fácilmente. Hay pocas razones para rechazar a alguien porque aún no está familiarizado con la pila de programación que usa en su empresa.

Entonces, ¿con qué nos deja eso? Preguntas de diseño y preguntas de algoritmos. Y estos son generalmente lo que se pregunta en las entrevistas. Si no cree que los algoritmos tengan algo que ver con su trabajo, podría estar en lo cierto, pero si alguna vez desea desarrollar tecnología de punta, es importante saber cómo resolver algoritmos.

Otra razón por la que los entrevistadores hacen preguntas sobre algoritmos es que los algoritmos son algo que se supone que has aprendido en la escuela (suponiendo que hayas estudiado informática). No quieren personas que puedan regurgitar lo que aprendieron en la escuela. Quieren personas que puedan aplicar lo que aprendieron de la escuela. Probar habilidades algorítmicas de resolución de problemas es una forma de diferenciar a los estudiantes inteligentes de los estudiantes promedio.

Dado que se espera poder resolver preguntas de algoritmos, es común que las personas se preparen para una entrevista practicando algoritmos. Entonces, hacer preguntas a los algoritmos también es una forma de ver quién se preocupa lo suficiente por el trabajo para prepararse.

Los entrevistadores de hoy analizan el trabajo y el perfil anteriores. Pero eso no les dice si eres un buen comunicador. Eso no les dice qué tan rápido puede resolver un problema, o qué tan rápido puede codificar. Eso no dice si eres un apasionado de tu trabajo. Les dice casi nada acerca de sus habilidades para resolver problemas.

TL; DR: Ser bueno en algoritmos no es necesario para estar calificado para un trabajo. Sin embargo, ser bueno en algoritmos es un indicador probable de que puede aprender rápidamente y convertirse en un buen ingeniero de software. Probar algoritmos es una manera fácil para que las empresas ahorren tiempo al buscar candidatos calificados y apasionados.

Es más fácil comparar dos algoritmos que dos anécdotas sobre trabajos pasados, y es más difícil inventar cosas. El enfoque algorítmico depende menos de la habilidad de los entrevistadores para juzgar a una persona, y está menos influenciado por la capacidad persuasiva y narrativa del candidato.

Las empresas que impulsan este enfoque e ignoran las habilidades más suaves confían en los datos duros sobre el criterio de su personal. Contratan para esto, y luego construyen productos que están altamente optimizados, pero que carecen de cierto factor humano. Esto podría ser una característica o un error, dependiendo de su preferencia personal.

More Interesting

Preguntas de la entrevista técnica: ¿Cómo determino si una matriz sin clasificar contiene duplicados difusos dentro de k índices entre sí?

¿Cuál es la mejor manera de escribir un método que pruebe una función como fusionar 2 listas vinculadas ordenadas?

¿Cómo y cuándo implementas Comparator en Java?

Cómo juzgar a un programador Java con solo 5 preguntas

Si hay una matriz que contiene N números, cuyo rango es de 1 a N + 1, y solo puedo usar el espacio O (1) y no puedo modificar la matriz, ¿puedo encontrar cualquier número repetido no peor que O (NlogN) ¿hora?

¿Qué hace que una buena entrevista técnica sea una pregunta?

¿Puedo usar el enfoque de fuerza bruta para resolver preguntas de algoritmos en la entrevista técnica?

Tengo una oportunidad inesperada de entrevistarme con Google para una pasantía de otoño en dos semanas. ¿Cuál es la mejor manera de prepararse?

¿Qué tipo de preguntas le hicieron en su entrevista los reclutadores de Amazon? ¿Como de la estructura de datos, algoritmos, programación?

¿Cómo me preparo para las rondas técnicas en las entrevistas del campus?

¿Cuáles son algunas de las preguntas importantes de la entrevista técnica que utiliza la estructura de datos matriciales?

Cómo diferenciar entre Declaración y Definición de una variable

¿Qué haría si no sabe cómo resolver las preguntas del algoritmo en una entrevista técnica?

¿Qué es la entrevista de codificación?

Cómo comenzar con la codificación como principiante