All projects
Data Engineering
8 months2022 — 2023

Legacy Data Migration Engine

Data Engineering & System Modernisation

Migrated large legacy desktop databases (FoxPro / DBF) into modern relational systems with full validation and reconciliation.

500+

Legacy forms

200+

Reports

Parallel run

Strategy

PostgreSQL

Target

Overview

A migration toolchain that moves large legacy desktop ERPs — hundreds of FoxPro forms and reports backed by DBF files — into a modern relational database, with schema modernisation, data cleansing, report recreation and a parallel-run reconciliation strategy.

The business problem

Mission-critical operations ran on ageing FoxPro/DBF systems with business logic locked in procedural code, blocking modernisation and remote access.

The solution

I built custom Python migration scripts that map legacy DBF schemas to a normalised relational model, validate and cleanse data, recreate reports with PDF generation, and run old and new systems in parallel for reconciliation before cut-over.

My responsibilities

  • Mapped legacy DBF schemas to a normalised relational model
  • Built data validation, cleansing and integrity checks
  • Recreated legacy reports with modern PDF generation
  • Designed an incremental, parallel-run migration strategy

Challenges solved

  • Extracting business logic embedded in 500+ legacy forms
  • Preserving historical data integrity during migration
  • Reconciling old and new systems during a parallel-run period

Key features

Schema modernisation (DBF → relational)
Data validation and cleansing
Report recreation with PDF generation
User-access migration and reconciliation

Architecture highlights

  • ETL pipeline mapping DBF → relational schema
  • Validation and reconciliation stages with integrity checks
  • Form-to-Angular and report-to-PDF migration templates
  • Incremental, module-by-module cut-over

Technologies used

PythonFoxPro / DBFPostgreSQLOracleFlaskAngularCustom ETL Scripts

Scalability

The pipeline processes modules independently, so large systems migrate incrementally without a risky big-bang cut-over.

Performance

  • Batched extraction and load for large datasets
  • Streaming transforms to bound memory
  • Parallelised module processing

Security

  • Integrity checks on every migrated record
  • Reconciliation reports before cut-over
  • Controlled access migration

Screenshots

Product screenshots available on request (NDA-protected).

Architecture diagram

Detailed system architecture available on request.