Soy maestra en First Step Coding y he capacitado a cientos de aspirantes a programadores.
La dificultad de su entrevista dependerá del campo de entrenamiento al que se postule. Como regla general, cuanto más respetable sea el programa, más difícil será el desafío técnico.
Muchos problemas de codificación implicarán funciones / métodos de escritura, por lo que debería sentirse muy cómodo con eso. Enseño una mnemónica llamada PREP a mis alumnos. Significa P arameters, R eturn, E xample, P seudocode.
- Se le proporciona una matriz 2D (que representa un mapa mundial). Las celdas adyacentes con el mismo número representan alguna nacionalidad. Cuenta el número de todas las nacionalidades. ¿Cuál es el enfoque / algoritmo correcto aquí?
- Cómo enumerar todas las rutas en una cuadrícula 2D solo yendo hacia la derecha o hacia abajo desde (0,0) a (n-1, n-1)
- ¿Olvidé la pregunta de programación que aprendí o resolví de recursos como Cracking the Coding Interview book? Como recordar
- ¿Cuánto tiempo lleva trabajar para descifrar la entrevista de codificación si no tengo una buena idea sobre la estructura de datos y el algoritmo?
- ¿Qué tipo de preguntas se le pueden hacer a un chico de CS en una entrevista de Power Grid (PSU) para una publicación de ingeniero (IT)?
La mitad de la batalla para resolver un problema es enmarcarlo correctamente. Si puede internalizar PREP, estabilizará su mano y lo mantendrá en el inicio correcto cada vez. Consulte este artículo para ver PREP aplicado a un problema de la vida real.
Mi próximo consejo será el obvio que la mayoría de la gente todavía no hace: practicar, mucho.
Afortunadamente, ahora es 2017 y hay muchos recursos excelentes para la práctica de codificación. Dos de mis favoritos son:
- Free Code Camp. Su plataforma alberga más de 2,000 horas de ejercicios de aprendizaje progresivo y desafíos que cubren HTML, CSS, JavaScript, algoritmos, visualización de datos y más. Puede obtener certificaciones y encontrar soporte en la comunidad en línea cuando se atasca.
- Code Wars, una vez que estás un poco más avanzado, es una forma fantástica de refinar tus habilidades de programación a través de katas de código . Puede elegir entre más de 20 idiomas para practicar dentro de su entorno basado en navegador que presenta resultados de consola y pruebas editables. Tal vez esa característica más valiosa: puede ver un conjunto de soluciones comunitarias para cada problema después de terminar uno. Incluso después de programar durante más de 10 años, aprendo nuevos trucos de la comunidad cada vez que soluciono un problema.