- Por qué es tan difícil aprender a programar por ti mismo
- Pasos para convertirte en desarrollador de software
- Consejos para verdaderos principiantes
- Consejos para la Etapa Intermedia
- Conviértete en un profesional: Domina la entrevista técnica
Es cierto: los roles como desarrollador de software no requieren educación formal. Según el CEO de Apple, Tim Cook, ni siquiera necesitas un título universitario para tener éxito en la industria tecnológica.
Pero el hecho de que no necesites un título no significa que sea fácil convertirse en desarrollador de software. ¿Podrías aprender de manera autodidacta? Claro que puedes, pero es muy, muy difícil.
En este blog, desglosaremos por qué es difícil convertirse en desarrollador y los pasos que puedes seguir si quieres darle una oportunidad a esta carrera.
Aclaración: nuestro consejo en este blog se centrará en el desarrollo web full stack.
Por qué es tan difícil aprender a programar por ti mismo
Convertirse en un desarrollador de software partiendo como un principiante total requiere mucho tiempo, práctica y paciencia. Además de adquirir nuevas habilidades, también estás desarrollando un estilo de pensamiento diferente que es totalmente algorítmico.
Enseñarte a ti mismo, además de ser un trabajo de tiempo completo, será extremadamente difícil, ya que debes dedicar horas completas a aprender a programar. También necesitarás una gran fuerza mental para mantenerte enfocado y dedicar tiempo constantemente de tu agenda. Por el contrario, incluso si te inscribes en un bootcamp de programación como un verdadero principiante, es probable que pases de 20 a 30 horas a la semana aprendiendo a programar.
Como estimación, puede llevarle de 1 a 2 años de aprendizaje a tiempo parcial aprender por ti mismo cómo crear una aplicación o sitio web básico. Lo cual aún no será suficiente para convertirte en un desarrollador profesional de software.
Sin mencionar que aprender a programar puede ser muy frustrante, sin importar en qué nivel te encuentres, o ya sea que estés aprendiendo por tu cuenta o tomando un curso. La resolución de problemas y la corrección de errores son aspectos importantes de ser un desarrollador.
También tendrás acceso a todo el contenido educativo sobre programación que existe. Será difícil saber qué es esencial y correcto para un principiante (y qué no lo es). Sin orientación, descubrirás “qué es qué” de la manera más difícil: practicando durante horas lo que estás aprendiendo. Podría ser un proceso doloroso de prueba y error.
Será más fácil dependiendo de tu formación: formal o personal.
Tu experiencia podría mejorar tus posibilidades de aprender por ti mismo con éxito. Si tomaste una clase de programación en la escuela y tienes conocimientos básicos, es posible que los aprendas más fácilmente que alguien completamente nuevo en tecnología. Amigos o familiares en el espacio tecnológico también podrían mejorar tus probabilidades de éxito. Estarás más familiarizado con el campo de desarrollo de software en general y, lo que es más importante, tendrás mentores que te ayudarán a mantenerte en el camino de aprendizaje correcto.
Que conste, los desarrolladores autodidactas existen
Aunque es difícil aprender por ti mismo, hay muchos desarrolladores de software autodidactas en la industria tecnológica. Cada año, StackOverflow encuesta a su comunidad de desarrolladores para obtener más información sobre ellos, y más del 30% de los desarrolladores profesionales en la plataforma no tienen un título universitario en Informática/Ingeniería.
En el lado positivo, es difícil pero más fácil que nunca
Hay una gran cantidad de universidades, bootcamps y excelente contenido en línea que pueden ayudarte a convertirte en desarrollador de software, y tenemos mucha suerte porque hace 20 años estas opciones no eran fácilmente accesibles. Si bien el desarrollo de software solía ser un nicho, con solo unas pocas personas que realmente sabían lo que estaban haciendo, en estos días hay muchos desarrolladores, creadores de contenido y cursos de programación para ayudarte a aprender.
Pasos para convertirte en desarrollador de software
Bien, ahora que sabes por qué es difícil aprender por ti mismo, cubramos algunos de los elementos esenciales en el viaje para convertirte en desarrollador. Ya sea que elijas ser autodidacta o inscribirte en un curso, estos son nuestros mejores consejos en función de tu nivel de experiencia.
Aclaración: hay muchos caminos para convertirte en desarrollador. Nos centraremos en el desarrollo web como tu punto de inicio.
Consejos para verdaderos principiantes
Considera buscar programas introductorios, asistir a un bootcamp o incluso asistir a un taller en un colegio comunitario para ver si es para ti. Consulta también los cursos de Code Academy y los tutoriales de YouTube como posible punto de partida.
Debes concentrarte en aprender el desarrollo front-end básico y comprender cómo funciona la web en general: el “panorama general”. Tu tiempo como verdadero principiante estará superado si puedes crear una aplicación web básica en HTML, CSS y JavaScript. Back-end no es requerido en nuestra opinión.
En resumen, estas son las tecnologías que necesitas aprender y en este orden:
- HTML
- CSS
- JavaScript
Ir más allá del nivel principiante
Es hora de entrar en la programación ‘real’ como dicen muchos desarrolladores. Es hora de elegir un lenguaje de programación de back-end. Recomendamos cualquiera de los siguientes:
- Java
- C#
- Python ← más amigable para principiantes
Con este lenguaje de back-end, tu objetivo será dominar los siguientes conceptos. Estas son las piezas estructurales y fundamentales de la programación.
- Condicionales
- Loop
- Funciones
- Clases
Como un verdadero principiante, tus recursos para aprender estos conceptos son los mismos: contenido en línea, colegios, universidades o bootcamps. Solo espera que el contenido sea mucho más difícil. A diferencia del desarrollo front-end en HTML, CSS y JavaScript, tu estudio será mucho menos visual y más abstracto y algorítmico.
Una forma divertida de aprender un lenguaje de back-end es intentar construir un pequeño juego. Si buscas en Google, encontrarás muchas ideas divertidas para practicar estos fundamentos.
Consejos para la Etapa Intermedia
Uno de tus principales objetivos aquí debería ser crear una aplicación full stack por ti mismo. Debes conectar el front-end que creaste en HTML y CSS con un lenguaje del lado del servidor back-end, y a su vez conectarlo a una base de datos. También será beneficioso para ti elegir un libro de texto para profundizar en un lenguaje de back-end. Luego toma este aprendizaje y aplica una lógica de programación más compleja a tu aplicación.
Si puedes crear una aplicación full stack, creemos que estás en buena forma para considerar el desarrollo de software como una carrera de tiempo completo.
Características que podrías construir:
- Crea una función de chat en tu aplicación web
- Crear un proceso de inicio de sesión para los usuarios.
Conviértete en un profesional: Domina la entrevista técnica
Nuestro mejor consejo es obtener una copia de “Cracking the Coding Interview” y dominar los fundamentos que te enseña. Este libro es esencialmente un estándar de la industria en la preparación de entrevistas técnicas para roles de ingeniería de software. Es muy eficaz, popular y utilizado por proveedores de educación en todos los ámbitos, desde universidades hasta vloggers en YouTube.
Este consejo puede parecer decepcionante, pero la entrevista técnica suele ser el paso más importante en el proceso de reclutamiento de un desarrollador de software. Y este libro es uno de los mejores recursos que existen.
Así que asegúrate de tener un portafolio de trabajo para mostrar y prepárate para tu entrevista técnica.
Consejo final
Convertirse en desarrollador de software es más fácil de decir que de hacer. Solo hemos divisado la superficie de lo que necesitarás aprender, pero al menos ahora tienes lo esencial frente a ti. ¡Buena suerte en tu estudio!
También considera lo siguiente como nuestras últimas palabras de consejo:
- Encuentra un mentor en LinkedIn o a través de tus contactos personales
- Únete a reuniones, conoce a otros aspirantes a desarrolladores con ideas afines
- No subestimes el poder de pedir ayuda. ¡A los desarrolladores les encanta programar y les encanta ayudar a otros en el campo!