Diego Molinari

← Todos los casos

Un sitio nuevo que no rompió el viejo

El problema

Había un sitio de clasificados de vehículos funcionando, hecho en ASP clásico, que ya no tenía margen para crecer: ni buscador con filtros, ni pago en línea, ni una versión mobile decente.

Reescribirlo era la parte fácil. La parte difícil es que ese sitio no estaba solo: del otro lado había un sistema administrativo que leía sus avisos, con gente trabajando sobre él todos los días. Apagar el viejo y prender el nuevo un lunes a la mañana no era una opción.

Qué construí

Un portal completo: buscador con filtros por marca, modelo, versión, año, precio, combustible y ubicación; publicación de avisos con carga de fotos; pago en línea con Mercado Pago para activarlos; y un panel de moderación donde se revisan los avisos, se corrigen datos y se chatea con el vendedor desde una sola vista.

Está en producción y es público: motoresargentinos.com.

La decisión que ordenó todo

El aviso se publica en el sistema nuevo y se sincroniza al viejo. No al revés.

Quién manda y quién escucha

Lo obvio — apagar y prender

Migración de golpe

  • Un día se corta el sitio viejo y arranca el nuevo.
  • Todo lo que leía del viejo hay que migrarlo el mismo día.
  • Si algo falla, no hay a dónde volver.

Lo que hice — convivencia

El nuevo publica, el viejo recibe

  • El aviso nace en el sistema nuevo.
  • Un servicio lo empuja al sistema anterior.
  • Lo que dependía del viejo sigue funcionando sin enterarse.
El sistema nuevo es la fuente de verdad desde el primer día, pero el anterior nunca se queda sin datos. La migración deja de ser un evento y pasa a ser un estado.

Las decisiones que costaron

Sincronizar hacia el legacy, no leer de él. Era tentador dejar el sistema viejo como dueño del dato y que el nuevo lo consultara: menos trabajo al principio. Pero eso condena al sitio nuevo a no poder tener ni un campo que el viejo no tenga. Al invertirlo, el modelo nuevo puede crecer, y lo que se sincroniza es el subconjunto que el otro entiende.

El pago no activa el aviso: lo activa la confirmación del pago. Parece lo mismo y no lo es. El usuario que vuelve del checkout puede cerrar la pestaña antes de tiempo, o volver dos veces. El estado del aviso lo decide la respuesta de la pasarela, no el regreso del navegador.

Fotos con relación de aspecto fija. Las imágenes llegan con cualquier medida y en mobile se recortaban solas, cortando autos por la mitad. Se generan miniaturas y se muestran en 4:3, siempre. Es un detalle chico que aparece en cada tarjeta del listado.

Vista ilustrativa · datos de ejemplo

portal · explorar

Filtros

Marca

  • Todas
  • Ford
  • Volkswagen
  • Toyota

Combustible

  • Nafta
  • Diésel
  • Híbrido

Año

2015 — 2025

4:3

Pick-up mediana 2021

Diésel · 4×4 · 62.000 km

$ 28.400.000

Publicado
4:3

Sedán compacto 2019

Nafta · Manual · 88.500 km

$ 14.900.000

Publicado
4:3

Utilitario 2023

Diésel · Manual · 31.200 km

$ 32.750.000

Esperando pago
Reconstrucción ilustrativa, no una captura. Los vehículos y los precios son inventados. Lo que muestra es el estado del aviso, que es donde vive la lógica: un aviso existe desde que se publica, pero recién se ve en el listado cuando la pasarela confirma el pago. El recuadro de la foto está en 4:3 porque las imágenes llegan con cualquier medida.

Resultado

El portal está en producción, es de acceso público y vende publicaciones con pago en línea. El sistema anterior sigue recibiendo cada aviso, así que nada de lo que colgaba de él tuvo que cambiar de un día para el otro.