De humanista a desarrollador en números y colores

¡Hola Habr! Llevo mucho tiempo leyéndote, pero aún no me he atrevido a escribir algo propio. Como de costumbre (hogar, trabajo, asuntos personales, aquí y allá), y ahora nuevamente pospuso la redacción del artículo hasta tiempos mejores. Recientemente, algo ha cambiado y les diré lo que me impulsó a describir una pequeña parte de mi vida sobre cómo convertirme en desarrollador con ejemplos que pueden ser útiles para principiantes, escépticos y chicos que francamente no creen en sí mismos. ¡Ir!

Empezaré desde lejos: cuando era niño, mis padres me regalaban una gran cantidad de enciclopedias y libros para todas las ocasiones. Cualquier motivo para regalar es un libro. Entonces, por supuesto, no les estaba agradecido, sino que simplemente lo di por sentado. Pero con el tiempo, hablando con otras personas, llegué a una conclusión extraña: muchos no sabían lo que yo sabía, no escucharon nombres, conceptos, conceptos, no leyeron autores y no vieron películas. En ese mismo momento vino una intuición: aquí está, CONOCIMIENTO. Durante mucho tiempo no supe dónde podía aplicar todo esto, porque simplemente comunicarse con la gente no paga de ninguna manera, y la profesión de contar historias interesantes no existía en ese momento (ahora hay algunos blogueros , YouTube, TED-ED, etc.). Estudié inglés, larga y minuciosamente, porque... "Era prometedor y sería útil en el futuro"; en ese momento, por supuesto, no había confianza en mi futura profesión, por lo que con "No quiero" me llevaron a clases una y otra vez. Ahora, por supuesto, estoy increíblemente agradecido de no haber saltado en ese momento y haber conseguido una buena base, lo que, por supuesto, jugó un papel importante a la hora de elegir mi futura profesión.

No soy un simple humanista, sino un “híbrido”: tengo habilidades sociales avanzadas y me encanta organizar las actividades de las personas, al mismo tiempo estoy interesado en la física, la química, los fenómenos económicos, la informática y los materiales de divulgación científica. ¡En la escuela incluso aprobé exámenes de física y entré a una universidad técnica con un presupuesto limitado! Habiendo postulado a varias universidades a la vez en facultades diametralmente opuestas, hasta el último momento no estaba seguro de qué elegir. Después de presentar la solicitud al presupuesto, firmar todos los papeles y hablar con el decano, mi padre y yo volvimos a casa y nos ocupamos de nuestros asuntos con una sensación de logro.

Sin embargo, cuando me desperté por la mañana, me sorprendió darme cuenta de que un pensamiento molesto y punzante se había instalado en mi cabeza: "Necesito ir a ped (pedagógico)". ¿Cómo se formó allí: de forma independiente o como resultado de procesos en la sombra, como Mendeleev, cuando sistematizó datos en un sueño, adquiriendo conocimiento de la tabla de elementos periódicos? Nunca lo sabré, pero fui con mis padres, les describí el problema, recibí algunas evaluaciones bastante jugosas de mis procesos de pensamiento actuales, su dirección y desarrollo general, pero no retrocedí.

Al final llegamos a la universidad, tomamos los documentos (aunque lo más probable es que esto fuera ilegal, ya que la inscripción había pasado) y fuimos a postular a otra universidad. Mi padre entonces llevaba el pelo muy corto, acababa de someterse a una cirugía ocular y se había quitado las gafas y, en general, parecía un típico "hermano de los años 90", a pesar de tener dos estudios superiores y experiencia docente. Por supuesto, no podían rechazar un personaje tan colorido. Desde entonces, nunca me arrepiento de haber ingresado en la Facultad de Lenguas Extranjeras.

