Cómo convertirse en desarrollador de React en 5 meses

La historia de cómo pasé de ser un desarrollador no técnico a contratar a React.

Cuando tenía 29 años, hice la transición de un codificador aficionado a un desarrollador front-end profesional. Esta transición es una de las cosas más gratificantes que he hecho, tanto personal como profesionalmente.

Personalmente, me dio la confianza de que podía aprender lo que quisiera y, profesionalmente, fue fundamental para mi carrera. Hoy, soy el cofundador de Scrimba, una plataforma de aprendizaje que enseña a más de 100.000 personas a codificar cada mes. Simplemente no podría haber tenido este rol si no supiera cómo codificar.

Al ver lo importante que fue esta transición para mí, quiero animar a más personas a que sigan el mismo camino. Entonces, en este artículo, explicaré exactamente cómo lo hice. Presentaré cada curso que tomé y cada proyecto que construí. Con suerte, esto podría inspirarlo a considerar hacer lo mismo.

Pero tenga en cuenta que el camino que tomé no es necesariamente el más eficiente, ya que implica un bootcamp de codificación. Esto puede ser costoso en sí mismo y no tendrá salario durante este período.

En este punto, voy a ser lo suficientemente valiente para recomendar nuestra introducción libre curso de reaccionar y el próximo curso avanzado para aquellos de ustedes que están buscando para el absolutamente manera más rápida posible. El propósito de estos es lograr que usted alcance un nivel de contratación lo antes posible, y yo personalmente he examinado el plan de estudios.

Pero si estás dispuesto a hacer un bootcamp de programación, sigue leyendo.

Cerrando mi startup anterior

A finales de 2014, mis dos cofundadores y yo decidimos cerrar la puesta en marcha de nuestra aplicación para niños, Propell, ya que habíamos perdido la motivación y no veíamos cómo podíamos volvernos rentables. Originalmente comenzó como un proyecto paralelo mientras yo estudiaba economía, pero pronto se convirtió en un trabajo de tiempo completo con cuatro personas trabajando en la empresa en su apogeo.

Si bien ciertamente fue una mierda rendirme, también me dio la oportunidad de hacer lo que había querido hacer desde 2011, que era aprender a codificar correctamente.

En realidad, la codificación había sido mi hobby durante los últimos años, ya que había tomado cursos por las tardes, los fines de semana y las vacaciones, así que sabía un poco de programación, pero aún me consideraba no técnico y lejos de cualquier nivel profesional.

Los cursos que me ayudaron a empezar fueron Introducción a la informática y la codificación de Udacity para emprendedores en Udemy. Ambos son geniales, aunque no terminé ninguno de ellos.

De todos modos, seguir aprendiendo por mi cuenta en línea no era una opción. Quería un curso intensivo en persona, ya que sabía que aumentaría mis posibilidades de poder llevar a cabo la transición. Quería un entorno en el que pudiera pasar el 100% de mi tiempo codificando junto con otros. Así que revisé todos los bootcamps de codificación que pude encontrar y apliqué a lo siguiente:

  • Bootcamp para desarrolladores
  • Dev Mountain
  • Escuela Flatiron
  • Fundadores y codificadores (FAC)
  • HackerShip
  • Hack Reactor
  • MakerSquare
  • Centro recurrente

Me aceptaron en todos excepto en Hack Reactor y Recurse Center. Si está considerando hacer un bootcamp de codificación usted mismo, le recomiendo que haga lo mismo. Solicite todas las escuelas que le parezcan interesantes y luego comience a filtrar. Al hablar con las personas que trabajan allí y experimentar el proceso de solicitud, obtendrá una buena idea de la calidad y la filosofía de la escuela, las cuales son muy importantes.

Algunas de las escuelas parecían demasiado ansiosas por aceptarme, lo que me hizo escéptico. Parecía que cobrar la matrícula de tantos como fuera posible era más importante que conseguir los mejores candidatos posibles.

He escuchado historias de bootcamps de programación que son básicamente estafas, ¡así que tenga cuidado y sea exigente cuando elija uno!

Si quieres estar 100% seguro de que el bootcamp es serio, debes considerar uno que tenga la opción Pagar después, como V School. Entonces tiene la garantía de que sus objetivos están alineados con los suyos.

De todos modos, después de un montón de idas y venidas, seguido de una charla convincente con el brillante jefe de Fundadores y Codificadores, Dan Sofer, finalmente decidí mudarme a Londres y unirme a la FAC.

La filosofía de Founders and Coders

FAC no es como ningún otro campo de entrenamiento. Primero que nada, es completamente gratis. Esto significaba que podía pagarlo sin pedir un préstamo, lo que no sería el caso de los otros bootcamps, ya que su matrícula oscila entre diez y quince mil dólares. En segundo lugar, FAC se basa completamente en proyectos, lo que me gusta, ya que siempre he aprendido más practicando cosas que leyendo sobre ellas.

