Cómo me convertí en programador en un año y cómo tú también puedes

por Parker Byrd en Unsplash

Este post pretende ayudar al menos a una persona por ahí que esté en mi lugar hace un año. El consejo aquí es más valioso si usted es serio acerca de convertirse en un desarrollador de software a tiempo completo, pero todavía puede ser de valor si usted está simplemente buscando para ampliar sus habilidades o simplemente curiosidad por el desarrollo de aprendizaje. No se trata de las cosas técnicas, sino de las cosas importantes de más alto nivel.

Hace aproximadamente un año y medio, me enfrenté a la difícil decisión de dónde llevar mi carrera a continuación. Mi trabajo como gestor de proyectos contratado llegaba a su fin sin prórroga. El mercado laboral para los gestores de proyectos es duro y competitivo, pero el problema mayor estaba en mi interior. Aunque había trabajado para grandes equipos y organizaciones grandes y pequeñas, no me estaba divirtiendo tanto como esperaba. Me sentía como si fluyera a contracorriente, sin hacer lo que debía hacer.

Tomé la decisión más difícil de dedicarme a la programación, lo cual era un poco loco dadas las circunstancias. Tenía un título de negocios y ninguna experiencia real en programación, aparte de algunos talleres de HTML/CSS. Tenía una gran cantidad de deudas personales y de educación universitaria. Todo lo que tenía era una pequeña cantidad de ahorros, la creencia de que podía hacer que funcionara y (afortunadamente) una pareja que me apoyaba. Una vez leí un libro que decía que tu mente te venderá, pero tu corazón nunca lo hará, simplemente no puede. Así que decidí seguir a mi corazón.

Aquí creo que está el mejor lugar para la primera lección:

… e incluso una vez que llegas allí el aprendizaje nunca se detiene.

Foto de Raj Eiamworakul en Unsplash

Ese fue el año más duro por el que he pasado. Tuve que invertir mucho tiempo para aprender y construir. Tuve que gastar todos mis ahorros y endeudarme aún más. Tuve que dejar de lado mi ego y aceptar ser un principiante de nuevo, tuve que pasar menos tiempo con mi pareja, tuve que hacer todo lo posible para explicar a mi familia y amigos que estaba dando un giro de 180 grados por completo sin garantía alguna de entrar en una industria que, aunque tiene una gran demanda, está desbordada de jóvenes graduados en informática y ansiosos ex alumnos de bootcamps de desarrolladores.

Tampoco tenía dinero para bootcamps. No tuve más remedio que enseñarme a mí mismo todo lo que aprendí. Lo único que te hará salir adelante es el GRIT. No la inteligencia ni el dinero. Estos pueden ayudar, pero todo se basa en el trabajo duro que usted pone en. Y lo único que te va a sacar adelante en esos momentos difíciles es si te estás divirtiendo.

ESTO NECESITA SER DIVERTIDO para poder superar los retos difíciles.

Foto de Kelly Sikkema en Unsplash

La emoción de resolver un problema realmente difícil tiene que ser enorme para ti porque el esfuerzo que vas a poner en la resolución de problemas de programación puede ser a veces estresante, extenuante y que requiere mucho tiempo. Si estás entusiasmado o incluso obsesionado con la resolución de algo que resulta ser un reto esto ayudará en gran medida.

Una combinación de no rendirse cuando se pone difícil y estar entusiasmado con la resolución de un gran problema son ingredientes necesarios. Si tienes estos ingredientes pero crees que no eres lo suficientemente inteligente, entiende que no se trata de ser inteligente o efectivo al principio. Nadie lo sabe todo, especialmente cuando empieza. Lo que importa es el esfuerzo continuo, sin importar el tiempo que te lleve hasta llegar aquí.

Deshazte de la percepción de que programar es ser genial en matemáticas. Un programador tiene que ser genial resolviendo problemas y uno que no se haya encontrado antes. Esto importará tanto en el trabajo como cuando se está iniciando el camino del aprendizaje.

Elige un CAMINO pronto y ENFÓCATE EN ÉL.

Foto de Esteban López en Unsplash

Esto puede ser un consejo contradictorio pero es algo que me gustaría saber desde el principio. Entiendo los pros de intentar aprender un poco de todo. Tu instinto natural puede ser querer aprender todo. Rápidamente vas a aprender que esto es imposible y no es como funciona.

Cada programador tiene una experiencia particular, habilidades y puede llegar a ser muy granular. Las empresas te contratan en base a habilidades particulares. Es posible que acabes utilizando un software del que nunca has oído hablar una vez que te contraten, eso está bien y es un escenario muy probable, pero en el proceso de contratación se te evalúa teniendo un conjunto de habilidades particulares.

