¿Cómo aprender el desarrollo de Java? La experiencia de la estudiante de GeekUniversity Nikita Chernetsov


Recibí educación superior en MSTU, estudié reactores nucleares y plantas de energía. Sin embargo, a pesar de la impresión positiva de estudiar y en general de buenas perspectivas, después de la universidad decidí convertirme en desarrollador. Y resultó! Durante tres años, he estado trabajando como desarrollador de Java sin interrumpir mi entrenamiento por un segundo. Hablaré sobre qué métodos de entrenamiento han sido los más efectivos para mí. No es el hecho de que irán a todos y a todos. Espero que alguien dibuje algo útil para sí mismo.


Cursos en línea


Pero volvamos al principio. No estudié programación en una universidad; mi facultad se llamaba Reactores Nucleares y Plantas de Energía. Sin embargo, fue allí donde senté las bases más importantes para mi profesión actual: después de Baumanka, es increíblemente fácil dominar cualquier material, independientemente del formato. Por lo tanto, no soy de la opinión de que la educación superior se esté depreciando. Una persona con una educación superior de calidad, incluso de una esfera diferente, siempre piensa un poco mejor y comprende un poco más rápido.


La energía no me atrapó, porque en algún lugar en medio del entrenamiento me di cuenta de que mi futuro está en TI. Java siempre ha sido uno de los principales lenguajes, por lo que no hubo muchas dudas al elegir. Como no había ninguno con el formato, cuando hay cursos en línea, ¿por qué complicar tu vida? Rápidamente me inscribí en varios cursos de TI, aprendí una nueva profesión con increíble perseverancia, pero lo más importante, con mucho gusto. Sucedió que el único del grupo realizó tareas complejas.


Revisé muchos cursos, estos son los que más me gustaron:


  • Java Rush: conveniente e intuitivo.
  • Stepik es un programa anual con cursos en Java, Python, Haskell, C ++, programación funcional, análisis matemático y estadística.
  • Otus es un curso avanzado de Java, Spring y Machine Learning.
  • Facultad de Desarrollo de Java en GeekUniversity (GeekBrains): aquí estoy terminando el último trimestre.

Es bastante razonable tomar varios cursos de Java a la vez, porque los programas difieren tanto en tiempo como en contenido. Los cursos prácticos cortos son buenos porque inmediatamente comienzas a hacer lo que necesitas en el trabajo real. Programas más detallados, como en GeekUniversity, proporcionan conocimientos adicionales sobre bases de datos, algoritmos y marcos. No es necesario estudiar todo al mismo tiempo, es posible que no tenga suficiente tiempo y esfuerzo, pero recomiendo al menos gradualmente probar todo en la parte superior. Y nunca te detengas.


Practica


La estructura de todos los libros sobre programación, en cualquier caso, es buena, una es la explicación del tema, luego los ejercicios. Este último no solo debe leerse, sino que debe hacerse con las manos, sin copiar y pegar. Aún más genial, si trabajas como programador y combinas esto con entrenamiento. Te ayuda a crecer más rápido y a hacerte las preguntas correctas. Me ayudó que lo suficientemente rápido después de comenzar la capacitación comencé a trabajar en varios proyectos.


En Glosav, hice un sistema de monitoreo de transporte. Se mezclaron diferentes idiomas allí, Erlang trabajó en el nivel más alto de recepción de datos, luego el bus del sistema en Kafka, y detrás de él, Java sólido. Personalmente, escribí controladores de flujo. Al inicio, iVoice estaba desarrollando un centro de llamadas automatizado, utilizando activamente Kafka. Recientemente me convertí en desarrollador en Luxoft, hay muchas novedades para mí: estamos haciendo un sistema de información y referencia para un grupo de bancos VTB, en el proyecto estoy desarrollando una arquitectura de microservicios en el módulo Spring Cloud.


Al proyectar el trabajo para estudiar, comprende mejor qué cursos es aconsejable elegir, en qué lugar es mejor preguntarle al maestro, el beneficio en los cursos "largos" es una gran oportunidad.


Código extranjero en github


Recientemente, comencé a mirar muchos códigos de otras personas en GitHub, estudiar bibliotecas y marcos, analizar cómo los desarrolladores geniales resuelven sus problemas y poner en práctica sus métodos.


Sucede así. Cuando veo un momento difícil, tomo un pedazo de papel, un bolígrafo y dibujo un diagrama de clases, variables y relaciones. Sin una hoja de papel en GitHub, esto no es muy conveniente de ver, ya que para cada clase debes abrir tu propia pestaña. Para simplificar, conecto el IDE y miro la ejecución del código de depuración paso a paso.


Por supuesto, la mayoría del código de "espionaje" fue escrito por desarrolladores occidentales, simplemente debido a la popularidad de GitHub. Todos son personas abiertas, por lo que si no puede resolverlo por su cuenta en algún lugar, puede escribirles y preguntar sobre algunos puntos, responderán con gusto.


Cuando trabajaba en Glosav, usaba la biblioteca GraphHopper. A menudo iba a un foro donde, en un hilo separado, el fundador del producto respondía preguntas de otros programadores.


Cuando logro trabajar con desarrolladores geniales, también presto atención a cómo escriben. A veces, en los cursos, noto que el maestro tiene un código elegante y hermoso. Como resultado, estoy seguro de "diseccionar" todo, estudiarlo cuidadosamente y enfatizar cosas nuevas para mí.


Libros de papel


El formato de los materiales debe ser lo más diverso posible, por lo tanto, los libros en papel no deben abandonarse en ningún caso. Por ejemplo, tengo un gran estante separado con publicaciones de programación. Y siempre llevo algo conmigo para leer en el tren o en el metro. Para tal lectura no necesita dedicar mucho tiempo, lo principal es hacerlo regularmente.


Si eres un desarrollador principiante de Java, aquí está mi libro personal que debes leer:



De los nuevos productos puedo aconsejar:



No me obligo a tomar todos estos cursos ni a leer libros sobre programación; solo estoy interesado en este tema y veo que los nuevos conocimientos me ayudan a mejorar mi trabajo actual. Al mismo tiempo, entiendo perfectamente que la programación es un oficio en el que debe llenar su mano, mantener el minimalismo en el código y no verter toda la teoría que estudió allí. Este tipo de trabajo me recuerda al aikido de alguna manera: sabes y entiendes mucho, pero aplicas puntos efectivos con los medios más adecuados.

Source: https://habr.com/ru/post/es433204/


All Articles