Continuación de la historia del “enikey barbudo”. La parte anterior está aquí . ¡Más de 20 años después o finalmente me convertí en uno!  Parte 4 - 1

Cuarto intento

Como probablemente habrán adivinado ustedes, queridos colegas, se me rompieron las alas: salí volando de la entrevista con estrépito. Un desarrollador aún debe poder programarse a sí mismo y no sólo comprender el código de otra persona y corregir errores. 24 niveles en javarush.ru, e incluso medio olvidados en ese momento, claramente no eran suficientes. Luego comenzó un nuevo proyecto y el aprendizaje de Java tuvo que quedar en suspenso. Me convencí de que esto no sería más de un mes. Luego, a las dos. Entonces otra vez. Y luego me di cuenta de que ya había tenido una situación similar en mi vida, cuando tenía miedo de salir del "pantano", y no salió nada bueno de ello. Y ahora la situación, se podría decir, es ideal: las empresas extranjeras literalmente han "limpiado" el mercado de personal y la demanda de desarrolladores de Java es enorme. Tenemos que tomar una decisión. Es necesario, pero no está claro qué se debe hacer exactamente. Aunque, de hecho, no está claro por qué: se acercan las vacaciones de verano y hay un sitio web javarush.ru. Surgió un plan muy obvio:
  1. Llega al nivel 30 lo antes posible;
  2. hacer una tarea de prueba;
  3. llegar al proyecto real de otoño, para el que faltaba aproximadamente un mes y medio;
  4. terminar un proyecto real;
  5. recibir una oferta.
Todavía no he decidido qué hacer a continuación: quedarme en esta empresa o mudarme a otra, pero tuve tiempo más que suficiente para pensar en ello: al menos seis meses. Entonces, aún no se conoce el contenido de la tarea de prueba para el proyecto, pero está claro que será una aplicación web que utilizará Spring . Decidí comenzar estudiando Spring, y con la cuarta versión actual, la mayoría de los libros describen la tercera. La búsqueda condujo al libro “Spring 4 for Professionals”, cuarta edición (originalmente Pro Spring 4). La elección resultó ser un gran éxito: junto con el código fuente de los ejercicios descargados del sitio web del libro, recibí un excelente tutorial que literalmente me llevó paso a paso desde la creación de una aplicación de consola simple con inyección de dependencias hasta una completa. Aplicación web desarrollada con Spring MVC, JSP y acceso a datos a través de Hibernate.y APP 2.1. Entre las deficiencias del libro, además de la traducción no siempre de alta calidad, señalaría que todos los ejemplos de código fuente utilizan la configuración Spring xml, y casi no hay ejemplos de configuración Java, que tuvieron que estudiarse de otras fuentes. Mientras tanto, muchos ahora consideran que la configuración xml está desactualizada y su uso en una tarea de prueba es un inconveniente importante. Otros dos libros que me ayudaron mucho son Persistencia de Spring con Hibernate, segunda edición (sobre Hibernate 5) y Persistencia de Java con Hibernate, segunda edición (sobre JPA 2.1), pero vale la pena estudiarlos después del primero. Me gustaría señalar que los tres libros tienen un nivel bastante alto y, para aquellos que buscan la forma más rápida de completar una tarea de prueba, existen formas mucho más sencillas, incluidas tareas de prueba ya preparadas y realizadas por otros. ¿Pero a quién se engaña de esta manera? Y ahora vacaciones, IDEA, javarush y nivel 24. Lo pasé con un silbido y seguí adelante. Resultó que el período de "liderazgo de equipo" no fue en vano, me di cuenta de muchos de mis errores pasados ​​y resolví fácilmente problemas que antes no habían sido posibles. Niveles 25, 26, 27... Detente, si me muevo a este ritmo, solo llegaré a la tarea de prueba al final de las vacaciones. Realmente no quería, pero tuve que usar un truco que se encuentra en las páginas del foro. Bien, hay el nivel 30 y una tarea de prueba, ¿qué tenemos ahí? Bueno, en principio, después del libro "Spring 4 for Professionals" está claro por dónde empezar, pero ya veremos. Sí, ya veremos. Para que esta... no muy buena aplicación, que aún no tenía una sola línea de código significativo, pudiera simplemente iniciarse, me senté sin parar desde las 4 pm hasta las 6 am. Malditas dependencias que siempre faltan, conflictos de versiones de componentes y una profunda reverencia al desbordamiento de pila. Bueno, en ese momento ya dominaba Maven y Google. Bueno, ¿por qué no dice en ninguna parte que las "envolturas de pies" de los seguimientos de la pila Spring no deben descifrarse "desde el principio", sino "desde el final"? También tuve que configurar la implementación automática en el servidor de aplicaciones en maven. Después de cargar una aplicación manualmente 20 veces, ya no surge la pregunta de por qué. Luego todo fue un poco más sencillo: algunas cosas no estaban en el libro, pero los ejemplos necesarios se encontraron en Internet. El conocimiento de HTML, CSS y Javascript, adquirido hace muchos años al intentar crear aplicaciones web y luego profundizar en el front-end del sistema, ayudó mucho. También se pusieron a prueba mis habilidades administrativas, porque todo el desarrollo lo realicé, naturalmente, bajo Linux (Ubuntu 16.04). No llegué del todo a las vacaciones, me tomó un par de días más, pero logré cumplir con el plazo con un amplio margen. Cheque... aceptado. Después de mis vacaciones, el trabajo me recibió, digamos, con hostilidad. Parece que la profesión más antigua decidió interferir con mis planes... Continuará .