/bootcamp

Bootcamp @Laboratoria (Front end dev + UX)

Primary LanguageJavaScriptCreative Commons Attribution Share Alike 4.0 InternationalCC-BY-SA-4.0

Bootcamp @Laboratoria

All Contributors Build Status

Introducción

El bootcamp de Laboratoria es un programa de aprendizaje inmersivo de 6 meses enfocado en los perfiles de Front-end Developer y UX Designer.

Nuestro modelo de aprendizaje se basa en simular un ambiente laboral que te prepare desarrollando habilidades técnicas y socioemocionales necesarias para comenzar a trabajar.

El aprendizaje basado en proyectos es el eje central de la experiencia de aprendizaje de nuestro bootcamp. Trabajar en una serie de proyectos, de complejidad gradualmente creciente, te permitirá ir desarrollando las habilidades necesarias; de todas las habilidades, consideramos que el Autoaprendizaje es la más importante; no sólo es una habilidad indispensable para el trabajo que te espera, si no que es también una poderosa herramienta para ser autosuficiente, segura de tu talento y habilidades.

Mapa de proyectos

El mapa de proyectos se divide en 4 etapas: Admisión, Common Core, Track (Front-end Development y UX Design) y Electivos.

Pre    | Common Core          | Track                                                   | Electivos         |
===    | ===========          | =====                                                   | =========         |
       |                      |                                                         |                   |
       |                      |  Frontend                                               |                   |
       |                      |  social-network > md-links     burger-queen             | battleship        |
       |                      |  /                         \  /                       \ |/                  |
       | cipher               | /\                          > -burger-queen-api-client >|-social-network-fw |
       |      \               |/  \                        /  \                       / |\                  |
trivia |        > data-lovers |   md-links > social-network    burger-queen-api         | tic-tac-toe-rn    |
       |      /               |\                                                        |                   |
       | luhn                 | \                                                       | service-design    |
       |                      |  UX                                                     |/                  |
       |                      |  small businesses > redesign-and-data > ux consultancy  |-design-sprint     |
       |                      |                                                         |\                  |
       |                      |                                                         | visual-design     |
       |                      |                                                         |                   |

Evaluación

Durante el transcurso de cada proyecto nuestro equipo de coaches hará un seguimiento individual de tu trabajo y el de tu equipo (si es en grupo).

El tiempo estimado para completar un proyecto puede variar dependiendo de cómo vayas avanzando y aprendiendo. Asegúrate de conversar con tus coaches para que te ayuden a planificar y definir el alcance de lo que quieras y necesites implementar para conseguir los objetivos de aprendizaje del proyecto. Recuerda que los objetivos de aprendizaje son más importantes que la completitud de tu proyecto.

Al final del proyecto, tendrás una sesión de feedback con tus coaches. Antes de esta sesión tendrás que reflexionar y autoevaluarte respecto a los objetivos de aprendizaje. En esta sesión de feedback validarás tu autoevaluación con tus coaches. En caso de no haber conseguido algunos objetivos, podrá ocurrir:

  • Si se trata de objetivos de aprendizaje que vuelven a aparecer más adelante en otros proyectos, pueden quedar simplemente anotados como pendiente y podrás continuar con otro proyecto.
  • En caso contrario, tus coaches te recomendarán cómo seguir para alcanzar los objetivos de aprendizaje que te falten, pudiendo ser a través de continuar con el proyecto (más tiempo), hacer un proyecto complementario, etc.

Recuerda que cada una aprende a su ritmo y lo importante es ir obteniendo las habilidades asociadas a los objetivos de aprendizaje de forma gradual. Tus coaches y compañeras están ahí para apoyarte.


Etapa 0: Preadmisión

La etapa de admisión empieza antes de ser aceptada a nuestro bootcamp. Al final de cada proceso de admisión invitaremos a candidatas preseleccionadas a completar presencialmente un proyecto en una de nuestras sedes.

Proyecto: Trivia (necesita refactorización)


