Cómo pasé de diseñador gráfico a desarrollador front-end en 5 meses

2017 fue un año lleno de baches pero emocionante para mí. Dejé mi trabajo de diseñador gráfico en marzo y entré en el laberinto del mundo de la codificación. Cinco meses después, finalmente conseguí un trabajo como desarrollador front-end en Tenten.co.

Después de haber sido un desarrollador front-end a tiempo completo durante seis meses, me gustaría compartir mi historia de por qué y cómo cambié el camino de mi vida. Esto es para aquellos que pueden ser tan indefensos pero ambiciosos como yo.

Para ser claros, esta publicación no está escrita desde la perspectiva de un desarrollador o diseñador experimentado que sea capaz de ilustrar una hoja de ruta clara a seguir. Tampoco es un curso intensivo para aprender el desarrollo front-end. Hay muchos tutoriales excelentes sobre este tema, y ​​enumeraré algunos más adelante en el artículo.

Recuerde, el camino perfecto (universal) para todos los individuos no existe.

Mi pasado

Era un diseñador gráfico de 24 años sin ninguna experiencia relacionada con la codificación. En mis días escolares, mis calificaciones en los exámenes de matemáticas, física, química y ciencias eran terriblemente bajas. Estos temas me asustaban con fórmulas, números y errores aburridos y complejos. Las cosas que me interesaron en ese entonces siempre fueron la belleza creada por la pintura, la música o las palabras. Naturalmente, elegí el inglés como especialidad y me fascinó la literatura, la cultura, la fotografía y el diseño en la universidad.

Cómo aprendí a diseñar en la universidad por mi cuenta y finalmente me convertí en diseñador gráfico después de graduarme es una historia para otro día. El caso es que, durante toda mi vida hasta el año pasado, había soñado con ser escritor, fotógrafo, crítico de cine, cantante y diseñador, pero nunca pensé en ser desarrollador bajo ninguna circunstancia.

Por qué quería codificar

Para mí, el diseño gráfico sirve para resolver un problema con formas visuales atractivas apoyadas en sistemas o estructuras invisibles.

Dado que el mundo se enfrenta a tantos problemas críticos, creo que el pensamiento de diseño de resolución de problemas puede y debe ayudar a abordar algunos de estos problemas. Por supuesto, solo estaba tratando de diseñar algo hermoso la primera vez que abrí Photoshop. Sin embargo, cuanto más aprendía sobre diseño, más ansiaba involucrarme en cuestiones críticas con el diseño gráfico.

Pero, después de muchos esfuerzos para lograr mi ambición, me decepcionó profundamente el impacto que el diseño gráfico podía tener en Taiwán (¿o tal vez en todo el mundo?).

No hay duda de que todavía soy consciente del poder y la importancia del gran diseño. Pero la mayoría de las veces, a los diseñadores solo se les permite lidiar con el "problema del cliente", en lugar de abordar los "problemas reales que tiene el cliente". Los diseñadores pasan la mayor parte del tiempo adivinando los deseos de sus clientes sin datos ni análisis profundos, sino solo intuición, experiencia o sentido común.

Me cansé de este juego dos años después de mi carrera de diseño gráfico.

Fue entonces cuando decidí analizar seriamente el tema de desarrollo de front-end siempre de moda en Medium.

Descubrí que ser un desarrollador con habilidades de diseño te permitía tener mucho más control y autoridad sobre cada caso y cliente. Además, trabajar en desarrollo web o aplicaciones te permite propagar información de manera eficiente.

Dejé mi trabajo de diseño gráfico a finales de febrero. Sin un plan elaborado y con ahorros limitados en el banco, comencé mi viaje de transformarme en un desarrollador front-end.

Qué hacer

Dar el primer paso siempre es difícil. Pero si reconoce cuál es la razón que lo impulsa, las cosas se vuelven más simples. Por ejemplo, si su propósito de convertirse en desarrollador es que le paguen mejor lo antes posible, entonces debería aprender las cosas más interesantes del mercado.

En mi caso, como me di cuenta de que mi objetivo actual era ganar el poder de combinar diseño con habilidades de desarrollo, me concentré en mostrar ambas habilidades.

Entonces, establecí una meta e hice una lista de tareas requeridas con mi conocimiento superficial del desarrollo de front-end:

1. Objetivo

Consiga un trabajo de desarrollador front-end

2. Cómo lograr el objetivo

Construir mi sitio de portafolio para mostrar mi habilidad

3. Tareas por realizar

  • Aprenda HTML, CSS, jQuery / JavaScript
  • Sitio de portafolio de diseño
  • Preparación de trabajos de portafolio

Al principio, solo me asigné estas tareas. Pero a medida que leo más artículos, tutoriales o requisitos laborales, incluyo estas habilidades en la lista a lo largo del camino:

  • Hablar con descaro a
  • Trago
  • CS50
  • Unix básico
  • Wordpress básico
  • Jekyll
  • Conocimientos básicos de AWS
  • Conocimientos básicos de redes

Nota: Sin duda, la explosión de información en la web me bombardeó con más cosas que aprender. En los cinco meses, una vez puse Node.js, React.js, PHP y más en la lista. Las tareas anteriores fueron las que realmente completé al final.

Para seguir el plan, me fijé una meta de trabajo de 48 horas a la semana. Significaba que tenía que trabajar ocho horas al día con solo un día libre a la semana. Toggl me ayudó a realizar un seguimiento de mi desempeño.

Además, tomé una meta a largo plazo -> meta mensual -> agenda semanal -> método de agenda diaria para hacer que mi programa de aprendizaje fuera más fluido, y Asana fue mi mejor asistente en la gestión de estas tareas.

Donde aprender

Intenté aprender de muchas plataformas, tutoriales o artículos a lo largo del camino. Aquí está la lista de recursos y mi opinión sobre cada uno de ellos:

Plataformas de aprendizaje

En ese entonces, odiaba los tutoriales que me mostraban líneas de códigos con los que no tenía ni idea de qué hacer. Algunos asumieron que yo sabía todo, o me dijeron que lo ignorara por ahora. Por favor, realmente no entendí ni una línea del código en la pantalla, porque era un PRINCIPIANTE TOTAL .

Ese tipo de sermones me dolieron y me hicieron menospreciar a mí mismo. Generalmente, no existe una plataforma perfecta para aprender todo. Traté de ser lo más flexible que pude, saltando entre cada uno de ellos.

  • Codecademy-Mucha gente lo recomendó, pero estaba bastante frustrado por sus tutoriales en ese entonces. Siempre me quedé en la práctica sin pistas.
  • CódigoColegio-Pasé mucho tiempo aquí, porque los profesores explican claramente los porqués. Recomendado.
  • Casa del árbol -¡El que tiene más anuncios en Youtube! Treehouse ha hecho un gran trabajo en marketing, que funciona (al menos para mí como un principiante perdido en ese entonces). Cubre muchos temas, algunos de los cuales fueron realmente útiles para mí. Por ejemplo, es difícil encontrar un tutorial decente de Wordpress para estudiantes de desarrollo front-end, pero Treehouse tiene uno.
  • freeCodeCamp - ¡Gran amor gratisCodeCamp! Esta comunidad tiene un camino claro para que lo sigan los principiantes y sabe cuándo quitarle las ruedas de entrenamiento a los estudiantes. Una vez estaba ansioso por saber qué hacer después de aprender HTML, CSS y JavaScript básicos, pero freeCodeCamp colocó pequeños proyectos en los lugares correctos en la pista de aprendizaje. La comunidad también comparte excelentes publicaciones en Medium y por correo electrónico. ¡Muy recomendable!

Canal de Youtube

Este es el mejor lugar para aprender gratis o por diversión. Los videos de Youtube no solo son excelentes para aprender ciertos temas a fondo de las listas de reproducción, sino que también son útiles para probar algunos conocimientos interesantes.

  • The Coding Train: conducido por el profesor de ITP de la NYU, Daniel Shiffman, quien es el maestro más vigoroso que he visto en mi vida, el canal ofrece videos fáciles de seguir.
  • thenewboston— Cubre casi cualquier tema que se me ocurra. El anfitrión, Bucky, tiene el poder de hacer que las cosas intimidantes suenen fáciles.
  • Academind: también ofrece todo tipo de tutoriales. Fácil de seguir. Recomendado.
  • Función Fun Fun: el presentador Mattias Petter Johansson es un desarrollador que había trabajado anteriormente en Spotify y Blackberry. Su canal es un buen lugar para aprender JavaScript de forma sencilla.
  • Academia de Linux- Aprendí algunos conocimientos básicos de AWS aquí. ¡Le gustó!
  • Computerphile - Los videos aquí son sobre cosas de computadora. Es interesante saberlo, pero probablemente nunca entenderé realmente de qué están hablando.
  • Eli the Computer Guy - Aprendí conocimientos sobre redes o servidores aquí.
  • mycodeschool: mi mejor amigo mientras estudiaba CS50. Explica claramente las cosas de la informática. Me encantó.

Artículos para leer

Las lecturas son un medio perfecto para temas de caminos de vida o inspiración para mí. Me entusiasmaron los grandes artículos cuando me sentí frustrado tantas veces en los cinco meses. Estas son algunas de mis mejores guías de vida:

  • Por qué aprender a codificar es tan difícil
  • Aprendí a codificar, crear una aplicación web y lanzarla en Product Hun en 2 meses.
  • Por qué estudié a tiempo completo durante 8 meses para una entrevista de Google
  • Cómo pasar de aficionado a desarrollador profesional
  • Aprenda a codificar en 2017, consiga contratado y diviértase en el camino
  • La guía definitiva para aprender el desarrollo web Full Stack en 6 meses, por $ 30

Otros recursos útiles

  • JavaScript: Comprendiendo las partes extrañas - Gran curso de Udemy que me aclara tantas partes confusas de JavaScript. Muy recomendable.
  • CS50 en Harvard: sabía que el conocimiento en Ciencias de la Computación no era un conocimiento imprescindible para postularme a un trabajo de desarrollador front-end junior, ¡pero no pude resistir la tentación de tomar este curso porque se veía muy interesante! Valió la pena mi precioso tiempo en retrospectiva.
  • NYMY - Episodio 1 - Pieter Levels- NYMY es un programa de podcast presentado por el talentoso diseñador Tobias van Schneider. Entrevistó al creador de NomadList Pieter Levels en este episodio. Escuché la historia de Pieter varias veces cuando estaba deprimido. Este programa de una hora me introdujo a las infinitas posibilidades de ser un codificador / diseñador.

Cómo conseguir trabajo

Después de aproximadamente 4 meses de codificación y diseño ininterrumpidos, finalmente supe un poco sobre la interfaz. También había completado casi el 80% del sitio de mi cartera. Al mismo tiempo, los ahorros que me quedaban solo me alcanzaban para vivir un par de meses más.

Era el momento de buscar un nuevo trabajo.

Desafortunadamente, apenas tenía opciones. No muchas empresas querían un hombre sin experiencia / formación relativa en desarrollo, y menos aún apreciaban el valor de mis habilidades de diseño gráfico. También fue triste tener menos de cinco oportunidades laborales que posiblemente se ajustaran a mí. En el lado positivo, la situación me obligó a concentrarme en estas preciosas oportunidades.

Había estado viendo la agencia de diseño Tenten durante al menos tres años. Es la única agencia que puede aprovechar el diseño, el desarrollo digital y la innovación al mismo tiempo en Taiwán. Los he tenido en mi lista de "por favor, contráteme" durante mucho tiempo, y creía que Tenten era la única empresa aquí a la que también venderían mis habilidades multidisciplinarias.

En los últimos dos meses de mi viaje, aprendí todo lo que pude sobre el puesto de desarrollador front-end junior de Tenten. Mientras tanto, completé mi sitio personal. Cuando llegó el momento, solicité el puesto. Como planes de respaldo, envié mi currículum y mi cartera a otras cinco empresas también. Y esperé.

Y finalmente…

En retrospectiva

Mirando hacia atrás, todavía no diría que transformarme de diseñador a desarrollador fue fácil, pero tampoco fue tan difícil como pensé que sería. La parte más difícil del proceso nunca fue comprender o escribir el código, sino tener la poderosa motivación que lo impulsa hacia adelante.

Felicitaciones si ha encontrado esta motivación. Si no lo ha hecho, inténtelo más antes de dejar de fumar. Si nunca lo intentas, nunca lo sabras.

La lección más importante que aprendí en el camino fue comenzar a hacer algo lo antes posible. Sé que es aterrador dar el primer paso para construir algo, pero es la única forma de aprender algo de verdad. Recuerde, no tiene nada que perder de todos modos.

Los días y las dificultades después de convertirse formalmente en desarrollador son otra historia.

Estoy muy contento de haber sido desarrollador front-end en Tenten durante 6 meses. ¡El viaje del aprendizaje nunca termina!

中文 版 連結 (versión china) / Lea más de mi trabajo en vinceshao.com