CTCI es un gran libro, probablemente el mejor para codificar la preparación de entrevistas, y según mi experiencia con empresas como Google / Facebook / Amazon y un grupo de nuevas empresas más pequeñas, las preguntas en el libro se alinean bien con el tipo de preguntas que me hicieron. . En todo caso, las preguntas que me hicieron en las entrevistas fueron a menudo más fáciles. Entonces, en lo que respecta al conocimiento puro, diría que debería estar preparado para sus entrevistas si puede resolver todos los problemas en el libro.
SIN EMBARGO, hay mucho más para codificar entrevistas que el conocimiento puro.
En primer lugar, no sé cómo practicó para resolver estos problemas, pero como probablemente sepa, tendrá que codificar en una pizarra para la mayoría de las entrevistas de codificación. Esto es realmente difícil y muy diferente a la codificación en la computadora, especialmente porque no tienes el compilador para ayudarte. Por lo tanto, una de las cosas clave que practicaría sería escribir código a mano en una pizarra o con lápiz y papel. Puede hacer ejemplos de problemas, escribirlos a mano y luego escribirlos en la computadora para asegurarse de que no haya ningún problema. Esto lo hará mucho más fácil porque estará preparado para lo que le piden.
- ¿Cuáles son las oportunidades de trabajo para los profesionales de software en Austrailia? ¿Cuál es el mejor procedimiento para solicitar lo mismo?
- ¿Cómo abordarías este caso en tu CV?
- ¿Cómo es la vida, después de obtener un título de ingeniería CS de la Universidad de Anna?
- En la informática india, ¿qué es más beneficioso, cambiar de trabajo rápidamente o apegarse a una sola organización durante mucho tiempo?
- ¿De dónde o de quién puedo encontrar orientación para la gestión financiera?
En segundo lugar, y esto va junto con el último punto, debe poder depurar su código a mano. Al codificar entrevistas, les gustan los candidatos que pueden descubrir si hay errores en su propio código. Para demostrar esto, debe practicar recorrer su código línea por línea, realizar un seguimiento de los diferentes valores de las variables y averiguar qué exactamente va a generar su código. Creo que es mucho más importante poder encontrar los errores en el código que escribió y corregirlos (y realmente entender cuál era el problema) que escribir un código perfecto la primera vez, porque en la vida real nadie escribe código impecable la primera vez.
En tercer lugar, debe practicar escribir código realmente limpio y conciso. Hay muchas formas de resolver un problema, pero las personas que lo contratan se codificarán con usted en el futuro, por lo que quieren saber que escribirá un código que sea fácil de leer y comprender. Esto no es tan difícil cuando estás haciendo una codificación real, pero puede ser difícil en una entrevista de pizarra, por lo que definitivamente debes practicar eso.
Cuarto (lo siento, esto se está haciendo largo), los entrevistadores realmente quieren saber cómo piensas sobre el código que vas a escribir. Por eso, es mejor si puedes hablar a través del código mientras lo escribes. Esto es realmente difícil al principio (en mi opinión), pero con la práctica, puedes aprender a pensar en voz alta como lo harías normalmente en voz alta, y eso es exactamente lo que están buscando. Sin embargo, practicaría esto explícitamente porque es difícil.
Quinto y finalmente, las entrevistas son de muy alta presión. Incluso cuando supiste cómo resolver ese problema de la Lista Vinculada el día anterior, las entrevistas pueden hacer que lo mejor de nosotros quede totalmente en blanco, por lo que debes tener tanta práctica como puedas entrevistar. Simplemente encuentre a un compañero de CS y podrá turnarse para entrevistarse o incluso grabar en video y criticarse. Cualquier cosa así será útil para que te sientas más cómodo cuando lleguen tus entrevistas reales.
Al final, hay muchos factores que determinan si te contratan o no, pero las entrevistas son sin duda una de las más importantes. Más práctica siempre es mejor, pero finalmente tendrá que decidir por sí mismo qué es “suficiente”. De cualquier manera, practique entrevistas, haga entrevistas reales, haga lo que sea que pueda hacer para obtener más experiencia, y eso le dará la mejor oportunidad posible. ¡La mejor de las suertes!