Inicio de MexDevs

Rescate y refactorización

Los proyectos con problemas son parte normal de nuestro trabajo.

El desarrollador se fue a la mitad. La agencia dejó de contestar. La fecha de lanzamiento es real y el código no está listo. Tomamos proyectos web en esta situación y los sacamos adelante.

Señales de que lo necesita

Seguramente reconoce al menos una.

Cómo tomamos un proyecto

Cuatro pasos. El primero es pequeño.

  1. Accesos e inventario

    Reunimos todo: repositorios, hosting, dominios, bases de datos, cuentas de servicios externos. Si falta algo, le ayudamos a recuperarlo. Muchas veces esta es la parte más urgente.

  2. Revisión

    Leemos el código y la configuración y ponemos por escrito lo que encontramos. Qué funciona, qué es frágil, qué es riesgoso y qué haría falta para corregirlo. En lenguaje claro y con prioridades.

  3. Estabilización

    Respaldos, un despliegue que funcione, monitoreo, y primero los errores y problemas de seguridad más peligrosos. El objetivo es un proyecto que se pueda modificar sin miedo.

  4. Seguir adelante

    Terminar las funciones pendientes, atender el resto de la lista o refactorizar donde valga la pena. El orden lo decide usted con nosotros, con base en la revisión.

Refactorización

¿Reescribir o refactorizar?

A veces reescribir todo es la decisión correcta. Pero muchas veces significa pasar un año construyendo lo que ya tiene, mientras el sistema actual sigue necesitando correcciones.

Refactorizar parece más lento y casi siempre termina antes. Mejoramos el código sin sacarlo de operación, un área a la vez, y el sitio sigue funcionando todo el tiempo. Agregamos pruebas en las partes que tocamos, para que lo corregido no se vuelva a romper.

Trabajo típico:

  • Dividir archivos grandes y enredados en partes que hacen una sola cosa.
  • Eliminar código muerto y lógica duplicada.
  • Agregar tipos, pruebas y linting a código que no los tenía.
  • Actualizar frameworks y paquetes en pasos seguros.
  • Documentar cómo encaja todo, para quien venga después.

Si creemos que reescribir es mejor opción, se lo explicamos en la revisión.

El despliegue va incluido

Corregir el código es solo una parte.

La mayoría de los proyectos con problemas también tienen un proceso de publicación con problemas. Como parte del rescate normalmente configuramos despliegue continuo: compilación y pruebas automáticas, ambientes de prueba y vista previa, y publicación a producción con un clic y opción de regresar. A partir de ahí, publicar una corrección es rutina.

Más sobre despliegue continuo

Qué recibe con la revisión

  • Un resumen por escrito del estado del código, el hosting y el despliegue.
  • Una lista de problemas con prioridades, de lo urgente a lo cosmético.
  • Nuestra recomendación: corregir, refactorizar o reconstruir, y por qué.
  • Un estimado para el siguiente paso.

Si quiere llevar esa revisión a otro equipo, puede hacerlo. Es suya.

Mándenos el proyecto que nadie quiere tocar.

Díganos qué es, con qué tecnología está hecho y qué está fallando. Empezamos con una revisión.