Contexto.
Es mi trabajo actual en Etecnic, donde entré en prácticas y me quedé con contrato indefinido. El producto es un SaaS multi-tenant con el que operadores energéticos y aeropuertos gestionan la recarga de vehículos eléctricos.
Llevo funcionalidades completas: endpoints REST con permisos por rol y tests en RSpec, branding por dominio y, sobre todo, la facturación. No publico código ni material de la empresa: aquí solo cuento mi parte.
El problema.
Operadores energéticos y aeropuertos de varios países necesitan facturas legales en su idioma y con el aspecto de su marca.
Lo que decidí, y por qué.
Facturación en nueve idiomas
- qué
- Todos los textos de la factura salen de traducciones, no de cadenas fijas, para que cada cliente la reciba en su idioma.
PDF a partir de plantillas HTML y CSS
- qué
- Migré la generación de los PDF de factura a plantillas HTML y CSS, con su paso en el pipeline de CI.
Marca por dominio
- qué
- Cada cliente ve la aplicación y sus documentos con su propia marca según el dominio desde el que entra.
Resultado.
- Facturas en el idioma y con la marca de cada cliente, en producción.
- Endpoints con permisos por rol cubiertos por tests en RSpec.
Qué aprendí.
- Cómo funciona un entorno real de desarrollo y producción: Git flow, ramas, sprints y merge requests revisadas.
- A leer un problema en producción, encontrar la causa y resolverlo.
- A aprender por mi cuenta dentro de un equipo: a veces cada uno tiene que encontrar su forma exacta de hacer las cosas.