Etapa 1: Common Core

Todas las estudiantes admitidas, comienzan con el common core. Durante esta etapa trabajarás en dos proyectos:

  1. Primero puedes elegir entre Cifrado César y Tarjeta de Crédito Válida. Ambos proyectos comparten los mismos objetivos de aprendizaje.
  2. Después, tendrás que trabajar en Data Lovers.

Al final del common core participarás en una o más hackathones trabajando en proyectos más pequeños propuestos por Laboratoria y/o empresas/empleadores externos.

Proyecto: Cifrado César

Este proyecto require implementar una aplicación web basada un boilerplate que permita cifrar y descifrar texto usando la técnica del cifrado césar.

El principal objetivo de aprendizaje de este proyecto es tener una primera experiencia construyendo una aplicación web, utilizando los conocimientos adquiridos sobre User Experience Design y JavaScript. Esto incluye diseñar un producto pensando en los usuarios, construir una interfaz, escuchar eventos básicos del DOM, escribir lógica para llevar a cabo el cifrado y descifrado, tests unitarios básicos para comprobar (y documentar) dicha lógica, y manipulación del DOM para mostrar (escribir) los resultados.

Este proyecto requiere implementar una aplicación web basada un boilerplate que permita a un usuario validar el número de una tarjeta de crédito y además ocultar todos los dígitos de la tarjeta menos los últimos cuatro.

El principal objetivo de aprendizaje de este proyecto es tener una primera experiencia construyendo una aplicación web, utilizando los conocimientos adquiridos sobre User Experience Design y JavaScript. Esto incluye diseñar un producto pensando en los usuarios, construir una interfaz, escuchar eventos básicos del DOM, escribir lógica para llevar a cabo el cifrado y descifrado, tests unitarios básicos para comprobar (y documentar) dicha lógica, y manipulación del DOM para mostrar (escribir) los resultados.

Proyecto: Data Lovers

En este proyecto tendrás tu primer acercamiento a transformar data en información. El objetivo principal de este proyecto es aprender a diseñar y construir una interfaz web donde podamos visualizar y manipular data.

Esperamos que puedan pensar en el usuario, entender cuál es la mejor manera de visualizar la data en la web según sus necesidades.

Este proyecto se debe "resolver" en duplas, por lo que un objetivo importante es ganar experiencia en trabajo colaborativo con toda la complejidad que eso implica.


Etapa 2: Tracks

Después del common core cada grupo se separa en tracks especializados y paralelos: Front-end Development y UX Design.

Track Front-end Development

Tópicos comunes (uno o más proyectos): Paradigmas, JavaScript Funcional.

Proyecto: Red Social

En este proyecto partimos del supuesto que una emprendedora ha pedido hacer un prototipo para una red social sobre algunos temas de entre los cuales deberás elegir.

El objetivo de aprendizaje principal de este proyecto es construir un sitio web responsive con más de una vista (página), y en el que podamos leer y escribir datos entendiendo las necesidades de los usuarios.

  • Duración estimada: 3 semanas.
  • Equipos: 3 estudiantes.
  • Tópicos: Mobile first, Responsive, URL, HTTP, Async, Múltiples vistas, Routing, Escritura de datos, localStorage, Firebase.

Proyecto: Markdown Links

Dentro de una comunidad de código abierto, proponen crear una herramienta usando Node.js, que lea y analice archivos en formato Markdown, para verificar los links que contengan y reportar algunas estadísticas al respecto.

El objetivo práctico de este proyecto es aprender a crear una librería (o biblioteca - library) en JavaScript.

Diseñar una librería es una experiencia fundamental para cualquier desarrolladora porque que le obliga a pensar en la interfaz (API) de sus módulos y cómo será usada por otros developers. Se necesita tener especial consideración en peculiaridades del lenguaje, convenciones y "buenas prácticas".

  • Duración estimada: 3 semanas.
  • Equipos: 1 estudiante.
  • Tópicos: Node.js, NPM, File System, Semver, Parsing, Markdown, CLI, HTTP, Módulos, Errores.

