Usted pregunta: ” Cuando realiza una entrevista de codificación de pizarra y se queda atascado, ¿está bien explicarle al entrevistador cómo usaría Google para encontrar una respuesta? ”
Apocryphally, conocía a alguien que hizo eso y rápidamente selló su propio ataúd en el proceso porque estaban entrevistando en un motor de búsqueda de la competencia, no en Google. 🙂
En una nota más seria, como ha señalado Gayle, lo que el entrevistador quiere saber no es si usted sabe la respuesta ni si puede encontrar la respuesta, sino cómo abordaría el problema si se lo mostraran por primera vez. . Por esta razón, incluso si ya conoce la respuesta, podría tener sentido decirle al entrevistador tanto para que pueda elegir un problema diferente para que usted pueda trabajar.
- ¿Cómo me preparo para una ronda escrita de compañías como Amazon y Microsoft como nuevos?
- ¿Cuánto cuestan las preguntas formuladas en la entrevista relacionadas con el perfil del trabajo? ¿Preguntas sobre estructuras algorítmicas y de datos especialmente?
- ¿Hay algún instituto que lo capacite para descifrar entrevistas tecnológicas difíciles como Google / Amazon / Microsoft?
- ¿Por qué las grandes compañías tecnológicas como Google / Amazon / FB no hacen que sus entrevistas de codificación de pantalla de teléfono sean más estrictas?
- ¿Cómo debo prepararme para la entrevista de codificación en línea de Amazon?
Ahora, si caes en una determinada categoría de personas brillantes que se quedan atrapadas en situaciones como esta, sigue leyendo para ver dos sugerencias constructivas que podrían ayudarte.
El punto se congela debido a los ataques de ansiedad
Cuando abordas un nuevo problema, no es raro entrar en pánico y dibujar espacios en blanco. Llamemos a esto un congelamiento de puntos porque su mente generalmente fluida se congela cuando se pone en el lugar. Una causa común de congelamiento de manchas es la ansiedad enloquecida. Ser propenso a la ansiedad tiene un efecto contraproducente en estas situaciones porque la ansiedad se alimenta a sí misma para causar meta-ansiedad, y esta reacción en cadena eventualmente termina congelando tus engranajes mentales precisamente en el momento en que quieres que se vuelvan locas.
Soluciones de referencia
Aquí le mostramos cómo descongelar su cerebro cuando eso está sucediendo. Reduzca la probabilidad de pasar a la inacción en espiral simplemente estableciendo primero una línea de base. Una de las cosas más aterradoras para las personas propensas a la ansiedad es la posibilidad de no tener una posición alternativa. Es realmente aterrador caer en la nada.
Por otro lado, saber que has descifrado algo, aunque sea ineficiente, tiene un efecto tremendamente tranquilizador. Alivia una gran cantidad de estrés, lo que le permite comenzar a enfocarse en el problema y buscar formas de mejorar la línea de base.
Siempre es útil escribir una línea de base aunque solo sea para darte un dato para medir la calidad de las mejoras posteriores. Tomemos como ejemplo el cálculo del enésimo número de Fibonacci, ideado como es el ejemplo. Si eres nuevo en este problema (es poco probable que hayas estudiado Ciencias de la Computación) y te encuentres perplejo, debes codificar una función recursiva ingenua que tome tiempo exponencial. Es mejor que ninguna solución, ¿verdad? ¿Esto debería llevarte, digamos, todo un minuto? Luego das un paso atrás y consideras su tiempo de ejecución y dices ” Hmm … ¿Cómo lo hago más rápido? ¿Dónde está el cuello de botella? ¿Cómo puedo evitar todos los nuevos cálculos innecesarios? ¡Si! Memoization debería hacer el truco. Ahora … ¿Puedo hacer eso iterativo? “Etc.
Como un ejemplo más realista, imagine que se le ha pedido que resuelva el problema de 2 sumas en el lugar (identifique dos números en una matriz que se sumen a algún objetivo en particular, digamos 0). Lo primero que debe hacer es codificar el ingenuo algoritmo cuadrático, que considera la suma de cada par posible. Luego das un paso atrás y ves si hay algo que puedas hacer para mejorarlo. Quizás el entrevistador le ofrezca un consejo en este punto: que la matriz que tiene es mutable y se le permite mezclarla. Entonces comenzarías a pensar si hay una permutación específica que podría darte una solución subcuadrática. “¡ Ah sí! ¡Una matriz ordenada me dará una solución lineal! “Eso significa que ahora podría reducir el tiempo de ejecución general de la solución que se limita por el tiempo necesario para ordenarla, que es log-lineal en promedio y, por lo tanto, subcuadrático.
Soluciones de referencia y la mentalidad de crecimiento
Obtener la solución de base y luego ver cómo se puede mejorar a menudo tiene el efecto secundario beneficioso de hacerle hacer preguntas aclaratorias sobre usted y el anfitrión. También sugiere que tiene una mentalidad de crecimiento porque comienza con algo simple y lo hace progresivamente más sofisticado. Las personas con mentalidad de no crecimiento a menudo se vuelven “ California o Bust ”. Creen que cualquier cosa menos que una solución asombrosa que los deslumbre con su brillantez no tiene valor. A menudo terminan dibujando espacios en blanco porque consciente o inconscientemente eluden los enfoques incrementales para resolver un problema, que realmente es el corazón de la CS. Como empleador y gerente, preferiría invertir en un actor predecible que en un cañón suelto propenso a destellos ocasionales de genio, ¿sí?
Por lo tanto, siempre tenga en cuenta que algo es mejor que nada. Y eso mejor es mejor que peor . Siempre busque la solución más simple que pueda y escríbala rápidamente. Luego pregúntese (hablando en voz alta) si eso es lo mejor que puede hacer. Como ya tienes algo en este momento, podrás experimentar con más confianza con otros enfoques. Después de todo, si ninguna de las otras estrategias funciona, al menos tienes esta, ¿verdad?
Aprende a disfrutar de rompecabezas algorítmicos
Es fácil. Como solía decir mi hermana, ¡la gente incluso ha aprendido a desarrollar el gusto por el queso azul (o el tofu apestoso)!
Por lo tanto, un segundo consejo para evitar congelaciones puntuales es siempre (esté entrevistando o no) estar atento a desafíos algorítmicos interesantes y probarlos. Además de desarrollar un gusto por los algoritmos, también aumentará su confianza en que puede hacer coincidir un problema determinado con uno que ya sabe cómo resolver.
‘Cuz … seamos sinceros: una gran cantidad de problemas son simplemente análogos entre sí. Solo toma un ojo entrenado para detectar sus signos reveladores de similitud. Por ejemplo, tenga en cuenta que el problema Robot-on-a-Grid que una vez se preguntó comúnmente en entrevistas tecnológicas es un análogo directo del problema de Fibonacci que discutimos anteriormente.
Mejor,
Y