En general, sería entrevistado sobre algoritmos / estructuras de datos (y habilidades analíticas), programación y diseño de sistemas. Aquí hay una descripción general de cómo puede mejorar estas habilidades:
- Paso 1: Algoritmos : Obtenga este libro – Diseño de algoritmo: Kleinberg / Tardos. Por alguna razón, este libro no es tan popular como los otros libros de algoritmos, pero está muy bien organizado. El conjunto completo de algoritmos se divide claramente en unos pocos capítulos: teoría de gráficos, algoritmos codiciosos, dividir y conquistar, programación dinámica , flujo de red y algunos otros temas diversos en algoritmos. Debería dedicar algunas semanas a cada uno de los temas anteriores en negrita: estudie el capítulo en unos días y haga los 50 problemas al final. Debido a que solo hay un número manejable de problemas en cada capítulo, puede resolver la mayoría de los problemas en un tiempo razonable. Es posible que desee omitir entre el 20 y el 30% de los problemas que son relativamente difíciles, pero debería poder resolver el 70–80% de los problemas, solo o con poca ayuda.
- Paso 2: estructuras de datos y programación : para este paso, elija un idioma cuando comience y practique el uso de ese idioma solamente. Creo que Java es el mejor en lo que respecta a las entrevistas: orientado a objetos que ayuda a escribir código modular con mayor facilidad, tiene verificación de tipo, facilita el razonamiento sobre la corrección del código (a diferencia de Python) y tiene buenas bibliotecas para estructuras de datos y para manejo de cadenas (a diferencia de C ++). Encontré Cracking the Coding Interview bastante bueno. Una vez más, hay capítulos sobre cada tema importante (aunque más detallado que el libro anterior). Para cada capítulo, hay un conjunto de aproximadamente 10 problemas. Por lo general, omito los más fáciles y solo elijo los 1 o 2 problemas más desafiantes del conjunto. Dependiendo de su nivel y el tiempo que tenga, es posible que desee hacer lo mismo o probar todos los problemas. Para cada problema que resuelva, escriba el código desde cero sin un IDE . Y luego escribe casos de prueba. (De hecho, deje de usar IDE en la medida de lo posible en su trabajo diario. Esa será una buena práctica para aprender el idioma en el que está trabajando). Al momento de escribir el código, piense en la legibilidad, modularidad y eficiencia de su código. Finalmente, lea las soluciones proporcionadas.
- Paso 3: Diseño del sistema : una vez más, descifrar la entrevista de codificación tiene algunos buenos problemas en esta área. Practicalos.
- Paso 4: Preguntas de la entrevista : en esta etapa, querrá consultar los recursos en línea, como GeeksforGeeks y CareerCup.
Luego, en función de su autoanálisis, es posible que desee volver a uno o más de estos pasos y continuar trabajando en habilidades / temas particulares.
- Cómo prepararme para una entrevista técnica de selección telefónica de booking.com
- ¿Qué tan difícil es la entrevista en XIME?
- ¿Qué tipo de preguntas debo esperar en una entrevista de Yelp New Grad Software Engineer?
- Cómo resolver problemas de codificación sin confundirse
- ¿Cuáles son las preguntas que se hacen en las entrevistas con desarrolladores PLSQL para personas con experiencia?