Este proyecto requiere implementar un sistema para que lxs meserxs de un restautante (Burger Queen) puedan tomar nota de los pedidos usando una tablet.

El objetivo de aprendizaje principal de este proyecto es construir una interfaz web usando un framework (React, Vue o Angular).

Como objetivo secundario, la implementación debe seguir las recomendaciones para PWAs (Progressive Web Apps), lo cual incluye conceptos como offline.

  • Duración estimada: 3 semanas.
  • Equipos: 1-2 estudiantes.
  • Tópicos: Frameworks, React, Vue, Angular, PWA, Offline First, Service Workers, Serverless.

El objetivo de aprendizaje principal es adquirir experiencia con Node.js como herramienta para desarrollar aplicaciones de servidor, junto con una serie de herramientas comunes usadas en este tipo de contexto (Express como framework, MongoDB como base datos, etc.).

En este proyecto tendrás que construir un servidor web que debe servir JSON sobre HTTP.

En este proyecto partimos de un boilerplate que ya contiene una serie de endpoints (puntos de conexión o URLs) y nos piden completar la aplicación. Esto implica que tendremos que partir por leer la implementación existente, y familiarizarnos con el stack elegido: Node.js, Express, MongoDB, mongoose, ...

  • Duración estimada: 2 semanas.
  • Equipos: 1 estudiante
  • Tópicos: Node.js, Express, rutas (routes), URLs, HTTP (verbs, request, response, headers, body, status codes...), JSON, MongoDB, variables de entorno, JWT (JSON Web Tokens)...

Este proyecto requiere implementar un sistema para que lxs meserxs de un restautante (Burger Queen) puedan tomar nota de los pedidos usando una tablet.

El objetivo principal de aprendizaje de este proyecto es construir una interfaz web usando un framework (React, Vue o Angular).

Como objetivo secundario, la implementación debe seguir las recomendaciones para PWAs (Progressive Web Apps), lo cual incluye conceptos como offline.

  • Duración estimada: 3 semanas.
  • Equipos: 1-2 estudiantes.
  • Tópicos: Frameworks, React, Vue, Angular, PWA, Offline First, Service Workers, HTTP, JSON, fetch.

Track UX Design

Proyecto: Emprendimientos

Para este proyecto inicial del track, trabajarás con pequeños emprendimientos para ofrecer una nueva y/o mejor experiencia online para sus usuarios. Para eso, tienes que entender los objetivos de negocio del emprendimiento y las necesidades de sus usuarios/clientes. Durante este proyecto harás trabajo de campo: entrevistas, observación y testing y diseñarás soluciones utilizando herramientas de diseño como Figma y Marvel.

  • Duración estimada: 3 semanas
  • Equipos: 2 o 3 estudiantes
  • Tópicos: UX research (entrevistas, benchmark), arquitectura de la información (flujo de contenido, mapa de sitio), diseño visual y de interacción (wireframes y prototipado), y user testing

Este es un proyecto de rediseño de un producto existente. Basándose en la data de los resultados que está teniendo una aplicación de servicios financieros, deberás mejorar la experiencia de la misma.

En algunas casos este proyecto puede ser reemplazado por un uno con una empresa, pero tendrá siempre los mismos objetivos de aprendizaje.

  • Duración estimada: 3 semanas
  • Equipos: 2 o 3 estudiantes
  • Tópicos: Data analysis, UX Research, prototipado, ideación, visual design

Proyecto: Consultoría UX

Trabajarás en distintos casos reales propuestos por empresas de diversos rubros y tamaños. En el pasado se ha trabajado con empresas como Kmimos, Guvery, Globant, Sinenvolturas, Magical Startups, Laboratoria, entre otras.

  • Duración estimada: 3 semanas
  • Equipos: Depende de proyectos
  • Tópicos: UX Research, prototipado, ideación, visual design

Etapa 3: Electivos

La última parte del bootcamp, y dependiendo de cómo hayas conseguido los objetivos de aprendizaje de los anteriores proyectos, podrás aprovechar para elegir trabajar en un proyecto final que puede estar basado en los tópicos/tecnologías vistas hasta el momento, o puede cubrir algunos de los tópicos adicionales sugeridos.

Track Front-end Development

El objetivo de aprendizaje principal es tener una primera experiencia en desarrollo de una aplicación usando React Native y Expo, y publicarla en tu cuenta de Expo para que se pueda instalar en cualquier dispositivo Android o iOS.

Tendrás que familiarizarte con conceptos como View, Text o TouchableOpacity y con el flujo de desarrollo propio de apps nativas.

  • Duración estimada: 2 semanas.
  • Equipos: 1 estudiante
  • Tópicos: React Native, Expo, componentes nativos, touch events, ...

Proyecto: Battleship

Battleship es un juego clásico, con múltiples versiones en juegos de mesa y en línea (si no lo conoces, puedes verlo en este link : battle-ship).

En este proyecto deberás crear una nueva versión, agregándole algún giro para actualizarlo y hacerlo más atractivo para las nuevas generaciones. No estás atada a hacer este juego sobre barcos, puedes hacerlo con el tema que más te guste, siempre y cuando el modo de juego sea parecido.

  • Duración estimada: 2 semanas.
  • Equipos: 3 estudiantes
  • Tópicos: react, angular, redux, firebase, mongodb stitch.

En este proyecto tendrás la oportunidad de re-escribir tu anterior proyecto de la Red Social, pero esta vez usando un framework o una librería.

Creemos que una muy buena manera de profundizar en estas herramientas puede ser eliminando de la ecuación el hecho de que tengas que entender un proyecto desde cero, su alcance, sus particularidades, el flujo, las validaciones, etc. Concéntrate en aprender y utilizar estas nuevas tecnologías.

  • Duración estimada: 2 semanas.
  • Equipos: 1-2 estudiantes
  • Tópicos: react, angular, vue, firebase.

Track UX Design

Proyecto: Visual Design

En este proyecto buscamos mejorar las habilidades de diseño visual de interfaces. Para ello, las trabajarás en cómo mejorar y unificar la experiencia de una plataforma de venta de entradas a espectáculos (tradicional) para ayudarlos a competir con nuevos actores en la industria como Stubhub, Eventbrite, Joinnus, entre otros.

Tendrán que crear soluciones consistentes para mobile, desktop y smartwatches. En algunas casos este proyecto puede ser reemplazado por uno con una empresa, pero con los mismos objetivos de aprendizaje.

  • Duración estimada: 3 semanas
  • Equipos: Depende de proyectos
  • Tópicos: Design Systems, Grid systems, atomic design, componentes, consistencia,jerarquía, responsive design.

Proyecto: Service Design

Con la ayuda de consultoras especializadas como Amable o Touchpoint, te sumergirás en el mundo del service design (diseño de servicios) entendiendo problemas de negocio desde una visión más holística y utilizando nuevas herramientas como el Service BluePrint.

  • Duración estimada: 3 semanas
  • Equipos: Depende de proyectos
  • Tópicos: Service design, disruptive design, insights, service prototyping, service blue print

Índice de tópicos


Contribuciones

Toda contribución es gratamente bienvenida.

Pero POR FAVOR no olvides leer detalladamente la guía para contribuidores antes de enviar un PR.

Muchas gracias a toda esta gente maravillosa (leyenda de emojis):

Lupo Montero
Lupo Montero

💬 🐛 💻 📖 💡 🤔 🚇 🔌 👀 ⚠️ 🔧 📹
chamodev
chamodev

🤔 🌍
Ivan Medina
Ivan Medina

💬 🐛 💻 💡 👀
Mariano Crowe
Mariano Crowe

💬 🐛 💻 📖 💡 🤔 👀
Diego
Diego

🐛 🤔
Ana Steph
Ana Steph

💬 🐛 💻
Lalo Gonzalez
Lalo Gonzalez

💬 🎨 🤔
Milton Mazzarri
Milton Mazzarri

💻 💡
Ruth Abigail Salvador Zorrilla
Ruth Abigail Salvador Zorrilla

🐛 🤔
Maricarmen Rojas Tinco
Maricarmen Rojas Tinco

🐛 💻 ⚠️
María Inés Plaza Schwarck
María Inés Plaza Schwarck

💻 💡
Belén Recabal
Belén Recabal

🐛 🤔
Lourdes Vílchez
Lourdes Vílchez

🐛 🤔
Fabian Alexis Bravo Abarca
Fabian Alexis Bravo Abarca

🐛 💻 💡 🤔 👀
Amalia Rivera Castillejos
Amalia Rivera Castillejos

🐛 🤔
Shirley Silvana Suarez Startary
Shirley Silvana Suarez Startary

💬 🐛 💻 💡 🤔
Alexandra Neira
Alexandra Neira

🐛 🤔
Michelle Seguil
Michelle Seguil

🐛 💻 💡 🤔
Carolina Covarrubias
Carolina Covarrubias

💬 📖 🤔
Joalbert Andrés González
Joalbert Andrés González

🤔
Elizabeth Portilla
Elizabeth Portilla

💬 🐛 🤔
Karla Nava
Karla Nava

🤔
Allison Guzmán
Allison Guzmán

🐛 🤔
Alejandra Ramirez
Alejandra Ramirez

🤔
Alexander Ocsa
Alexander Ocsa

🐛
Rocío Alberdi
Rocío Alberdi

🤔
Ameli C. Gavante
Ameli C. Gavante

🐛 🤔
IntiDev
IntiDev

🐛 🤔
Emmanuel Orozco
Emmanuel Orozco

🐛 💻 🤔
Nicole Stein
Nicole Stein

💻 💡 🤔
Giancarlo Corzo
Giancarlo Corzo

🐛 🤔
Alejandro Rodriguez Cuellar
Alejandro Rodriguez Cuellar

💻 🤔
Gonzalo Parra
Gonzalo Parra

💬 🐛 💡 🤔 👀
Cristian K. Cárdenas
Cristian K. Cárdenas

💡
Jonhks
Jonhks

🐛 💻 🤔
Gabriela Segura
Gabriela Segura

🐛 🤔
Rod Fuenzalida
Rod Fuenzalida

🤔
Rodrigo Lazo
Rodrigo Lazo

💡 🤔
Aldo Román Nureña
Aldo Román Nureña

💡 🤔
Nadia Tapia
Nadia Tapia

🐛 🤔
Daniela Sarzosa
Daniela Sarzosa

🐛 🤔
kkatzen
kkatzen

🐛 💡
LucileBaratier
LucileBaratier

🐛
Daniela Gonzales
Daniela Gonzales

🐛 🤔 💻
Rafael Cerri
Rafael Cerri

🌍
José Paulo R. de Lima
José Paulo R. de Lima

🌍
Juliana Amoasei
Juliana Amoasei

🌍
Daniel Cukier
Daniel Cukier

🌍
Carlos Eduardo Moreira dos Santos
Carlos Eduardo Moreira dos Santos

🌍
Vanessa Pinheiro
Vanessa Pinheiro

🌍
Juan
Juan

💬 🐛 🤔
Moisés Cachay Tello
Moisés Cachay Tello

🤔
Ily Treviño
Ily Treviño

🐛
YolandaRib-4
YolandaRib-4

🐛
Carlos G. Rodriguez
Carlos G. Rodriguez

🚧

Este proyecto sigue la especificación de all-contributors. Todo tipo de contribuciones son bienvenidas.

Licencia & Copyright

Todos los materiales de este repo son (c) 2017-2019 Laboratoria.

Creative Commons License

Este trabajo está publicado bajo la licencia Creative commons Attribution-ShareAlike 4.0.