Mi Plante — Currículo de la Semana 1
Cuarenta horas. Cinco días. De cero a un PR fusionado.
Este es el ritmo hora por hora para tu primera semana en Mi Plante. Está construido para que un desarrollador que entra en frío el lunes en la mañana, a las 5pm del viernes, tenga el ambiente local corriendo, un modelo mental funcional del pipeline de crédito, una lista de landmines memorizada y al menos un PR fusionado a staging.
Puedes ir más rápido que este currículo. Puedes ir más lento. Los tiempos del reloj no son contratos. Lo que importa son los MILESTONES diarios al fondo del bloque de cada día. Cúmplelos, y vas al ritmo, sin importar cuándo tomaste tu break de café.
La tesis
Mi Plante es un onboarding rápido solo por dos cosas: el kit que estás leyendo, y el pair programmer de IA que ya instalaste (claude y/o Cursor). La combinación de lectura estructurada, exploración de codebase real y Q&A guiado por IA es más rápida que cualquiera de esas tres por separado. El currículo las entrelaza deliberadamente.
Los cinco días se construyen unos sobre otros:
- Día 1 (Lun) — Negocio y arquitectura. Aprendes lo que vende Mi Plante y cómo está formado el sistema en el nivel superior.
- Día 2 (Mar) — Setup local y trazado de requests. La aplicación corre en tu máquina. Sigues tu primera petición HTTP de punta a punta.
- Día 3 (Mié) — El pipeline de crédito y los landmines. El corazón del producto, más el mapa de dónde no pisar.
- Día 4 (Jue) — Primer PR. Eliges una tarea Tier 1, la entregas.
- Día 5 (Vie) — Segundo PR, retro personal, retro del equipo y un kit actualizado.
Ocho horas por día, con breaks. Generoso en el Día 1 para absorber contexto, más apretado en el Día 4 para empujar hacia el ship.
Cómo usar este currículo
- Léelo una vez completo el lunes en la mañana. Diez minutos. Vas a conocer la forma de la semana.
- Al inicio de cada día, relee el bloque de ese día. Imprímelo si te ayuda.
- Al final de cada día, revisa los milestones. Si los cumpliste, vas al ritmo.
- Si te quedas atrás, no entres en pánico. Corta primero la lectura más profunda. Los milestones importan; los timestamps no.
- Si terminas adelantado, no holguees. Lee la lectura del día siguiente o toma una tarea Tier 1 extra.
El currículo integra los podcasts, que son episodios de audio de 12-18 minutos que generas en NotebookLM y escuchas durante breaks naturales (café, post-almuerzo, entre bloques de lectura). No tienes que escucharlos. Si lo haces, la retención es dramáticamente mayor.
La métrica de éxito
A las 5pm del viernes, tienes:
- Al menos un PR fusionado a staging desde
docs/onboarding/05-first-contributions/01-tier-1-tasks.md. - Un segundo PR abierto y en revisión.
- Un retro personal registrado en
docs/onboarding/_internal/onboarding-notes-<your-name>.md. - Una actualización al kit en sí (un gotcha que encontraste, un landmine que descubriste, un doc que aclaraste).
Esa es la barra de éxito. Todo lo del currículo de abajo está calibrado para cumplirla.
Día 1 — Lunes: Negocio y arquitectura
Meta del día: a las 5pm, puedes explicar Mi Plante en dos minutos a un no-ingeniero, y puedes nombrar las seis integraciones externas y qué hace cada una.
Carga de lectura: ~150 páginas de docs internos. Carga de escucha: 2 episodios de podcast (~27 minutos en total).
09:00 – 09:30 Setup - git clone del repo (pídele a tu team lead la URL) - npm install -g @anthropic-ai/claude-code - cd al repo, corre `claude`, verifica que CLAUDE.md cargue - Abre docs/onboarding/README.md y léelo de punta a punta - Abre este archivo (week-1-curriculum.md) en una segunda pestaña
09:30 – 10:00 Intro al negocio LEE: docs/onboarding/01-business/01-what-is-mi-plante.md Dedica 30 minutos. Lee la cosa entera. Las secciones 1, 4 y 10 son obligatorias. El resto construye vocabulario que vas a necesitar toda la semana. Si solo tienes 10 minutos (e.g., un inicio retrasado), lee las secciones 1, 4 y 10 solamente.
10:00 – 10:15 BREAK DE CAFÉ — genera el Podcast Ep 1 en NotebookLM - Abre https://notebooklm.google.com en un browser - Crea un nuevo notebook, sube docs/onboarding/media/podcasts/SOURCE-ep1-01-what-is-mi-plante.md - Haz clic en "Audio Overview" → "Customize" → pega el prompt de customización del tope del archivo fuente - Dale a Generate. Mientras corre, toma café. - Instrucciones completas en docs/onboarding/media/podcasts/README.md
10:15 – 10:30 Escucha el Podcast Ep 1 (~12 min) - "What is Mi Plante? A Colombian Fintech Story" - Audífonos puestos. Este episodio ancla el contexto colombiano y el insight de EMCALI. Después de esto deberías sentir el producto, no solo entenderlo.
10:30 – 11:30 Personas y flujo de dinero LEE: docs/onboarding/01-business/02-who-are-the-users.md (20 min) LEE: docs/onboarding/01-business/03-the-money-flow.md (40 min)
Toma notas sobre: - Las tres audiencias (cliente, aliado, admin) y cómo se diferencian. - Las siete personas. Elige la más cercana a alguien que conozcas. Esa persona es para quien estás construyendo. - A dónde va cada peso. Específicamente: el seguro de vida, los días de desfase, la tasa nominal, el monto estudio de crédito. Estos son matemática que vas a ver en código toda la semana.
11:30 – 12:00 Vistazo previo de arquitectura LEE: docs/onboarding/02-codebase-tour/01-from-30000-feet.md (primera mitad — hasta la sección 5, "The big picture")
Mira el diagrama Mermaid de arquitectura con cuidado. Identifica los dos auth guards. Identifica las seis integraciones. No trates de entender cada caja todavía.
12:00 – 13:00 ALMUERZO (Sin lectura. Deja que la mañana asiente. Camina si puedes.)
13:00 – 13:15 Genera el Podcast Ep 2 en NotebookLM - Fuente: docs/onboarding/media/podcasts/SOURCE-ep2-architecture-tour.md - Mismo flujo que el Ep 1.
13:15 – 13:30 Escucha el Podcast Ep 2 (~15 min) - "Architecture Tour: From Browser to Database" - Este es el acompañante de audio de 01-from-30000-feet.md. Escucharlo después de leer la primera mitad hace que la segunda mitad caiga con más fuerza.
13:30 – 15:00 Inmersión profunda en arquitectura LEE: docs/onboarding/02-codebase-tour/01-from-30000-feet.md (termina — secciones 6 en adelante) REFERENCIA (skim si tienes curiosidad, no leer completo): docs/audit/06-architecture-diagram.md
Al final de este bloque puedes: - Nombrar cada capa (routes, controllers, services, DTOs, jobs, models, integrations). - Trazar dónde el `web` guard difiere del `app` guard. - Nombrar las seis integraciones externas y qué hace cada una.
15:00 – 15:30 BREAK DE LA TARDE (Camina. Hidrátate. No empujes más allá de este break — el Día 1 es pesado en absorción y tu cerebro ha estado trabajando duro.)
15:30 – 17:00 Abre Claude Code y corre /onboarding-day-1 - En el repo, escribe `claude` para abrir una sesión - Dentro de Claude Code, escribe `/onboarding-day-1` - Sigue el walkthrough interactivo. Va a: 1. Confirmar el estado de tu repo y la config de git 2. Verificar el .env que tienes (o no tienes) 3. Sacar a flote los top 5 landmines activos para que los conozcas desde el Día 1 4. Correr un tour guiado de CLAUDE.md y el sustrato de IA 5. Preguntar si tienes preguntas y responderlas
Este bloque es el bloque más interactivo del Día 1. Hazle a Claude cualquier pregunta que tengas sobre cualquier cosa que no haya hecho clic durante la lectura de la mañana. Ejemplos que funcionan bien: - "Muéstrame la estructura del archivo de rutas y explícame quién es dueño de cada uno." - "¿Por qué hay dos auth guards? Caminame por una request desde un cliente versus desde un aliado." - "¿Qué cubre el seguro de vida en realidad? Encuéntrame el código."
MILESTONE 1 — Puedes explicar el negocio de Mi Plante en 2 minutos a un no-ingeniero. Pruébalo con un amigo o pareja en la cena.
MILESTONE 2 — Puedes nombrar las 6 integraciones externas (TransUnion, Experian CrossCore, DataCrédito, Certicámara, EMCALI, SHIVAM core) y decir qué hace cada una en una oración.
MILESTONE 3 — Has corrido al menos una sesión de /onboarding-day-1 y al menos tres prompts de seguimiento en Claude Code.Día 2 — Martes: Setup local y trazado de requests
Meta del día: a las 5pm, la aplicación corre localmente en localhost:8000, te has logueado como cliente y como empleado de aliado, y puedes trazar cualquier petición HTTP desde el browser hasta la base de datos.
Carga de lectura: ~130 páginas (más liviana que el Día 1; estás haciendo más trabajo de setup). Carga de escucha: 1 episodio de podcast (~15 minutos).
09:00 – 09:15 Recap rápido - Relee los milestones que cumpliste ayer - Abre docs/onboarding/03-development-setup/01-local-environment.md
09:15 – 11:00 Setup del ambiente local SIGUE: docs/onboarding/03-development-setup/01-local-environment.md
Este es el bloque sostenido más largo de la semana. No lo pelees. La mayor parte del tiempo es `composer install`, `npm install`, y `php artisan migrate --seed` corriendo en background.
Milestones esperados durante este bloque: - `php --version` muestra 8.2+ - `node --version` muestra 18+ - MySQL está corriendo (mysql.server start, o vía Docker) - .env existe y tiene los defaults locales seguros - `composer install` completa sin error - `npm install` completa sin error - `php artisan key:generate` - `php artisan migrate --seed` - `composer dev` corre y ves: * PHP server en :8000 * Queue worker activo * Visor de logs (pail) escuchando * Vite dev server en :5173
Si cualquiera de lo anterior se rompe, los culpables más probables están documentados en docs/onboarding/03-development-setup/03-common-gotchas.md. Ábrelo en una segunda pestaña.
11:00 – 12:00 Verifica el setup y camina por los datos seed SIGUE: docs/onboarding/03-development-setup/02-seed-data-walkthrough.md
En tu browser, visita http://localhost:8000: - Confirma que el homepage carga - Loguéate con las credenciales seed de cliente (en el doc de walkthrough) - Navega al catálogo, mira un producto, agrega al carrito - Cierra sesión - Loguéate como el empleado de aliado seed - Navega el portal de aliados: dashboard, productos, ventas - Cierra sesión - Opcional: loguéate como el admin seed
Al final de este bloque has probado que el stack completo funciona de punta a punta en tu máquina. Si algo está roto, NO sigas — escala ahora.
12:00 – 13:00 ALMUERZO
13:00 – 13:15 Genera el Podcast Ep 3 en NotebookLM - Fuente: docs/onboarding/media/podcasts/SOURCE-ep3-credit-pipeline.md - Este es el episodio más largo (~18 min). Genéralo ahora para que esté listo para mañana en la mañana cuando leas el doc del pipeline de crédito.
13:15 – 13:30 Escucha el Podcast Ep 2 de repaso (si lo saltaste ayer) O escucha el Ep 3 ahora (~18 min) si ya terminaste el Ep 2.
Opcional. Si prefieres saltar, usa este slot para echarle un vistazo a 03-common-gotchas.md y limpiar cualquier fricción de setup que quede.
13:30 – 15:00 Traza una request (lee y experimenta) LEE: docs/onboarding/02-codebase-tour/02-trace-a-request.md
Este doc te camina por una sola petición HTTP desde el browser hasta MySQL y de vuelta. Mientras lees, abre los archivos reales referenciados. No le pases por encima a las rutas de archivos — ábrelas.
Luego, en Claude Code: - Corre `/trace-a-flow checkout` (un comando slash custom) - Lee el output. Compáralo con el doc trace-a-request. - Haz preguntas de seguimiento sobre cualquier cosa que no coincida con tu modelo mental.
15:00 – 15:30 BREAK DE LA TARDE
15:30 – 17:00 Traza una venta (lee y experimenta) LEE: docs/onboarding/02-codebase-tour/03-trace-a-sale.md LEE EN PAREJA: docs/onboarding/media/diagrams/07-uml-venta-module.md (UML oficial del módulo Venta — producido por el equipo original. Es la fuente más autoritativa sobre la intención de clases, métodos y relaciones. Tenlo abierto en otra pestaña mientras lees el trace.)
Este doc camina por el flujo completo de compra: carrito → checkout → OrdenCompra → Venta(s) → VentaDetalle(s) → eventos → jobs → schedule de cuotas. Hay dos caminos por el sistema (iniciado por cliente e iniciado por aliado), y el doc los compara lado a lado.
Después de leer, usa `php artisan tinker` para inspeccionar los datos reales que los seeders crearon:
$venta = App\Models\Venta::with(['detalles', 'cuotas'])->first(); $venta->toArray();
Mira el EstadoVenta. Mira el conteo de cuotas y el monto mensual. Esto es la matemática que aprendiste el Día 1 viéndose en la base de datos.
MILESTONE 1 — La aplicación local corre. Puedes navegar home, login, portal de aliado y portal de admin sin errores.
MILESTONE 2 — Puedes describir el ciclo de vida de una venta desde el carrito hasta cuotas confirmadas en tres minutos, nombrando los eventos y jobs clave (VentaCompletada, GenerarCreditoDeVenta).
MILESTONE 3 — Has inspeccionado al menos una fila de Venta en tinker y has cruzado el conteo de cuotas y el monto.Día 3 — Miércoles: El pipeline de crédito y los landmines
Meta del día: a las 5pm, entiendes el pipeline de credit approval de siete fases, has memorizado los diez landmines más críticos y tienes Claude Code afinado como tu pair programmer.
Carga de lectura: ~110 páginas, incluyendo el doc más pesado del kit (el catálogo de landmines de 2.487 líneas). Vas a skim, no leer de punta a punta.
Carga de escucha: 2 episodios de podcast (~32 minutos en total).
09:00 – 09:15 Genera el Podcast Ep 3 si no lo hiciste ayer, escúchalo ahora - "The Credit Pipeline: How Mi Plante Decides Who Gets Credit" - 18 minutos. Este es el episodio central de la serie. Escúchalo con atención incluso si usualmente corres podcasts a 1.5x.
09:15 – 11:00 Inmersión profunda en credit approval LEE: docs/onboarding/02-codebase-tour/04-trace-a-credit-approval.md LEE EN PAREJA: docs/onboarding/media/diagrams/08-uml-aprobar-cupo-module.md (UML oficial del módulo AprobarCupo — producido por el equipo original. **Lee primero el bloque DISCREPANCY ALERT al inicio**: documenta tres lugares donde la intención original difiere del runtime real. Esta es la parte más educativa del Día 3.) REFERENCIA (skim, no leer completo): docs/audit/12-credit-approval-workflow-diagram.md
Esta es la lectura técnica más densa de la semana. El doc te camina por: - Fase 1: Legal check (TransUnion) - Fase 2: Validación de identidad (Experian CrossCore OTP) - Fase 3: Preguntas de identidad (Experian CrossCore) - Fase 4: Consulta HDC (DataCrédito) - Fase 5: Validación interna (mora, intentos) - Fase 6: Cálculo de cupo - Fase 7: Asignación de cupo y generación de pagaré
Después de leer, en Claude Code, corre: /trace-a-flow aprobar-cliente
Compara el output de Claude con tu modelo mental. Haz preguntas de seguimiento sobre cualquier cosa que te sorprenda. Ejemplos que han producido buenas conversaciones en onboardings pasados: - "¿Qué pasa si Experian hace timeout en la Fase 2? ¿Dónde en el código se maneja el timeout?" - "Muéstrame la cadena de middleware para /aprobar-cliente. ¿Qué hace cada middleware?"
11:00 – 12:00 Landmines: bugs conocidos LEE: docs/onboarding/04-the-landmines/01-known-bugs.md
Este archivo tiene 2.487 líneas. No lo lees de punta a punta. Le haces SKIM al tope, luego lo INDEXAS para uso futuro.
Pase recomendado: 1. Lee las secciones "How to read this document" y "Severity rubric" completas (10 min). 2. Pasa por cada entrada haciendo skim, leyendo solo el título, la severidad y la oración de "What's wrong" (30 min). 3. Haz una nota personal de las top 10 entradas que parezcan más cercanas a donde es probable que trabajes (10 min). 4. Para esas 10, lee la sección "Affected files" para que sepas qué rutas de archivos marcar en tu editor (10 min).
Al final de este bloque no tienes el catálogo entero memorizado. Tienes una short-list personal de landmines que importan para tu trabajo, y sabes que tienes que hacer grep al archivo por nombre cada vez que abras un nuevo archivo en el codebase.
12:00 – 13:00 ALMUERZO
13:00 – 13:15 Genera el Podcast Ep 5 en NotebookLM - Fuente: docs/onboarding/media/podcasts/SOURCE-ep5-landmines.md - 14 minutos.
13:15 – 13:30 Escucha el Podcast Ep 5 (~14 min) - "The Landmines: Where Not to Step" - Los anfitriones son directos y protectores. Esto es lo más cercano a un traspaso verbal de un ingeniero senior que el kit puede proveer.
13:30 – 14:30 Arqueología de código LEE: docs/onboarding/04-the-landmines/02-code-archaeology.md
¿Por qué existen esos landmines? El doc de arqueología reconstruye las decisiones históricas que produjeron la forma de hoy. Es especulativo pero bien respaldado. Leerlo convierte el "wow eso está roto" en "ah, ya veo cómo llegamos aquí."
Este entendimiento importa porque: - No vas a cometer los mismos errores por presión de tiempo que cometió el dev anterior. - Vas a entender por qué ciertos refactors son difíciles (deshacen atajos en capas). - No vas a culpar al dev anterior — la mayoría de los landmines son artefactos de presión de tiempo, no brechas de habilidad.
14:30 – 15:00 BREAK DE LA TARDE
15:00 – 17:00 Setup del pair programming con IA LEE: docs/onboarding/06-ai-pair-programming/01-claude-code-setup.md (30 min — leer completo) BOOKMARK (skim, no leer completo): docs/onboarding/06-ai-pair-programming/03-prompt-cookbook.md (5 min de skim — esta es tu referencia anual) LEE: docs/onboarding/06-ai-pair-programming/04-when-not-to-trust-the-ai.md (30 min — leer completo)
Luego practica. En Claude Code, corre al menos 5 prompts del cookbook en archivos reales del codebase. 5 sugeridos: 1. /explain-this-service app/Services/AprobarCupoService.php 2. /find-landmines-near app/Services 3. /safe-to-refactor app/Jobs/GenerarCreditoDeVenta.php 4. "Compara la página Vue resources/js/pages/Checkout/Confirm.vue con su controller de respaldo. ¿Están sincronizadas?" 5. "Caminame por las transiciones de estado de Venta. Cita archivo:línea por cada cambio de estado."
MILESTONE 1 — Puedes listar 10 landmines de memoria con su archivo:línea. Pruébate: cierra la laptop, abre una nota, escribe 10 entradas. Luego revisa.
MILESTONE 2 — Has corrido al menos 5 prompts del cookbook en archivos reales. Tienes una sensación de qué prompts producen output excelente y cuáles necesitan ser reformulados.
MILESTONE 3 — Puedes explicar el pipeline de crédito de 7 fases de memoria, incluyendo qué API externa se llama en cada fase.Día 4 — Jueves: Primer PR
Meta del día: a las 5pm, tu primer PR está abierto. Idealmente también revisado y en camino a fusionarse mañana.
Este día rompe el patrón de los primeros tres. Menos lectura, más escritura. Eliges una tarea Tier 1, implementas, entregas.
09:00 – 09:30 Lee 01-tier-1-tasks.md y elige tu tarea LEE: docs/onboarding/05-first-contributions/01-tier-1-tasks.md (leer de punta a punta; slot de ~45 min, objetivo 30 min)
Tarea recomendada para el Día 4: T1-01 (logger del interceptor frontend). - Menor riesgo: puro frontend, un archivo editado. - Cierra un landmine que afecta a todo usuario (spill de PII). - Tiempo estimado: 1-2 horas con Claude Code como pair. - Archivos: resources/js/plugins/errorInterceptor.ts (solo).
Tareas alternativas si T1-01 no te cae bien: - T1-02: Rate limiting de API (dificultad media, backend) - T1-03: Fix del composable wishlist (media, frontend) - T1-04: Sincronización de Profile.vue con el controller (media, frontend, mayor superficie) - T1-05: Fix de dos archivos (Vue + PHP) — la Tier 1 más grande
Elige la que te resuene. El punto del Día 4 es entregar, no elegir la tarea perfecta. T1-01 fue diseñada para ser la tarea por defecto del Día 4 — empieza ahí a menos que tengas una razón fuerte para no hacerlo.
09:30 – 10:00 Lee la spec completa de tu tarea
En 01-tier-1-tasks.md, tu tarea tiene seis secciones: 1. El bug 2. Por qué importa 3. Archivos que tocarás 4. El fix 5. Approach sugerido con Claude Code 6. Criterios de aceptación + plantilla de PR
Lee las seis. Luego lee el landmine relacionado en docs/onboarding/04-the-landmines/01-known-bugs.md. La entrada del landmine explica por qué existe el bug. La entrada de la tarea te dice qué entregar.
Crea rama desde main usando la convención de 03-how-to-ship.md: git checkout -b <initials>/fix/L-26-stop-success-logging (reemplaza L-26 con el ID real del landmine de tu tarea)
10:00 – 12:00 Implementa el fix
Abre Claude Code. Corre el prompt exacto de la sección "Suggested approach with Claude Code" de la tarea. Revisa el diff que Claude saca. Aplícalo. Corre lint y format: npm run lint npm run format composer pint (si tocaste PHP)
Smoke-test como está documentado en la tarea. Para T1-01 específicamente: composer dev # Loguéate, navega, luego en otra terminal: php artisan tinker >>> DB::table('frontend_error_logs')->where('creado_en', '>', now()->subMinutes(2))->count(); # Debería ser 0 después de solo navegación exitosa.
Si tu smoke test revela que el fix está mal, itera. NO hagas push de código que no pase su propio smoke test.
12:00 – 13:00 ALMUERZO
13:00 – 14:00 Escribe el test
La mayoría de tareas Tier 1 tienen un criterio de aceptación que dice "tests pasan" o "test agregado (si aplica)". Para T1-01, Vitest está instalado pero no configurado — la tarea dice "anótalo como follow-up en la descripción de tu PR". Haz eso.
Para tareas que SÍ requieren un test (T1-02 en adelante típicamente lo hacen), escribe un test PHPUnit en tests/Feature/ siguiendo la estructura de los tests existentes en ese directorio. Corre: composer test # O php artisan test --filter=YourNewTestName
14:00 – 14:30 Abre el PR
Usa la plantilla de 03-how-to-ship.md, que también está reproducida en la entrada de la tarea misma. La plantilla incluye: - Formato del título: "fix: <una línea> (L-XX)" - Body: planteamiento del problema, el fix, archivos cambiados, resultados del smoke test, follow-ups
Empuja tu rama y abre el PR contra main: git push -u origin <initials>/fix/L-26-stop-success-logging gh pr create --title "..." --body "..."
Hazle ping a tu revisor (tu team lead, hoy).
14:30 – 15:00 BREAK DE LA TARDE (Ganado. Entregaste un PR en el Día 4 de tu primera semana.)
15:00 – 17:00 O bien aborda los comentarios de la revisión O empieza tu segunda tarea
Si tu revisor es rápido, tu PR ya tiene comentarios para este punto. Abórdalos. Comenta-luego-commitea según 03-how-to-ship.md sección 5. Sigue iterando hasta que tu revisor diga "ship it" o termine el día.
Si tu revisor es lento (el caso más realista en el Día 4), empieza tu segunda tarea. Recomendación: T1-02 (rate limiting de API) para gente de backend, o T1-04 (Profile.vue) para gente de frontend. Elige un dominio DIFERENTE al de tu primera tarea para que te estires distinto en el Día 5.
Lee la spec completa de la segunda tarea. Crea rama desde main. Empieza a implementar. No empujes la segunda tarea aún — quieres que tu primer PR esté fusionado antes de empujar el segundo.
MILESTONE 1 — Primer PR abierto.
MILESTONE 2 — Comentarios del primer PR abordados (si quedaron en el tiempo).
MILESTONE 3 — Segunda tarea empezada, rama abierta, implementación comenzada.Día 5 — Viernes: Entrega, retro, sube de nivel el kit
Meta del día: a las 5pm, primer PR fusionado a staging, segundo PR en buena forma, retro personal registrado, kit actualizado.
09:00 – 10:00 Cierra tu primer PR
Aborda cualquier comentario final de la revisión. Aplica squash si tu revisor lo pidió. Fusiona si está aprobado.
Si tu revisor quiere cambios sustantivos, tienes hasta las 12:00 para hacerlos. Empuja fuerte.
Cuando tu PR se fusione, regístralo en docs/onboarding/_internal/first-ships.md. Formato: - <YYYY-MM-DD>: <tu nombre> — <título del PR> (<URL del PR>) Landmine cerrado: L-XX Tiempo desde el primer commit hasta el merge: ~X horas Notas: <una o dos oraciones>
10:00 – 12:00 Continúa tu segunda tarea
Empezaste esto ayer. Empuja hasta tener una implementación funcionando. Smoke-test. Lint. Format. Test.
12:00 – 13:00 ALMUERZO
13:00 – 15:00 Termina y abre el segundo PR
Empuja tu rama. Abre el PR. Etiqueta a tu revisor.
Si terminas más rápido de lo esperado, elige una Tier 1 que no hayas hecho todavía y empiézala. La meta para fin de semana es cantidad Y calidad — dos PRs en la semana uno es genial; tres sería excepcional.
15:00 – 15:30 BREAK DE LA TARDE
15:30 – 16:30 Retro personal
Abre un archivo nuevo: docs/onboarding/_internal/onboarding-notes-<your-name>.md
Escribe 1-2 páginas cubriendo: - ¿Qué te sorprendió del codebase? - ¿Qué te sorprendió del negocio? - ¿Qué landmines encontraste que no estaban documentados? - ¿Qué docs estaban poco claros, faltantes o equivocados? - ¿Qué gotchas pegaste durante el setup que no están en docs/onboarding/03-development-setup/03-common-gotchas.md? - ¿Qué te dirías a ti mismo el lunes en la mañana? - ¿Cuál es tu nivel de confianza en el pipeline de crédito? ¿En el flujo de venta? ¿En el queue? - ¿Dónde quieres profundizar en la Semana 2?
Este es el doc más valioso que vas a escribir en toda la semana. La próxima persona contratada lo va a leer mañana.
16:30 – 17:00 Retro del equipo
Sincroniza con tu team lead (o quien sea que te esté haciendo onboarding).
Lleva: - Tus notas del retro personal - Una lista de cosas para actualizar en el kit - Una lista de preguntas que aún tienes - Un plan para la Semana 2 (qué tareas, qué docs profundizar, qué áreas explorar)
Caminen por tus notas juntos. Pónganse de acuerdo en al menos una actualización del kit que aterrizarás como PR. Actualizaciones comunes: - Agregar un gotcha a 03-common-gotchas.md - Agregar un landmine que descubriste a 01-known-bugs.md - Aclarar un pasaje en 04-trace-a-credit-approval.md - Agregar un prompt al cookbook que te funcionó bien
Archiva un PR pequeño con la actualización. Este es el commit más importante de tu semana: hace el kit mejor para el siguiente dev.
MILESTONE 1 — Primer PR FUSIONADO a staging.
MILESTONE 2 — Segundo PR abierto y en revisión.
MILESTONE 3 — Retro personal registrado en _internal/onboarding-notes-<your-name>.md.
MILESTONE 4 — Al menos un PR aterrizado contra el kit de onboarding mismo, mejorándolo con base en tu retro.
MILESTONE 5 — Tu primer ship está registrado en _internal/first-ships.md.Después de la Semana 1
Cómo se ve la Semana 2
Para el lunes de la Semana 2, tienes un PR fusionado, un segundo en vuelo y una memoria de trabajo actualizada. La Semana 2 es cuando empiezas a aparecer con opiniones.
Una Semana 2 típica:
- Elige una tarea Tier 2. Ver
docs/onboarding/05-first-contributions/02-tier-2-tasks.md. Las tareas Tier 2 son más amplias (5-15 archivos), requieren más entendimiento del dominio y entregan capacidad nueva real. Tarea recomendada de Semana 2 para la mayoría de los ingenieros: T2-01 (construir un proveedor mock local de integraciones). Desbloquea cada onboarding futuro al eliminar la necesidad de credenciales reales de DataCrédito / TransUnion / Experian en desarrollo local. Valor compuesto máximo. - Profundiza un doc de auditoría por día. Elige los docs de auditoría que mapeen a donde estás trabajando. Si estás en el pipeline de crédito, profundiza
docs/audit/12. Si estás en el flujo de venta, profundizadocs/audit/08. Si estás en webhooks, profundizadocs/audit/05. - Agrega al kit. Cada gotcha, cada landmine, cada prompt que funcionó genial — archiva el PR. El kit está vivo.
- Empareja con un compañero. Si alguien más también está haciendo onboarding, agenda una sesión de pairing de 60 minutos a mitad de semana. Dos devs de onboarding pueden codebuggear un problema y producir 2x las actualizaciones al kit.
Rastrea tu progreso
Mantén docs/onboarding/_internal/onboarding-notes-<your-name>.md abierto en una pestaña. Agrégale diariamente a lo largo de la Semana 2. Específicamente registra:
- Nuevos landmines que encuentres (archivo:línea y severidad).
- Nuevos prompts que funcionaron bien (agrégalos al cookbook).
- Documentos que desearías que existieran (archiva un issue con
[kit-gap]en el título). - Áreas donde la auditoría estaba equivocada, desactualizada o faltante (archiva un issue con
[audit-gap]).
Al final de la Semana 2 deberías tener un archivo de notas con 20-40 ítems. Ese archivo es tu transición de “dev nuevo” a “miembro del equipo.”
Pásalo adelante
El kit mejora con cada onboarding. ¿Encontraste un gotcha? Agrégalo a 03-development-setup/03-common-gotchas.md. ¿Encontraste un landmine? Agrégalo a 04-the-landmines/01-known-bugs.md con la misma rúbrica de severidad y el mismo formato de registro. ¿Escribiste un prompt que produjo output excelente? Agrégalo a 06-ai-pair-programming/03-prompt-cookbook.md.
El kit es la memoria de trabajo colectiva del equipo. Trátalo como código: revisa cada cambio, comítelo bajo un mensaje significativo, refiérete a él constantemente y nunca dejes que se pudra.
Tracks especiales
El currículo de arriba es el camino por defecto. La mayoría de los ingenieros debería seguirlo como está escrito. Si estás fuertemente especializado en una dirección, los tracks de abajo ajustan el foco.
Para desarrolladores fuertemente backend
Ajustes al currículo por defecto:
- En la tarde del Día 1, también hazle skim a
docs/audit/01-er-diagram.md. Toma una sensación del modelo de datos completo. Paga toda la semana. - En la tarde del Día 2, bájale la velocidad a
03-trace-a-sale.mdy en su lugar leedocs/audit/09-event-job-dependency-graph.mden paralelo. El grafo de event/job es el mapa estructural del back end. - En el Día 3, lee
docs/audit/12-credit-approval-workflow-diagram.mdcompleto (no solo skim). Es la referencia canónica para el pipeline. - Para el primer PR del Día 4, T1-02 (rate limiting de API) es un mejor encaje backend que T1-01.
- Para la Semana 2, elige T2-01 (proveedor mock) como tu primera Tier 2. La ganancia de experiencia de desarrollo se compone a través del equipo entero.
Para desarrolladores fuertemente frontend
Ajustes al currículo por defecto:
- En la tarde del Día 1, también hazle skim a
docs/audit/13-frontend-page-map.md. Mapea cada página de Vue a su controller de respaldo. Esto es crítico para tu trabajo. - En el Día 2, cuando leas
02-trace-a-request.md, enfócate más en las secciones del puente de Inertia que en las secciones controller-a-base-de-datos. - En el Día 3, los landmines que más importan para ti son los frontend: L-26 (success logger), el composable wishlist, la inconsistencia de Profile.vue. Léelos completos; hazle skim a los landmines puramente backend.
- Para el primer PR del Día 4, T1-01 (interceptor) es perfecta; T1-04 (Profile.vue) es la segunda mejor elección frontend.
- Para la Semana 2, elige T2-02 o T2-03 (fuertemente frontend) — ver
02-tier-2-tasks.md.
Para desarrolladores full-stack
El currículo por defecto está calibrado para ti. Lee todo en orden. Elige T1-01 en el Día 4 (menor riesgo, ship más rápido). Para la Semana 2, elige la Tier 2 que te estire en la dirección en la que quieres crecer.
Plantilla de calendario
Bloques de calendario sugeridos para poner en tu calendario antes de que empiece el Día 1. Ajusta a los horarios estándar de tu equipo.
Diario, Lun–Vie: 11:00 – 11:15 Standup (cualquiera sea la hora del standup de tu equipo) 12:00 – 13:00 Almuerzo 15:00 – 15:30 Break de la tarde
Únicos: Lun 09:00 – 10:00 Setup de onboarding con team lead Vie 16:30 – 17:00 Retro de la Semana 1 con team leadBloquea los horarios diarios ahora, antes del lunes en la mañana. Van a proteger tus bloques de foco de reuniones que se vayan corriendo.
Nota final
Este currículo es opinado porque la opinión es lo que te lleva a un PR fusionado para el viernes. Las opiniones no son perfectas para todos — están calibradas para el dev nuevo mediano que entra en frío. Si algo no se siente bien, desvíate. Si algo se siente genial, escríbelo y actualiza este currículo para el siguiente dev.
El kit está vivo. El equipo es pequeño. Los clientes son reales. Bienvenido.
Cuando termines el viernes, registra tu primer ship, escribe tu retro, y el lunes — ya no eres un dev nuevo. Eres el equipo.