Elige un CAMINO o es probable que sufras de sólo saber todo a un nivel básico y no saber nada a un nivel profundo que es donde está el verdadero aprendizaje y los desafíos.

Esto puede significar pasar primero por un breve período de investigación y descubrimiento. Eso sí, ponte como objetivo llegar a un camino elegido. La principal elección implicada es qué tipo de programación quieres hacer (por ejemplo, diseño web, front end, back end dev, aplicaciones móviles, etc.). Una vez que decidas el camino, investiga las herramientas estándar de la industria que se utilizan, los títulos de los puestos, el tipo de habilidades que se espera que tengas, etc. También es útil decidir en qué tipo de empresa quieres trabajar. Tu trabajo y tus habilidades pueden variar mucho, por ejemplo, entre startups tecnológicas, grandes bancos corporativos y organizaciones sin ánimo de lucro.

CONSTRUIR PRODUCTO. Este debería ser tu indicador más importante de progreso.

Foto de SpaceX en Unsplash

Esto es quizás controvertido de nuevo pero marcó la diferencia para mí. Una de las cosas con las que luché al principio fue en qué centrarse mes a mes en términos de progreso. Es fácil perderse en los logros de aprendizaje, las marcas verdes y las notificaciones de felicitación al completar los cursos online. Esto es estupendo y necesario en el proceso de aprendizaje. Pero al final de todo, a nadie le importa realmente lo que has aprendido en un curso, cuántos has hecho o qué certificados digitales tienes por haber dedicado 120 horas a ello.

Lo que les importa es lo que has CONSTRUIDO. No digo que los cursos online no sean valiosos, pueden ser una herramienta valiosísima para aprender lo que necesitas saber. Pero no confíes demasiado en ellos, aprende a configurar tu propio entorno de desarrollo desde el principio (sí, con el terminal que inicialmente da miedo) y construye cosas.

Lo que construyas por tu cuenta, mes a mes debería ser lo que deberías enfocar como hitos a través del viaje. Cuando te entrevisten, esto es lo que pasarás casi todo el tiempo hablando y MOSTRANDO. A la gente le encanta VER lo que has construido.

No tengas miedo a sumergirte en lo más profundo.

Foto de Jakob Owens on Unsplash

Este fue quizás el mejor consejo que recibí al principio de las entrevistas con otros programadores sobre esta carrera. Si quieres determinar rápidamente si la programación es la carrera adecuada para ti, esta es la MEJOR FORMA DE PROBARTE A TI MISMO. También construirá tu persistencia más rápido si realmente quieres conseguir un trabajo dentro de un año.

Una vez que hayas decidido tu camino escoge un proyecto DURO. Quizás sea una app chula que hayas tenido en mente y usar un framework avanzado para construirla, ningún proyecto es demasiado loco. El objetivo aquí no es la finalización del proyecto (aunque eso sería genial), sino ver hasta dónde llegas, cómo reaccionas a la presión de estar en un espacio completamente desconocido, qué tan rápido puedes captar un nuevo concepto.

A lo largo del camino es probable que te encuentres con conceptos nuevos pero importantes que te verás obligado a escalar (Ej. configurar un entorno de desarrollo, instalar tus herramientas, encontrar y entender la documentación, entender cómo comunicarse con una API, entender cómo hacer una llamada AJAX, entender cómo funciona Internet, etc.)

Las ventajas de hacer esto es que pone en perspectiva todo el aprendizaje que estarás haciendo. Le dará sentido a las lecciones cuando las estés aprendiendo. También te dará CONFIANZA en que puedes hacerlo. La necesitarás para los meses pesados y de mucho trabajo que se avecinan. No tengas miedo de sumergirte en lo más profundo, nunca.

Se abierto en cuanto al tipo de Industria o Mercado en el que te metas.

Foto by Ryan Franco on Unsplash

Es importante tener un camino y una meta en mente para el tipo de trabajo que quieres. Pero también es importante permanecer abierto con respecto a las oportunidades que surgen.

Mi objetivo inicial era entrar en una startup tecnológica ya que tenía muchas conexiones y experiencia con la escena de las startups en Toronto. Pero me contrató una increíble organización sin ánimo de lucro, en el espacio del cine y las artes, con un gran equipo, un ambiente divertido, una marca conocida y muchas oportunidades de crecimiento y aprendizaje. La vida es divertida y nunca se sabe cuándo una industria o mercado completamente diferente puede tener lo que estás buscando. Recuerda que todo el mundo necesita programadores, ya que todos compiten por la atención en el espacio digital.

