JavaRush /Blog Java /Random-ES /De ama de casa a programadora

De ama de casa a programadora

Publicado en el grupo Random-ES
¡Buenas tardes amigos! Me alegra mucho que mi primera publicación te haya interesado. Esta es la segunda parte de mi historia. El primero se puede encontrar en el enlace .
De ama de casa a programadoras - 1
Como trabajo como programador web, todas las recomendaciones estarán relacionadas con esta área. ¡Espero que este artículo te dé algo en que pensar y un impulso de motivación!

cuanto estudié

Al darme cuenta de que el tiempo es un recurso limitado, no busqué un nuevo trabajo en ventas, sino que decidí convertirme en la mejor ama de llaves que enseña programación todo el día y cocina comida para mi esposa. Me encontré con el libro "Python para niños" y decidí que si los niños pueden hacerlo, ¿por qué soy peor? Por supuesto, no pensé en ir a hh.ru y ver si alguien necesitaba un programador Python en mi ciudad. Resulta que no. Pero aprendí esto después de tres meses de estudiar. E incluso más tarde aprendí que este idioma no se debe estudiar en absoluto primero, porque... ¡Tiene escritura dinámica y hay muchos conceptos básicos ocultos en su interior que definitivamente necesitas saber! Si de repente alguien decide aprender Python, le recomiendo el canal de youtube ItPropaganda . Todo se presenta aquí de forma muy cuidadosa y detallada. ¡El conferenciante tenía que ser un maestro! En hh.ru me di cuenta de que se necesitaban muchos diseñadores de diseño, así que me cambié a la Web. ¡No importa de qué lado salte, pero quiero subirme a este tren, pensé! Esto tomó los siguientes tres meses. Fue entonces cuando me di cuenta de que la práctica es lo más útil para aprender. La nueva información salió volando más rápido que una bala. Por eso, después de cada nuevo vídeo o libro, intentaba repetirlo todo e incluso escribir algo. Los mejores profesores de maquetación para mí fueron: Ella fue la más útil. La práctica no es realista. No lo recuerdo exactamente, pero tomé el curso interactivo gratuito durante unas dos semanas. Y luego compré uno pagado, pero solo por el diseño Flex.
  • Foxford | Programación WEB para escolares 8-11.
Es como con "Python": si los niños entienden, yo entenderé. Lo encontré en Internet.

Cómo conseguí un trabajo.

Pasaron seis meses de educación en casa y decidí que era el momento. Envié mi currículum a varias empresas para el puesto de ingeniero de software junior y esperé una respuesta. Al cabo de un par de días me contestaron y estaba muy preocupada. Pasé la prueba (era más psicológica) y rellené un formulario estándar en el que indicaba mi experiencia en diversas áreas informáticas (nivel de inglés técnico, conocimiento de idiomas, capacidad para trabajar con git, linux, etc.), en el columna de salario deseada indiqué 5.000 rublos No me importaba cuánto recibiría, estaba dispuesto a pagarles yo mismo, si tan solo me contrataran. Resulta que esta empresa practicaba reclutar estudiantes, prepararlos y retenerlos de forma permanente. Durante la entrevista recordé la frase “hasta los 35 años hay que tomar, absorber y luego dar”. Me contrataron por un período de prueba de un mes con un salario de 15.000 rublos. Este mes fue el mejor de mi vida, logré mi meta deseada y descubrí que sería papá. En mi primer día de trabajo, aprendí que necesitaba construir mi propia computadora, el sistema operativo sería Linux (¿sabes dónde está el súper botón en Linux?), y mi primer proyecto sería crear un microservicio en Java que se ejecutaría en el protocolo Radius . Decir que TODO me sorprendió es quedarse corto. Me tiré glicina más rápido de lo que Usain Bolt corrió cien metros (es broma, claro).

¿Qué dificultades atravesaste?

  • Inglés

    Nivel insuficiente de conocimientos de inglés. Cuando empiezas a trabajar como programador, te das cuenta de que prácticamente no hay respuestas a tus preguntas en ruso. El problema es que no sabes exactamente cómo buscar en Google (pero no te preocupes, todo vendrá con la experiencia). Yandex cambió a Google.

    Establecí como regla escuchar inglés mientras camino por la calle, es decir, “inglés por listas de reproducción” :
    son toneladas de horas de práctica y ya no es necesario buscar otras fuentes para aprender. Vi alrededor de 400 lecciones en un año.

  • Marcos

    Si no tienes mucha experiencia en programación, los frameworks ( hibernate, spring ) son una roca sobre la que puedes romperte y perder la fe en ti mismo. Estos nuevos niveles de abstracción, patrones de diseño, beans, singletons y fábricas son tan incomprensibles que ni siquiera sabes por dónde empezar. Recuerdo que me reí tanto porque el marco "Spring" era tan complejo que crearon su propio marco "Spring Boot" .

    Intentaré darte un vector:

    1. Si no conoce Java, no mire los siguientes puntos, ¡lo básico lo es todo! Lo comprobé, es inútil adentrarse en la naturaleza, aprender de JavaRush.
    2. Conceptos básicos del desarrollo web Java. Para esto es adecuado un curso para un chico con mucho talento, que ahora tiene entre 22 y 23 años. Es tan genial que lo encontré específicamente en contacto e incluso quise ir a Kazán y tomar cursos con él. enlace , también un enlace a github de todos los proyectos
    3. Qué se necesita para trabajar con una base de datos, explica maravillosamente este amigo
    4. Bueno, algo nuevo es el canal let's code . Calidad, presentación, relevancia -¡todo esta bien! Habla sobre Spring Boot .
  • No recomiendo javabegin . Cuando necesitaba aprender Spring rápidamente, compré tontamente su curso. La explicación es repugnante. Me pareció que no sabía de lo que hablaba, simplemente encontró un tutorial de inglés e hizo un curso en video.

  • Linux (sistema operativo), Git (sistema de control de versiones).

    Para mí, trabajar en la línea de comandos me parecía algo sobrenatural. Resultó que en el mundo de la programación las interfaces web no son muy apreciadas: los verdaderos programadores deben hacer todo a través del terminal. Linux es un sistema operativo gratuito y de código abierto, y la gran mayoría de los programadores trabajan en él (MacBook tiene los mismos comandos). Git es el sistema de control de versiones de tu programa, el estándar para todos los programadores.

    Aquí puedo recomendar este sitio interactivo para aprender git . La extensión de Google Chrome , Octotree , es algo así como un comandante total para GitHub . Bueno, instala Linux tú mismo : es realmente genial, ¡tiré Windows a la basura!

Resumen:

La programación es un mundo enorme que da una vida interesante. Sí, es difícil al principio, sí, es difícil, pero eso es sólo el comienzo. Seguí adelante obstinadamente y llevo un año trabajando como programador full stack, duplicando mi salario, aprendiendo lenguajes como Java, Python, Kotlin, Typecript, JavaScript; marcos como Spring y React. Reescribí el antiguo repositorio autoescrito de un gran proyecto en Redux y creé un microservicio en Spring Boot. Ahora estoy ejecutando un proyecto en Spring4, que también está en XML. Y si yo pude hacerlo, tú también puedes. Lo principal es ver un gran objetivo por delante y avanzar hacia él sin miedo a lo desconocido, y sus esfuerzos definitivamente darán sus frutos. Bueno, si a alguien le interesa que escriba, continuaré mi historia. Los temas podrían ser:
  1. Patrones de diseño (ejemplos reales en los que tal o cual patrón puede resultar útil).
  2. Tipos de autenticación, autorización.
  3. OAUTH2.0 en Spring Boot.
  4. Revisión de topjava (Spring5)
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION