Dicen que la gente sin educación técnica no tiene cabida en la programación. Intentan asustarte para que no pienses en un cambio de carrera después de cumplir los 30 años. Pero, ¿y si solo a los 30 años queda claro que todo su conocimiento y experiencia previos lo llevaron al destino equivocado?

En realidad, no da tanto miedo. Cualquiera puede convertirse en programador a cualquier edad. Esta es la historia de PielsLie, uno de nuestros estudiantes de San Petersburgo cuya formación académica es en humanidades y que trabajó durante 10 años en administración y ventas.

En el momento en que escribió su historia de éxito, tenía 32 años. En aproximadamente 5 meses, alcanzó el nivel 35 en CodeGym. Pasó 2-3 meses en proyectos de autoeducación y escritura, y unos meses más buscando trabajo. En ese momento, recibió una buena oferta y consiguió un trabajo como desarrollador de software.

PASO 1. Aprendizaje

Los requisitos para la principal fuente de aprendizaje eran claros: una presentación estructurada del material de Java Core, mucha práctica y una gran comunidad:

  • durante las entrevistas, es posible que se le pregunte cualquier cosa sobre el "conocimiento central", desde el cambio de bit a bit y el lanzamiento de genéricos hasta IO y serialización;
  • la práctica es obligatoria; puede recordar cosas en la programación si comprende profundamente el material y lo refuerza a través de la práctica;
  • Y en cuanto a la comunidad: si resuelves una tarea, adelante y presumir en los comentarios; si no puede resolverlo, puede hacer preguntas, pero es probable que nadie le dé una solución preparada.

En todos los aspectos, CodeGym cumplía los requisitos para ser la principal plataforma de aprendizaje. El licenciado recomienda reforzarse con la lectura de libros: "Este mismo Schildt cubre mejor el tema en cuestión y, a menudo, deja al descubierto ciertos puntos".

Consejos para aquellos que se acercan a su aprendizaje de Java con una pizarra limpia

  1. Todos los que empiezan desde cero encuentran que el viaje es difícil. No un gran porcentaje de los que comienzan llegan al final del curso. Tu objetivo es convertirte en uno de los que lo hacen.
  2. Experimentará el mayor entusiasmo después de un mes o dos, cuando las tareas se vuelvan más difíciles e interesantes. Perdurar.
  3. Lo más importante es hacer progresos semanales. Después de tomarse un descanso de dos semanas, es un desafío volver a la carga, pero no todos pueden escribir código todos los días durante varios meses seguidos.

Fíjese un objetivo, medido en horas por semana: por ejemplo, 15. Puede programar 1,5 horas todos los días de la semana y otras 3-4 horas cada día del fin de semana, o puede descansar un par de noches, pero luego su La "cuota de fin de semana" aumentará. Si lo hace de esta manera, su horario será flexible pero consistente. Por supuesto, más adelante podrá medir su trabajo en términos de tareas y proyectos completados, pero cuando hablamos de sintaxis y conocimiento básico, tiene sentido trabajar en horas.

En total, se necesitaron alrededor de 5 meses para completar el curso (antes de acceder a la pasantía), incluidas vacaciones y descansos, y eso se logró con una semana laboral estándar de cinco días que solo dejaba tiempo libre los fines de semana y entre semana de 10 PM a medianoche.

Entonces, si tiene un horario más abierto o adopta un régimen de entrenamiento más riguroso, podría hacerlo mucho más rápido.

PASO 2. Autoeducación

Al alcanzar el nivel 35, durante varios meses exploró de forma independiente Spring MVC, Spring Boot + Data, Spring Security, Hibernate, jUnit, Maven, Git y RDBMS, y dominó SQL y reunió todo este conocimiento en un todo unificado. Seis meses después, el estudiante tenía proyectos que le dieron experiencia práctica en el uso de marcos de trabajo "para adultos", así como un perfil de Github, que podía mostrar si un empleador potencial lo solicitaba.

Cómo crear un plan de desarrollo personal

  1. Revise las ofertas de trabajo para puestos de desarrollador de Java junior/intermedio (o alguna otra área de interés) y vea qué tecnologías y marcos se mencionan con más frecuencia.
  2. Sueña y escribe algunas tareas de prueba para ellos. Establezca plazos para que usted mismo los implemente.

PASO 3. Buscando trabajo

Esta etapa fue la más larga y no tan suave como las dos anteriores.

Enviar un currículum de novato honesto

Después de completar proyectos personales, el estudiante envió aproximadamente 30 solicitudes para vacantes de aprendices/junior (a través de HH, LinkedIn y agencias de personal), indicando la pila de tecnología familiar en su currículum, junto con algunas habilidades interpersonales y una modesta mención de su experiencia.

Esto produjo dos llamadas, una de las cuales terminó de inmediato debido a sus habilidades de inglés pre-intermedias (así que aprende inglés también). Dos empresas más enviaron sus tareas de prueba. Tuvo una "entrevista" que resultó en un "te llamaremos".

Intentando obtener una pasantía

¿Quizás pueda adquirir experiencia a través de pasantías no remuneradas o con pago condicional y de alguna manera obtener un punto de apoyo en una gran empresa de TI? Este es un buen enfoque, pero resulta que no es para todos. El autor de la historia realizó la tarea de prueba, pero no pasó de la entrevista final.

Después de esta experiencia, nuestro antiguo alumno escribe que "se deprimió un poco y puso en pausa toda la búsqueda de trabajo durante casi seis meses". Trabajó en su profesión anterior y escribió algunas aplicaciones para sí mismo.

Esto continuó hasta que se encontró con un conocido con quien compartió sus fallas al encontrar un trabajo de desarrollador junior. En ese momento, su conocido trabajaba como desarrollador de nivel medio, pero él comenzó de la misma manera: con el autoaprendizaje.

Su amigo le dio un par de recomendaciones (algunos "trucos", según el autor):

  1. De una forma u otra, obtenga más de 6 meses de experiencia profesional en su currículum: pasantías, proyectos de tesis, trabajo independiente, trabajo remoto, lo que sea. Esto será de gran ayuda en la etapa en que la gente de recursos humanos haga su evaluación inicial de la pila de currículums;
  2. Elimine la palabra "junior" y su salario esperado de su currículum; simplemente deje "desarrollador de Java" y discuta su salario individualmente con cada empresa;
  3. Intente que la persona de Recursos Humanos divulgue el posible rango de salario antes de exponer sus expectativas. Si una empresa ofrece entre 5000 y 6500 dólares y usted está dispuesto a comenzar por $2000, algunas personas que toman las decisiones de contratación tendrán una mala opinión de usted.
  4. Responda a cada vacante de trabajo que coincida con su pila de tecnología, incluso si se requieren de 1 a 3 años de experiencia profesional.

Y todo salió bien.

Primera oferta

Después de que el autor de la historia siguió las recomendaciones, la situación de búsqueda de empleo mejoró significativamente.

Primero, de aproximadamente 12 respuestas nuevas, la mitad terminó casi de inmediato con una reunión en persona, una entrevista por Skype o una tarea de prueba.

En segundo lugar, los representantes de recursos humanos comenzaron a comunicarse por iniciativa propia, a través de aplicaciones de mensajería, correo electrónico y LinkedIn.

En tercer lugar, los requisitos sobre la experiencia profesional resultaron ser algo flexibles: muchas empresas estaban listas para comunicarse con un candidato que no encajaba en el rango especificado de 1 a 3 años de trabajo en el mundo empresarial.

El resultado final fue una oferta para un puesto de desarrollador junior y otra para un puesto de nivel medio con un período de prueba. En total, la búsqueda de trabajo tomó dos meses.

No se puede escribir una gran cantidad de código Java, luego buscar un trabajo durante mucho, mucho tiempo y finalmente hacer que todo se quede en nada.

El agua desgasta la piedra y, como escribe el autor, "si un estudiante de humanidades de 30 años puede lograrlo, entonces usted también tendrá éxito. Lo principal es no tener miedo de las llamadas telefónicas iniciales, las tareas de prueba y entrevistas. Cada 'fracaso' puede ser una oportunidad para aprender algo nuevo sobre ti mismo y cerrar cualquier brecha en tu conocimiento. Y cada vez te sentirás más seguro".