19 - Recomendación Estratégica
Pregunta que resuelve: ¿Sobre qué base construir los próximos 3 años?
Respuesta: Mantener Laravel + Vue. NO reescribir. NO microservicios. Aplicar disciplina.
El insight
Los 154 hallazgos son bugs de disciplina, no de arquitectura.
| Lo que está bien | Lo que falta |
|---|---|
| Laravel 12, Vue 3, Inertia | Policies de autorización |
| Service-DTO pattern | DTOs estrictos (no mass assignment) |
| 6 integraciones funcionando | Monitoring + alerting |
| 38 tablas, dominio comprensivo | Filtros PII en logs |
| Job queue chain bien diseñado | Locking + atomic operations |
No es demoler la casa. Es contratar electricista, cerrajero y plomero.
Las 3 opciones
| Opción | Tiempo | Costo USD | Riesgo | Mobile en | ¿Re-certificar bureaus? |
|---|---|---|---|---|---|
| Reescribir en TypeScript | 6-12 meses | $400-600K | Muy alto | 6+ meses | Sí, completo |
| Microservicios | 8-15 meses | $500K-1M | Extremo | 8+ meses | Sí, parcial |
| Mantener + ordenar ✅ | 8-12 semanas | $80-120K | Bajo | 3 meses | No |
Por qué no rewrite en TypeScript
- Frontend ya ES TypeScript (Vue 3). No estandariza nada.
- TypeScript backend no resuelve los bugs (siguen siendo de disciplina).
- 6 bureaus colombianos requieren re-certificación (meses de paperwork).
- Mobile app retrasada indefinidamente.
Por qué no microservicios
- Equipo actual es pequeño. Microservicios se justifican con 50+ ingenieros.
- Distributed transactions = pesadilla para flujo de crédito (hoy es atómico).
- 10x complejidad operacional sin DevOps team.
- Los mismos bugs siguen existiendo en cada microservicio.
- Shopify, GitHub, Basecamp, Stripe (interno) — todos eligieron monolito modular.
Lo que sí: organizar por dominio
Hoy el código está organizado por tipo (Controllers/, Services/, Models/). Reorganizarlo por dominio sin reescribir:
app/Modules/├── Identity/ users, personas, clientes, auth├── Catalog/ productos, precios, marcas, lineas├── Partner/ empresas, sucursales, empleados├── CreditApproval/ aprobar_cupo, OTP, HDC, EMCALI├── Sales/ órdenes, ventas, detalles├── Billing/ cuotas, planes, pagos└── ExternalIntegrations/ TU, EX, DC, CC, EMCALI, SHIVAMCada módulo: API pública + dominio privado + tests propios. Comunicación entre módulos vía eventos.
La mobile app reusa estas mismas APIs. Sin duplicar lógica.
Stack a adoptar (todo gratis)
Cada herramienta resuelve hallazgos específicos del audit.
| Herramienta | Para qué | Resuelve |
|---|---|---|
| Sentry | Error tracking (5K errors/mes free) | F-PII-11 (no observability) |
| Linear | Project management (free hasta 10 personas) | Reemplaza Excel para tracking |
| Cloudflare | DNS + CDN + WAF + DDoS (free) | Rate limiting, bot blocking |
| Better Stack | Uptime + logs + status page (free) | F-PERF-8 (logs sin retención) |
| GitGuardian + Dependabot | Security scanning (free) | Detecta secretos en commits |
| Resend | Transactional email (3K/mes free) | Reemplaza MAIL_MAILER=log |
| Slack o Discord | Team comms (free) | Reemplaza WhatsApp para temas técnicos |
| Cursor o Claude Code | AI coding assistant ($20/mes) | Acelera el trabajo del equipo |
Costo total mes 1: $0 (excepto el AI assistant de $20)
Todo integra con GitHub. Setup completo: ~4 horas en 1 semana.
Preguntas frecuentes
P: ¿No sería mejor empezar limpio en TypeScript? R: El frontend ya es TypeScript. Cambiar el backend no estandariza nada. Los bugs son de disciplina, no de lenguaje. Cambiar lenguaje cuesta 6 meses y los bugs siguen ahí.
P: ¿Y dentro de 2 años, si se necesitan microservicios? R: Si la operación llega a esa escala, el monolito modular ya está dividido por dominio. Extraer un módulo a microservicio es proyecto de semanas, no años. Modular monolith es el mejor path a microservicios cuando se necesitan.
P: ¿No nos quedamos atrás si no migramos a tech moderno? R: Laravel 12 y Vue 3 ES tech moderno. Lo que falta no es lenguaje — es Sentry, CI/CD, tests, encryption. Eso es lo que entrega el roadmap de 12 semanas.
P: ¿Cuál es el riesgo si no se hace nada? R: Hoy: cada cliente comprando cantidad > 1 paga 100%+ extra → class action. Habeas Data violations → multas SFC hasta $2.500M COP. Cualquier empleado puede tomar control total. Mobile app amplifica todo esto.
Cierre
El sistema no necesita reescribirse. Necesita disciplina aplicada a la arquitectura que ya tiene. En 12 semanas pasa de tener un sistema con 154 vulnerabilidades a tener uno seguro, modular, monitoreado, listo para mobile y listo para escalar — sin tirar lo que ya está construido.