Sé abierto y mientras buscas trabajo, no tengas miedo de salir de tus límites habituales. Aplica a algunas organizaciones aleatorias pero interesantes que te hagan cosquillas. Incluso si no están contratando explícitamente para tu puesto. Nunca sabes a quién puedes conocer o quién puede necesitar tus habilidades específicas. La pasión y el interés por el trabajo llegan lejos y pueden ayudar a superar los vacíos de experiencia. La industria menos esperada podría ser la que te proporcione la mayor oportunidad.

Trabajar en red es GENIAL, pero lo que es mayor es CONSTRUIR PRODUCTO.

Foto de Daniel Cheung en Unsplash

Esto sigue los consejos anteriores y puede parecer repetitivo, pero lo repito por su importancia. También puede resultar contradictorio y más si vienes de un entorno empresarial. Lo sé, lo entiendo y lo he vivido. Tu red de contactos es tu clave. Al convertirte en programador eso también es importante, pero no tanto como CONSTRUIR PRODUCTO. Hay una fuerte necesidad en el mercado de desarrolladores para el futuro previsible. Cuando estés preparado habrá muchas oportunidades y gente que conocer. Pero hasta entonces no importa realmente a cuántas conferencias tecnológicas o eventos de redes sociales asistas.

No estoy diciendo que no hagas estas cosas, son valiosas e importantes para no perderte en tu propia burbuja, y para aprender sobre lo que la industria está hablando. Pero preocúpate MÁS por construir producto. Esto también te ayuda cuando asistes a eventos y te reúnes con otros porque te da un enfoque para tus conversaciones. Puedes obtener comentarios reales y sinceros, ideas y quizás grandes consejos al mostrar y hablar con la gente. Saca tu portátil (si es apropiado) y muéstrale a la gente, obtén retroalimentación, practica explicando tu pensamiento y tu razonamiento de por qué construiste X de cierta manera.

Recuerda aquí que el diseño importa y al mostrar a otros lo que construiste, te obligará a preocuparte por cosas como la UI, UX y el diseño visual. Sé que esto puede sonar aterrador, pero necesitarás sentirte cómodo hablando de tus proyectos cuando se trate de entrevistas.

Tu objetivo para las entrevistas: Dirigir la conversación hacia lo que has construido.

.

Foto de Jo Szczepanska en Unsplash

Para lograr el máximo éxito en la entrevista, tu objetivo debe ser dirigir la conversación hacia tus productos construidos. Esto no siempre funcionará y lo más probable es que tengas que hacer pruebas de codificación y técnicas de cualquier manera, pero he encontrado que esto realmente ayuda en la entrevista. Prepárate para hablar de POR QUÉ tomaste ciertas decisiones.

¿Por qué elegiste este framework/biblioteca/lenguaje? Por qué construiste esto de esa manera? Por qué colocaste este botón aquí (sí, como programador también eres parte del proceso de diseño, ¡sorpresa!)? ¿Por qué has elegido este método para ordenar esta lista? Quién es el usuario (sí, como programador también eres parte del proceso de UX, ¡sorpresa!)

Prepárate para hablar del usuario. Entiende profundamente al usuario y cómo tu proyecto resuelve su dolor o deseo. A los responsables de contratación les gustará mucho ver que te preocupas profundamente por el usuario y que eres consciente de cualquier sesgo o suposición que tengas personalmente y que pueda influir en el producto.

Recuerda que la persona que contrata no está intentando asustarte o cuestionar tus decisiones personales. Quieren que ganes. Pero lo que más les interesa es cómo piensas, cómo reaccionas ante los retos y cuánto te importa el usuario y su problema. Tu mejor manera de demostrar estas cosas es a través de tus proyectos.

Sigue adelante hasta que lo consigas.

Foto de Zhen Hu en Unsplash

Es un viaje difícil, lleno de estrés, de sentirse perdido, de no saber dónde estás a veces. Es importante no dejar que las aguas turbulentas te hagan desistir. Recuerda que cada problema al que te enfrentas es en realidad una oportunidad disfrazada. Algo que tal vez te lleve a un plano superior o más profundo de comprensión sobre un concepto. No seas duro contigo mismo por fracasar. Si te sientes cómodo fallando muchas veces, acéptalo como parte del viaje.

Espero que este consejo llegue a alguien por ahí que lo necesite y que esté pasando por lo que yo pasé, y espero que le ayude. Tú puedes hacerlo, sólo tienes que seguir adelante. 🙌🙌🙌

Gracias por leer y por favor sígueme en Medium o en Twitter @aellenj

.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *