Data and Cloud Engineer building reliable data platforms, cloud infrastructure and reproducible workflows for operational and scientific data.
I design data-intensive systems with Python, SQL, AWS, Azure, GCP, Terraform, Docker, Kubernetes, Nextflow and CI/CD. My work spans data engineering, cloud platform automation, applied machine learning and bioinformatics, with a foundation in life sciences that shapes how I treat data: computational outputs must be reproducible, traceable and explicit about their limitations. So the engineering emphasises validation, provenance, observability, testing and clear documentation.
The consistent question across all of it is the one that decides whether a system can be trusted in production. Is it correct, is it validated, and does it fail safely?
- A pipeline that completed successfully hasn't proven the data is right. Schemas, volumes, freshness and reconciliation still have to be tested.
- A deployment that can't roll back in seconds isn't a deployment. It's a hope.
- A variant caller reporting 95% confidence should be right 95% of the time, and should abstain when it can't be.
🌍 Available for remote work worldwide · 🔎 Data Engineering · Cloud & Platform Engineering · Bioinformatics Engineering 🔗 gbadedata.com for full case studies, architecture and engineering evidence
Microsoft Certified: Fabric Data Engineer Associate (DP-700) and Fabric Analytics Engineer Associate (DP-600)
Code merged upstream into projects I don't maintain. This is the most externally validated work here, because someone else's maintainers reviewed and accepted it.
| Project | Contribution | Status |
|---|---|---|
| nf-core/modules | Fixed the FreeBayes module. Corrected three nf-test cases running on human data but labelled sarscov2, updated snapshot keys, added missing EDAM ontology entries, and fixed stub gzip syntax for nf-core linting (PR #12018) |
✅ Merged |
| Meltano | Three merged PRs: TTY-aware colour suppression for clean redirected logs, FORCE_COLOR support with NO_COLOR precedence, and --refresh-catalog for meltano invoke |
✅ Merged |
| Pydantic Settings | Regression tests for nested environment-variable aliases, validation aliases and alias choices | Local validation |
| AEGIS | Replaced inaccurate install instructions with a reproducible local setup | Docs |
Infrastructure as code, zero-downtime delivery, and pipelines built to be operated rather than demoed.
| Project | What it does |
|---|---|
| aws-supplyshield-lakehouse | Incremental supply-chain ingestion into an S3 lakehouse with data contracts, schema validation and source-to-target reconciliation |
| enterprise-progressive-delivery-eks | Argo Rollouts canary releases on AWS EKS with automatic rollback, container security scanning, and Terraform-provisioned infrastructure |
| mediflow | Production-grade Azure platform for clinical data ingestion using AKS, Key Vault, Terraform and Helm, through a three-stage Azure DevOps pipeline |
| zero-downtime-bluegreen-eks | Blue-green on EKS with instant traffic switching and sub-5-second rollback |
| commerce-elt-platform | Snowflake ELT platform with dbt, S3, Snowpipe, and CI-enforced transformations |
| clintrial-stream | Real-time clinical-trial event streaming with Kinesis and DynamoDB, sub-second latency, regulatory-grade audit trails |
Terraform Kubernetes Docker AWS Azure GCP Argo Rollouts Helm Airflow dbt Snowflake Kafka Prometheus Grafana GitHub Actions
More cloud & engineering work (15 repos)
Deployment & delivery · ecommerce-blue-green-aks (NestJS API, local to AKS) · shopswift-blue-green (Minikube to EKS with Prometheus/Grafana) · swiftdeploy (declarative CLI turning one manifest into a running stack, with OPA policy enforcement) · hng14-stage3 (real-time DDoS detection daemon that blocks via iptables)
Infrastructure as code · terraform-aws-web-server (a whole AWS network stack from one command) · azure-arm-linux-vm-iac · secure-nginx-linux-server (SSH hardening, UFW, Let's Encrypt on EC2) · azure-web-deployment-project (IaaS vs PaaS compared) · webapp-azure-demo
MLOps & pipelines · ml_inference_api (notebook to deployed API with monitoring and Kubernetes) · ml-training-pipeline-ci · tfl-cycle-pipeline (TfL BikePoint to dbt dimensional model via Airflow) · engineering-workflow-automation (CI and Trello enforcing process over individual discipline) · governed-semantic-model-api (Fabric/Power BI metrics served through AWS) · stage1-personal-api
Modelling on real, imbalanced data, where the work is the decision the model supports rather than the accuracy score. Mostly applied to credit risk and financial crime, where the constraints bite hardest: rare positives, asymmetric costs, mandatory explainability.
| Project | What it does |
|---|---|
| transaction-fraud-scoring | Calibrated, leakage-aware scoring built around a real operational constraint: an investigation team can only review so many alerts a day |
| credit-default-prediction | Imbalance handled with PR-AUC and KS rather than accuracy, a cost-based approval threshold, SHAP at portfolio and applicant level, demographics excluded for fair lending |
| pd-scorecard-validation | Builds a Weight-of-Evidence scorecard, then independently validates it, the two halves split as first and second line would |
| mule-network-detection | Feature engineering from graph structure (fan-in, fan-out, chains) because per-transaction scoring catches almost none of a sub-1% positive class |
| transaction-classification | 259k noisy bank-transaction strings sorted into 31 categories: multi-class, imbalanced, messy text, taken to a production-style routing pipeline |
Also: ifrs9-ecl-engine (PD/LGD/EAD impairment modelling on 1.35M loans) · bustout-detection · mcp-research-agent (an MCP server and standalone Claude agent from one toolset) · biomedical-rag-qa (BM25 and dense FAISS retrieval)
imbalanced learning cost-sensitive thresholds SHAP explainability calibration XGBoost scikit-learn PyTorch NLP model validation fair lending
Analyst-side work: SQL exception reporting, ERP data integrity, and the process improvement that keeps operational data trustworthy.
| Project | What it does |
|---|---|
| sap-process-improvement-project | 720 SAP orders audited over six weeks, four discrepancy types traced to root cause, error rate cut from 27.8% to under 2% |
| sap-order-management-project | Full SAP SD order lifecycle on 200 B2B orders, pricing validated against condition records, error rate taken to 0% |
| Project-Asset-Ops-Reporting | Operational reporting over energy-meter assets using SQLite, SQL views and a Power BI dashboard with exception reporting |
| dataops-asset-data-integrity | Reproducible SQL validation checks producing an auditable exception report |
SQL SQLite Power BI SAP SD Excel exception reporting data governance root cause analysis
Reproducible pipelines and rigorous evaluation of the tools the field relies on, with provenance, quality control, and a clear line between computational evidence and biological interpretation.
| Project | What it does |
|---|---|
| biomarker-concordance-pipeline | Nextflow DSL2 germline variant calling on AWS, benchmarked against the GIAB HG001 truth set with clinical-grade VAF reproducibility statistics |
| ecm-target-discovery-pipeline | Provenance-preserving multi-omics workflow for extracellular-matrix target prioritisation in pancreatic cancer |
| clinvar-interpretation-benchmark | Can a frontier LLM be trusted to classify germline variants? Scored against ClinVar expert consensus, with and without supplied ACMG evidence |
| variant-calling-calibration-benchmark | Treats quality filtering as an abstention decision, stratified by genomic difficulty, with QUAL calibration measured rather than assumed |
| bioagent | Autonomous QC analyst built with LangGraph and Claude that pulls live pipeline metrics, reasons over them, searches PubMed, and produces a clinical-grade report |
Nextflow scanpy AnnData Bioconductor GIAB ClinVar VCF RNA-seq single-cell spatial transcriptomics
More bioinformatics work (12 repos)
Pipelines & platforms · variantlens (VCF parsing, validation, annotation, REST API) · ngs-results-explorer (RNA-Seq differential expression with volcano-plot dashboard) · bioseq-platform (NCBI SRA ingestion into a multi-zone AWS data lake) · genome-vault (variant warehouse on BigQuery and Dataflow) · genomicflow-platform (Pub/Sub streaming from sequencing instruments to Cloud Run) · clinvar-variant-prioritisation-workflow (inherited-disease variant ranking with transparent evidence rules)
Benchmarks · squidpy-spatial-benchmark (persistent homology vs Moran's I on Visium) · sc-celltype-benchmark · scvelo-trajectory-benchmark (RNA velocity on pancreatic endocrinogenesis) · single-cell-marker-reasoning-benchmark · cellfatebench-single-cell-analysis · finemap-calibration-benchmark (does SuSiE's 95% credible set contain the causal variant 95% of the time?)
Languages · Python · SQL · R · Bash · HCL
Data & ML · pandas · scikit-learn · PyTorch · XGBoost · SHAP · dbt · Airflow · Spark · DuckDB
Cloud · AWS · Azure · GCP · Terraform · Kubernetes · Docker
Bioinformatics · Nextflow · nf-core · nf-test · scanpy · Bioconductor · Conda
AI systems · LangGraph · MCP · RAG · LLM evaluation
Practice · CI/CD · testing · reproducibility · provenance · IaC
- 🌐 gbadedata.com for case studies, architecture diagrams and engineering evidence
- ✍️ dev.to · Medium · Hashnode
- ✉️ o.odimayo@gbadedata.com