Al trabajar con niños, me di cuenta de dos cosas:

  • Me gusta mucho, puedo contar una historia interesante, entretejer en la historia información extraída de libros y enciclopedias y, lo más importante, lograr resultados en el campo de la enseñanza del inglés.
  • Hay una falta catastrófica de dinero, incluso si trabajas a tiempo parcial (clases privadas + campamento de idiomas para niños durante todo el año)

Como resultado, después de varios años trabajando como profesora (inglés, alemán y un poco de español), decidí dejar la profesión, porque... simplemente quemado. Probablemente muchos de ustedes estén familiarizados con este sentimiento: parece que el trabajo es el mismo, la misma gente, el trabajo, todo lo que les convenía ayer, pero el alma resiste cada día de trabajo, los errores de los niños se han vuelto internamente molestos, el La paz que siempre ha estado en algún lugar interior comenzó a desaparecer y aparecieron pensamientos de pánico acerca de escapar a algún lugar.

A lo largo de mi carrera, consideré la posibilidad de cambiar mi profesión a algo más relevante, no relacionado con el trabajo con personas, habiendo hecho alrededor de 10 intentos de estudiar lenguajes de programación de forma independiente. C++, C#, Delphi, Python, Pascal, Java: todo esto era complejo, incomprensible, intimidante, lento e improductivo. De hecho, simplemente no tenía suficiente motivación: ni la crisis de 2008-2009 ni los problemas de 2014-2015 cambiaron mi actitud hacia el trabajo. Y cuando llegó el agotamiento emocional, quedó claro que no podía seguir trabajando así, por el bien de los niños, a quienes no quería lastimar.

En 2018, me mudé a Moscú desde Krasnoyarsk con mi novia, ella se transfirió a una universidad local y yo encontré trabajo en una escuela privada de idiomas extranjeros. Un lugar nuevo, un salario digno, gente y sentimientos nuevos: todo esto me permitió darme vida durante unos seis meses, después de lo cual volvieron los viejos problemas.

La decisión final de cambiar de profesión maduró dentro de mí, se trazó un plan, se estudió el mercado laboral y los requisitos para los solicitantes, se desenterraron contactos de amigos y conocidos que al menos de alguna manera estaban relacionados con TI y les destripé el cerebro con mis meticulosas preguntas. . En general, el plan resultó así:

  1. Elige el más sencillo, el más rápido en cuanto a resultados y desde el principio una línea de trabajo que no pague menos que en tu lugar anterior. Se convirtió en desarrollo frontend. Juzgue usted mismo: sabiendo inglés en el nivel C2, la mayor parte del código representaba para mí comandos en inglés mezclados con una sintaxis que recordaba bastante bien (impulsada por pensamientos del estilo de "o esto o no funciona en absoluto"). El resultado en la parte frontal es inmediatamente visible: esta es una página terminada. El pago tampoco está mal, desde 40 mil rublos (según hh.ru). Mi salario en ese momento era de aproximadamente 60-65 + trabajos personales a tiempo parcial por ~20 mil. Esto no fue suficiente, pero cuando tienes que luchar contigo mismo sólo para venir a trabajar, ninguna cantidad de dinero te hace feliz.
  2. Plan de acción y pago: Mi objetivo era más de 60 rublos, así que comencé a estudiar la lista de tecnologías front-end relevantes: HTML, CSS, JavaScript (ES5-6), React. Estos se han complementado con herramientas que facilitan la coordinación y el trabajo con código en diferentes etapas: jQuery, Git, SASS, webpack, VS Code. Esto permitió trazar un plan para estudiar todo esto de forma paulatina, aplicando simultáneamente conocimientos en la creación de sitios web, desmontando e implementando diseños en código y consultando con amigos.
  3. Autoestudio: Desde febrero de 2019 hasta junio de 2019 estudié todo esto, estudiando diligentemente la documentación, leyendo StackOverFlow y buscando respuestas a las preguntas más estúpidas que pudieran surgir. Fue difícil para mí: a veces el código simplemente no quería funcionar como lo imaginaba. Pero no me desesperé: el análisis del ejemplo de código + documentación sugirió dónde cometí un error, qué ingresé mal y qué no completé. Fue entonces cuando elogié a mis padres todos los días por insistir en que aprendiera inglés cuando era niño; después de todo, toda la documentación relevante estaba en inglés.

HTML y CSS fueron los más fáciles para mí: aproximadamente 2 semanas. Durante este tiempo, armé un diseño para el sitio web de algún diseñador usando HTML y CSS puro y recopilé todas las muletas posibles, estudié varios enfoques y me di cuenta de que escribir todas estas líneas manualmente consumía mucho tiempo. Después de buscar un poco en Google, inmediatamente encontré Bootstrap 4 y, habiéndome familiarizado con sus capacidades, comencé a leer la documentación. Después de un par de días de leer cuidadosamente manuales sobre cómo fumar, intercalados con varios videos de capacitación en YouTube, me puse a crear mi propio sitio web totalmente responsivo, con imágenes, tarjetas y animaciones. Esto me llevó aproximadamente 2 semanas, durante las cuales descubrí jQuery como herramienta de manipulación DOM.

Por supuesto, no fue la mejor elección, pero todo fue sencillo y comprensible, y el resultado fue importante para mí. Por cierto, recomiendo no escuchar a programadores interesantes en esta etapa que ofrecen optimizaciones y mejoras, sino simplemente encontrar el caso de uso más común del código, mirar ejemplos y simplemente copiar el estilo. La tarea en la etapa inicial es una: mientras funcione. Sólo entonces podrás pensar en todo lo demás y, cuando trabajes en la empresa, te explicarán y mostrarán los estándares locales que deberás seguir.

Lo más difícil comenzó en la etapa de aprendizaje de JavaScript puro; surgió en mi cabeza una pregunta muy seria: ¿por qué aprender esto si jQuery es más fácil? Fui a Google en busca de respuesta: resultó que jQuery pronto irá a otro mundo, con la excepción del código heredado, y todos los verdaderos programadores usan JS, porque Los marcos van y vienen, pero JS puro sigue siendo relevante. Queremos conseguir un trabajo y hacerlo durante mucho tiempo, ¿verdad? Entonces comencé a mirar videos, intentar escribir código y funciones en sitios de tutoriales y reescribir mis proyectos anteriores. Naturalmente, al principio resultó un poco menos que nada, pero después de un par de días ya no pensé en escribir todo tipo de funciones de flecha (que resultaron ser más simples que las normales), trabajando con selectores document.getElementById. , ordenando matrices y extrayendo elementos de objetos usando .map, .filter, .reduce, trabajado con API y AJAX, etc.

Y no me equivoqué: mientras estudiaba React, me encontré con un montón de código JS que debía analizarse y comprenderse; de ​​lo contrario, nada funcionaría. Respiré hondo y sintiendo un poco de lástima de mí mismo, comencé a ahondar en la esencia del proceso con redoblada fuerza. Muy pronto resultó que React es un HTML (JSX) ligeramente modificado + un conjunto de diferentes herramientas que facilitan la actualización de una página y la creación de una SPA (aplicación de una sola página). Agrega una pizca de JS y tenemos animaciones, carga y transiciones. Una vez acostumbrado a la sintaxis, tomé el primer diseño de tienda en línea que encontré y escribí un SPA simple que me permitió seleccionar categorías, navegar por el sitio y cambiar los contadores de artículos en el carrito.

En general, no hay nada de malo en el hecho de que nunca hayas programado en tu vida, no; si trabajas en ti mismo gradualmente, entonces todo es posible. Incluso sin conocimientos de inglés, hay muchos sitios en ruso que serán suficientes para la etapa inicial. ¡Buena suerte!

Enlace a materiales de formación, canales de YouTube, artículos y todo lo que utilicé en mi formación.

Fuente: habr.com

Añadir un comentario