El día de hoy te voy a explicar exactamente como aprendí a programar usando Java y cómo conseguí mi primer oferta de trabajo en tan solo 3 meses sin tener un título universitario como ingeniero de software.
También estaré hablando de temas como cuánto tiempo te va a tomar a ti, si creo o no que esto lo puede aprender cualquiera, y un par de consejos si quieres aprender más rápido o mejorar en tu entrevista.
Por Qué Renuncié a mi Trabajo

Después de graduarme como ingeniero eléctrico en Estados Unidos, empecé mi primer trabajo en una planta que manufactura productos para casas hechos en cemento. Y yo sé lo que vas a decir: “bueno, pero ya tenías un título como ingeniero eléctrico, eso seguramente te ayudo a conseguir el trabajo”.
La verdad es que durante la universidad solo tomé una clase de programación en C/C++, la cual no me gustó nada porque odiaba al profesor que la enseñaba. Pasé esa clase de milagro copiándome de amigos que tenía en esa clase. Así que después de graduarme, no tenía ni idea de cómo programar.
El rol que tenía en la empresa en la que trabajaba era mucho más relacionado con gestionar proyectos que de ingeniería como tal. Si me daban un problema, yo era el encargado de llamar a contratistas para que diseñaran y arreglaran esos problemas, de cuadrar los horarios para que no hubiera conflictos con otros proyectos, llenando formularios de seguridad, y cosas por el estilo.

Empecé a sentir que lo que estaba haciendo lo podía hacer cualquier otra persona que no necesariamente fuera un ingeniero. Sentía que estaba en una posición en la que podría ser fácilmente reemplazado por alguien más. Pero sobre todo, el trabajo que estaba haciendo no me emocionaba en absoluto.
Por Qué Aprendí Programación

Decidí renunciar para aprender programación por la demanda que hay por desarrolladores, el poder trabajar desde la casa, los salarios. Pero sobre todo porque me interesaba el hecho de que los desarrolladores resuelven los problemas ellos mismos, constantemente están aprendiendo nuevas cosas, y que las cosas en las cuales trabajan realmente son emocionantes. Me empecé a imaginar lo que sería trabajar en una empresa como Apple.
LO QUE APRENDÍ

Empecé una certificación como desarrollador full stack en marzo del 2022, la cual duraba hasta junio de ese mismo año. Durante todo ese tiempo, no estaba trabajando, así que me tocó vivir de mis ahorros. La certificación fue gratis con la condición de que yo les tendría que pagar un porcentaje de mi salario si conseguía un trabajo como desarrollador durante mi primer año.
La verdad es que el entrenamiento fue bastante intenso. Era de lunes a viernes desde las 8 am hasta las 4 pm (a veces incluso hasta más tarde) por Zoom, y yo estudiaba y trabajaba en proyectos personales durante por lo menos unas 2 o 3 horas extra al día. Pero el hecho de que fue así de intenso, me ayudó a comprometerme más en aprender todo lo que pudiera.
Desarrollo full stack quiere decir saber backend y frontend.
El backend es en donde toda la lógica de la aplicación o de la página web está (guardando información en la base de datos, trabajando con servidores, en donde se integra la seguridad de la página, etc.)
El frontend, por otra parte, se encarga de crear todos los componentes visuales que los usuarios van a ver y con los cuales van a interactuar (creando botones, colores de la página, animaciones, etc.)
El curso se enfocó más en el backend, y tengo que decir que me pareció más interesante porque me gustó mucho poder crear la lógica de mi página web. El frontend me pareció un poco más aburrido porque se deben manipular detalles como el borde de los botones, lo cual me pareció un poco tedioso.
En el entrenamiento aprendí muchísimos temas como:
- Programación orientada a objetos (polimorfismo, herencia, encapsulación, y abstracción)
- Java 8 (tipos de datos primitivos, bloques condicionales, loops, overloading y overriding de métodos, excepciones, paquetes, colecciones, multithreading, expresiones LAMBDA, interfaces funcionales, etc.)
- XML
- Servlets
- Servidores
- SQL
- JDBC
- API’s
- Spring Boot (Spring JPA, Spring Security, Spring MVC, Spring Rest API)
- Servicios web RESTful
- Tipo de diseño Singleton
- Fundamentos de JavaScript, TypeScript, HTML, y CSS
- Angular (como estructura del frontend)
Y creo que me olvido de mencionar un par de cosas.
Si estás interesado, estaré creando un curso completamente gratis de cada uno de los temas que aprendí en esta página, en el cual vas a poder aprender a tu propio ritmo. Así que no olvides suscribirte a mi canal de YouTube, o de dejar tu email en esta página.
Cuánto Tiempo te Va a Tomar

Obviamente, el tiempo que te va a tomar para convertirte en desarrollador va a depender completamente del tiempo que le metas a diario. No todos pueden estudiar todo el día, pero si te daré un consejo: apenas sientas que has aprendido lo suficiente para saber si te gusta programar o no, invierte en un curso.
Y no hablo de un curso caro. Hay muchos cursos buenos, bonitos, y baratos en sitios como Udemy. La razón por la que te digo que inviertas así sean $15 en un curso es porque, ¿cuándo fue la última vez que te tomaste un curso de YouTube en serio? No digo que no haya excepciones, pero la mayoría de la gente relaciona el precio de un curso con su calidad, incluyéndome.
El año pasado quise aprender JavaScript, y solo el hecho de invertir $20 en un curso me hizo sentirme más comprometido. Es como cuando decides hacer ejercicio por tu cuenta versus pagar por una membresía de un gimnasio. Esa membresía no necesariamente te dará mejores resultados, pero si te puede ayudar a comprometerte más.
Otra razón para invertir en un curso, es que la información normalmente está mejor estructurada, y hace énfasis en las cosas que te deberías enfocar un poco más o no.
No sé cuanto tiempo habré perdido en mi tiempo libre, solo buscando la mejor vía para aprender. De hecho, si estás viendo este video, puedo apostar a que alguna vez has empezado un video con alguien y no lo has acabado. También, los cursos normalmente te ayudan a filtrar la información que es crucial versus la que es solo “bueno saberla”.
En conclusión: invertir en un curso te puede ahorrar mucho tiempo y motivarte aún más.
Todo el Mundo Puede Aprender