La falta de matrícula significa que no pueden contratar maestros a tiempo completo, por lo que se basa en el aprendizaje entre pares, donde principalmente aprendes cosas de tus compañeros de clase y por ti mismo. Sin embargo, también recibe ayuda de grupos anteriores, ya que se quedan y ayudan a los nuevos estudiantes mientras trabajan en sus propios trabajos de consultoría. FAC también tiene dos grandes mentores, Nelson Correia e Ines Teles, quienes brindan una ayuda invaluable a los estudiantes y la organización.

En general, esto crea un entorno increíble: una comunidad de personas ávidas de conocimiento ansiosas por compartir sus habilidades entre sí.

Sin embargo, esta no es la forma más sencilla de aprender a codificar. No puedes simplemente levantar la mano y obtener la respuesta de un maestro cada vez que te quedas atascado, lo que supongo que puedes hacerlo en un campamento de entrenamiento de 10 a 15 mil dólares. En FAC tienes que investigarlo por tu cuenta y junto a tus compañeros, lo que requiere mucha autodisciplina.

Pero esto también tiene una gran ventaja; Agudizará enormemente sus habilidades para resolver problemas y aprenderá a aprender a sí mismo lo que quiera. Esta es una de las habilidades más importantes que puede tener como desarrollador.

Así que si superas el FAC, nunca más tendrás miedo de afrontar un desafío técnico. Además, tendrás muchos amigos nuevos.

Pasar por FAC probablemente cambiará su vida para mejor.

Parte 1 - Ocho proyectos

El día 1 la clase se agrupó en equipos de cuatro. Estos equipos estarían formados por los próximos dos meses. Todos los lunes recibíamos un nuevo proyecto que necesitábamos construir y presentar para la clase el viernes siguiente. Dentro de los equipos, rotaríamos entre cuatro roles diferentes (operaciones de desarrollo, bibliotecario, tester y propietario del repositorio) para asegurarnos de que todos los miembros aprendieran todas las partes de la creación de una aplicación web.

Además de esto, teníamos un desafío de codificación todas las mañanas, donde practicamos las habilidades básicas de Javascript.

Todo se hizo de código abierto, por lo que he vinculado a todos nuestros proyectos semanales a continuación. Mirando hacia atrás en los proyectos, no puedo decir directamente que esté orgulloso de ellos. Pero ciertamente estoy orgulloso de todo lo que aprendí mientras los construía.

También he notado las tecnologías que aprendimos durante las respectivas semanas. Además, las asignaciones semanales se describen más de cerca en este gitbook, para aquellos interesados ​​en saber más.

  • Semana 1: Blog del equipo: HTML / CSS, jQuery, páginas de Github
  • Semana 2: The Guardian API - API web, Ajax
  • Semana 3: muro social: servidores, Node.js
  • Semana 4: InstagramFeed - Heroku, MongoDB
  • Semana 5: StopGoContinue - D3.js
  • Semana 6: Notas - React.js
  • Semana 7: Blog - Representación del lado del servidor, cookies
  • Semana 8: Blog— Hapi.js

Los proyectos crecieron de manera constante en su nivel de complejidad, por lo que cada semana implicaba aprender nuevas tecnologías. Normalmente pasaba los fines de semana leyendo y haciendo tutorías sobre los temas para estar preparado para la semana.

Durante los días de semana creo que promedié alrededor de 10 horas por día codificando o aprendiendo sobre codificación, lo que significa que totalicé un poco menos de 1000 horas durante mis cuatro meses en Londres.

Encontrar mi nicho de React

Como puede ver, comenzamos a usar React.js en la semana 6. Inmediatamente disfruté trabajando con él y me gustó la idea de poder desarrollar aplicaciones móviles nativas también (React Native). Así que decidí seguir usando React tanto como fuera posible durante el curso.

Esta también fue una elección estratégica. Si iba a llegar a un nivel profesional, sabía que tenía que enfocarme en menos temas, en lugar de extender mis esfuerzos en muchos temas diferentes. React se convirtió en una opción natural para duplicar. Esta estrategia sin duda dio sus frutos, de la que te hablaré más adelante.

La novena semana del proyecto implicó la construcción de nuestro propio producto, ya que FAC también quiere inspirar a los estudiantes a hacer sus propias cosas. Mi equipo creó una pequeña herramienta para analizar la palabra clave de su aplicación de iOS llamada KeywordKing, sobre la que puede leer aquí.

Parte 2: creación de MVP para clientes

Esta semana también nos preparó para la segunda parte del curso, que implicó la creación de MVP para clientes externos. Durante las primeras ocho semanas, los clientes nos habían propuesto semanalmente que necesitaban desarrolladores para crear prototipos de sus ideas.

Funciona así: por £ 500, un equipo de 3-5 estudiantes construiría un prototipo en una semana. Para nosotros, esta fue una forma de aprender a trabajar con los clientes, además de aumentar aún más nuestras habilidades de codificación, y al mismo tiempo ganar un poco de dinero. Para el cliente, fue una oportunidad de construir rápidamente un MVP barato. Y sin arriesgar dinero, ya que solo se facturarían si estuvieran contentos con el resultado, que la mayoría de los clientes (pero no todos) estaban.

