Skip to contentSkip to content
Certificados verificados. En cadena. Para siempre.Más información
Cover image for Refactorizar un script monolítico a módulos reutilizables
Code

Refactorizar un script monolítico a módulos reutilizables

FreeVerified credential3 semanasIntermediate

Visión general

De qué trata este proyecto.

Lee el script (proporcionado), entiéndelo y traza un mapa de qué hace cada parte. Refactoriza en 5 módulos claros: io (lectura CSV), tax (cálculo de impuestos por país), invoice (generación PDF), email (envío) y main (orquestación). Cada módulo expone una interfaz pequeña y no comparte estado mutable. Aplica refactor en pasos pequeños y commits atómicos (sigue el patrón "refactor en pequeños pasos" de Martin Fowler). Añade tests para cada módulo. Demuestra extensibilidad añadiendo soporte para un país nuevo (Brasil) con cambios solo en el módulo tax. Entrega el código refactorizado, el log de commits, los tests, un informe de 4 páginas sobre las decisiones de refactor y un análisis honesto de qué quedó pendiente.

CredentialBlockchain-anchored
ShareableLinkedIn-ready
LanguageEnglish
PaceSelf-paced

El Briefing

Lo que harás y lo que demostrarás.

Refactorizar un script monolítico de 900 líneas en una arquitectura modular extensible, con tests, demostrando la extensibilidad al añadir un país nuevo solo en un módulo.

Earning criteria — what you'll demonstrate

  • Aplicar refactor en pasos pequeños y commits atómicos
  • Separar responsabilidades sin reescribir el comportamiento
  • Añadir tests a código heredado sin perder funcionalidad
  • Demostrar extensibilidad con un cambio real (no hipotético)

Encaje académico

Dónde encaja esto en tus estudios.

Afina las mismas habilidades que tu titulación espera de ti.

Habilidades

Habilidades que demostrarás.

Cada una aparece en tu credencial verificada.

Carreras

Roles para los que esto te prepara.

Títulos reales. Puentes de habilidades reales. Elige el que más se acerque a tu trayectoria.

Trayectorias profesionales que esto construye

Roles canónicos

Ingeniero de Software

Refactorizar código heredado sin romperlo y demostrar extensibilidad con un cambio real es exactamente la habilidad que diferencia a una persona ingeniera junior empleable de una recién egresada en abstracto.

Este proyecto afina

  • refactoring
  • modular-programs
  • software-design

Ingeniero de Backend

Backend que sabe refactorizar en pasos pequeños mantiene velocidad sin paralizar al equipo y sin cargo-cult de patrones.

Este proyecto afina

  • refactoring
  • modular-programs
  • python

Una cosa más

Puedes tener una credencial en tu CV para el viernes.