No te diré que aprender a programar es fácil para cualquiera, pero genuinamente pienso que cualquier persona puede aprender, mientras que esa persona esté comprometida a estudiar, y a estar emocionada por aprender nuevos temas.
Cuando me di cuenta de que me parecía muy interesante programar, me hice el compromiso de que, a pesar de que iba a estar 8 horas al día aprendiendo en mi entrenamiento, iba a repasar cada concepto durante por lo menos unas 2 o 3 horas extra cada día.
Yo no soy nada especial: no soy el mejor en matemáticas, mis notas durante la universidad y el colegio fueron bastante promedio, mi memoria es terrible, y definitivamente no soy el más inteligente. Pero, me comprometí a mí mismo a aprender.
También el hecho de ir cambiando de temas a algo completamente diferente, como pasar de backend a frontend, me emocionaba muchísimo. La programación es un campo que cambia constantemente, así que si no estás dispuesto a aprender nuevas cosas, se te va a dificultar un poco más.
Cómo Conseguí mi Trabajo

Aún no he dicho cómo conseguí mi trabajo a pesar de que ese era el título del video, pero mejor tarde que nunca, ¿no?
A los dos meses del entrenamiento me di cuenta de que ya había aprendido lo suficiente para empezar a aplicar a trabajos. En ese punto no había aprendido prácticamente nada de frontend, así que apliqué mucho a posiciones como desarrollador backend.
Durante todo ese último mes apliqué a unos 150 o 200 trabajos únicamente con mi hoja de vida, en donde incluía todo lo que iba a aprender al finalizar el entrenamiento, y 2 proyectos personales que hice durante ese tiempo.

Al final, después de como 30 entrevistas falladas, tuve la suerte de que me mandaron una oferta de una posición como desarrollador full stack de una empresa con la cual solo tuve una entrevista, no tuve que resolver ningún desafío de programación, y voy a estar trabajando 100% desde la casa.
Cuando acabó el entrenamiento le empecé a preguntar al resto de la clase a cuántas empresas habían aplicado, y ninguno había aplicado a más de 10.
Por eso digo que no tengo nada especial, solamente me comprometí más que el resto de la gente.
El último consejo que es crucial es, sobre todo cuando empieces a recibir entrevistas, poder resolver desafíos de programación.
Empieza a practicar este tipo de desafíos en páginas como HackerRank, o LeetCode lo antes posible, porque el 80% del tiempo, ese tipo de retos van a ser el primer filtro de la entrevista. Entre antes te prepares para ellos, mejor.
Tener mi título como ingeniero eléctrico probablemente me ayudó a conseguir más entrevistas, pero el poder pasar esos desafíos no lo podía conseguir únicamente con ese título.
Conclusión

Aprender a programar le dio un giro completamente diferente a mi carrera, y tengo que decir que he disfrutado mucho aprendiendo. Es una habilidad que siempre va a ser valiosa para las empresas ahora, y en el futuro.
Si quieres convertirte en un desarrollador, estaré poniendo mucho contenido en mi canal de YouTube (y en esta página) no solo técnico, sino también de estrategias que he usado para ser más productivo, de cómo aprender más rápido, y muchísimas cosas más. Así que no olvides suscribirte, y de dejar tus datos acá para ser el primero en enterarte de todo mi nuevo contenido.
Gracias por leer este post y nos vemos en la próxima. Un abrazo.

Hola Nico.Gracias por tu experiencia, realmente inspira. Estaria muy cool que comentaras mas sobre las paginas o recursos que utilizaste para buscar empleo.
Gracias bro! Para buscar empleos usé mas que todo LinkedIn, Glassdoor, e Indeed. Un abrazo
Te felicito Nico, Me identifico contigo por la experiencia laboral también deje mi empleo y quiero dedicarme a esto y estoy aprendiendo todo como poder comenzar en este momento estoy en la parte inicial del proceso para empezar estudiar, seguiré de serca tus videos y espero contar con tu apoyo. Saludos
PON LA LIGA DONDE TOMASTE ESE CURSO SUENA INTERESANTE QUE YA HASTA LO QUIERO TOMAR YO!
Hola Nico.Gracias por tu experiencia, realmente inspira. Estaria muy contento y agradecido si me dijeras como se llama el entrenamiento o la certificacion que tomaste. Ya que soy estudiante del 5to ciclo de ingenieria de software y te soy sincero hasta ahora no he aprendido bien a programar. Y queria tomar uno de esos enytrenamientos como Make it real, Soy henry o Acadenlo. Pero quisiera sabber cual tu tómaste porque ninguno de ellos me da confianza la verdad. Por favor comentame que entrenamiento y de que empresa o academia tomaste y prometo apoyarte en tu canal de youtube diciendole a mis seguidores de instagram que te sigan y compartiendo tu pagina en redes sociales. Pero por favor ayúdame; estoy seguro de quer tu experiencia ayudara a muchas personas que como yo quieren verdaderamente dedicarse y aprender a programar. Muchas gracias de antemano.
Gracias Nico, es muy inspirador tu caso y me gustaría poder aprender un poco de tu experiencia, un abrazo…