Durante estas semanas, construí los siguientes proyectos junto con varios otros estudiantes:

  • Sir Predictalot: un prototipo de la aplicación de predicciones de noticias Tinder'ish
  • Troll-Olav - un rompecabezas para niños
  • RateMyStuff: una red social basada en la clasificación de imágenes
  • Squish: una herramienta de aprendizaje reforzada para estudiantes

También hice un truco de aprendizaje automático de una semana, sobre el que he escrito aquí, además de hacer un par de videos tutoriales sobre el tema (lo siento por el horrible audio).

En este punto, había pasado alrededor de cuatro meses en Londres y ya era hora de regresar a Noruega, donde existió el resto de mi vida.

De vuelta en Noruega

En casa, mi plan era dedicarme a la codificación profesional lo antes posible, ya que necesitaba practicar mi conocimiento recién adquirido para que se mantuviera.

Traté de conseguir un trabajo de consultoría, pero fue más difícil de lo que pensaba ponerlo en marcha. También sospechaba que mi curva de aprendizaje sería más pronunciada si conseguía un trabajo. Saltar a una base de código extranjero construida por profesionales parecía un desafío difícil.

Así que envié tres solicitudes de empleo a empresas que necesitaban desarrolladores de Javascript. Dos de ellos me invitaron a una entrevista.

No obtuve el primero. No estoy seguro de por qué, pero sospecho que querían un desarrollador más senior. El siguiente me envió a través de dos rondas de entrevistas y luego me dio una tarea de codificación.

Networking para encontrar el trabajo perfecto

Sin embargo, casi al mismo tiempo, asistí a un evento de inicio organizado por un emprendedor que conocía un poco. Era el director de tecnología de una startup bien financiada llamada Xeneta, de la que había sido fan durante un par de años. Según su sitio web, estaban buscando desarrolladores front-end, y de hecho mencionaron React.js como una de las tecnologías que usaban.

Durante la noche me dijo que acababan de reescribir toda su interfaz en React.js y estaban buscando un nuevo desarrollador que conociera la biblioteca; esto parecía demasiado bueno para ser verdad. Le dije que me interesaría el trabajo y decidimos charlar más tarde.

La semana siguiente fui a la primera entrevista y luego a dos rondas de entrevistas más. Luego me enviaron un desafío de codificación.

Haciendo el desafío de la contratación

No puedo compartir el desafío exacto con ustedes, pero creo que hice algunas cosas bien de las que se puede aprender.

En primer lugar, dediqué mucho más tiempo del esperado. Me asignaron la tarea al final de una semana y me dijeron que no necesitaba dedicarle mucho tiempo. Pero hacerlo rápido no era una opción para mí. Así que pregunté si podía entregarlo durante el fin de semana, con lo que estaban bien. Luego pasé todo el fin de semana trabajando en ello. Revisé cada línea de código asegurándome de que estuviera SECO, fácil de leer y sin descuidos.

Mi solución también contenía un montón de pruebas, aunque no formaba parte de la especificación, y aunque creo que escribir pruebas es muy aburrido.

Finalmente, les pedí a algunos de mis compañeros de clase anteriores de FAC que echaran un vistazo rápido a mi solución, y esto también ayudó. Esto podría ser un poco engañoso, pero estaba decidido a ofrecer una solución perfecta.

Más tarde, cuando estaba del otro lado de la mesa, a menudo he visto a los solicitantes entregar soluciones con un código descuidado. ¡No hagas esto!

Obteniendo la oferta

El 26 de junio, exactamente cinco meses después de mi primer día en Founders and Coders, llegamos a un acuerdo y me contrataron como desarrollador front-end.

Realmente fue un trabajo increíble en una startup con personas extremadamente capacitadas que abordan un gran problema en un mercado enorme. Fui desafiado todos los días. Así que no me arrepiento ni un segundo de haber hecho el cambio de carrera.

Después de trabajar allí durante un poco más de un año, mi cofundador anterior, Sindre Aarsæther, me mostró uno de los primeros prototipos de Scrimba y me preguntó si estaría interesado en unirme a él para construir una empresa en torno a él. Al instante me encantó la tecnología y aproveché la oportunidad. Y todo se lo debo a aprender a codificar y convertirme en un desarrollador profesional. Sin esa experiencia, no podría haberme convertido en cofundador de Scrimba.

Desde entonces, hemos hecho crecer la plataforma de cero a más de 100.000 usuarios activos mensuales. Ha sido un viaje fantástico y la gente nos dice todos los días cuánto les ayuda a aprender a codificar.

Si está interesado en convertirse usted mismo en un desarrollador de React, regístrese, consulte nuestro curso de introducción aquí, el próximo curso avanzado aquí, y haremos todo lo posible para ayudarlo.

Buena suerte :)