Skip to main content

Projects

681 words

A selection of recent freelance engagements. Client names are kept confidential where requested. Each case study includes a high-level architecture sketch and the measured outcomes.


Real-Time E-Commerce Analytics Platform
#

Industry: E-Commerce · Engagement: ~3 months · Stack: Kafka · Spark Structured Streaming · Databricks · Power BI

Redesigned a batch-based reporting system into a real-time analytics platform for a mid-sized Dutch e-commerce company. The new platform processes over 2 million events per day with sub-minute latency.

flowchart LR
  src1[Web App]:::src --> kafka
  src2[Orders DB]:::src --> kafka
  src3[Inventory]:::src --> kafka
  src4[Payments]:::src --> kafka
  kafka[(Apache Kafka)]:::core --> spark[Spark
Structured Streaming]:::core spark --> dbx[(Databricks
Delta Lake)]:::store dbx --> pbi[Power BI
Dashboards]:::out pbi --> users([Business Team]):::user classDef src fill:#1e293b,stroke:#475569,color:#e2e8f0 classDef core fill:#1e40af,stroke:#3b82f6,color:#fff classDef store fill:#155e75,stroke:#06b6d4,color:#fff classDef out fill:#0f766e,stroke:#14b8a6,color:#fff classDef user fill:#3b0764,stroke:#a855f7,color:#fff

Key outcomes:

  • Reduced reporting lag from 24 hours to under 60 seconds
  • Unified 5 disconnected data sources into a single streaming pipeline
  • Enabled real-time inventory and sales dashboards for the business team

LLM-Powered Document Intelligence System
#

Industry: Legal / Professional Services · Engagement: ~4 months · Stack: Python · LangChain · OpenAI · PostgreSQL (pgvector) · FastAPI

Built a Retrieval-Augmented Generation (RAG) system that lets legal professionals query large document repositories in natural language. Integrated with the firm’s existing document management workflows.

flowchart LR
  docs[Legal
Documents]:::src --> emb[Embedding
Pipeline]:::core emb --> pg[(PostgreSQL
+ pgvector)]:::store user([Lawyer]):::user --> api[FastAPI]:::core api --> lc[LangChain
RAG Engine]:::core lc <--> pg lc <--> llm[OpenAI
GPT-4]:::out api --> user classDef src fill:#1e293b,stroke:#475569,color:#e2e8f0 classDef core fill:#1e40af,stroke:#3b82f6,color:#fff classDef store fill:#155e75,stroke:#06b6d4,color:#fff classDef out fill:#0f766e,stroke:#14b8a6,color:#fff classDef user fill:#3b0764,stroke:#a855f7,color:#fff

Key outcomes:

  • Reduced document review time by ~60% for participating teams
  • Achieved 92% answer accuracy on internal benchmark dataset
  • Deployed on Azure with a scalable, cost-efficient architecture

Cloud Data Warehouse Migration
#

Industry: Logistics · Engagement: ~6 months · Stack: Python · dbt · Airflow · Snowflake · Terraform

Led the migration of a legacy on-premise Oracle data warehouse to Snowflake for a logistics company. Rebuilt 80+ reports and redesigned the dimensional model from scratch using dbt.

flowchart LR
  ora[(Oracle
on-prem)]:::legacy --> mig[Migration
Pipeline]:::core mig --> snow[(Snowflake)]:::store snow --> dbt[dbt
Transformations]:::core dbt --> mart[Star Schema
Marts]:::store mart --> rpt[80+ Reports]:::out air[Airflow]:::orch -.orchestrates.-> mig air -.orchestrates.-> dbt tf[Terraform IaC]:::orch -.provisions.-> snow classDef legacy fill:#3f1d1d,stroke:#dc2626,color:#fecaca classDef core fill:#1e40af,stroke:#3b82f6,color:#fff classDef store fill:#155e75,stroke:#06b6d4,color:#fff classDef out fill:#0f766e,stroke:#14b8a6,color:#fff classDef orch fill:#3b0764,stroke:#a855f7,color:#fff

Key outcomes:

  • Cut query times by an average of 78%
  • Reduced infrastructure cost by 40% year-over-year
  • Onboarded analytics team to dbt — full test coverage in 6 weeks

Churn Prediction ML Pipeline
#

Industry: SaaS / Fintech · Engagement: ~3 months · Stack: Python · scikit-learn · MLflow · Airflow · AWS SageMaker

Developed an end-to-end churn prediction system for a B2B SaaS company — including automated retraining, drift detection, and integration with the CRM for proactive customer outreach.

flowchart LR
  src[(Product +
Billing DB)]:::store --> feat[Feature
Engineering]:::core feat --> train[scikit-learn
Training]:::core train --> mlf[(MLflow
Registry)]:::store mlf --> sage[SageMaker
Endpoint]:::core sage --> sf[Salesforce CRM]:::out sf --> csm([Customer Success]):::user air[Airflow]:::orch -.weekly retrain.-> train air -.drift detection.-> sage classDef src fill:#1e293b,stroke:#475569,color:#e2e8f0 classDef core fill:#1e40af,stroke:#3b82f6,color:#fff classDef store fill:#155e75,stroke:#06b6d4,color:#fff classDef out fill:#0f766e,stroke:#14b8a6,color:#fff classDef user fill:#3b0764,stroke:#a855f7,color:#fff classDef orch fill:#7c2d12,stroke:#f97316,color:#fff

Key outcomes:

  • Model AUC-ROC: 0.89 on holdout set
  • Automated weekly retraining pipeline with data quality gates
  • Predictions integrated directly into Salesforce via API

Modern Data Stack Implementation (Startup)
#

Industry: Health Tech · Engagement: 6 weeks · Stack: Airbyte · dbt · BigQuery · Metabase · GitHub Actions

Set up a complete data platform from zero for a health tech startup — from raw ingestion to business dashboards — in six weeks.

flowchart LR
  s1[Stripe]:::src --> ab
  s2[Postgres]:::src --> ab
  s3[Salesforce]:::src --> ab
  s4[12+ other
sources]:::src --> ab ab[Airbyte
Connectors]:::core --> bq[(BigQuery
Warehouse)]:::store bq --> dbt[dbt models
+ tests]:::core dbt --> meta[Metabase
Dashboards]:::out meta --> teams([Product +
Leadership]):::user gh[GitHub Actions]:::orch -.CI/CD.-> dbt classDef src fill:#1e293b,stroke:#475569,color:#e2e8f0 classDef core fill:#1e40af,stroke:#3b82f6,color:#fff classDef store fill:#155e75,stroke:#06b6d4,color:#fff classDef out fill:#0f766e,stroke:#14b8a6,color:#fff classDef user fill:#3b0764,stroke:#a855f7,color:#fff classDef orch fill:#7c2d12,stroke:#f97316,color:#fff

Key outcomes:

  • 15+ data sources connected via Airbyte
  • Fully documented dbt project with 100% test coverage on critical models
  • Self-serve Metabase dashboards adopted by all product and leadership teams

Looking for similar results?
#

I’d love to discuss how Demir Technology can help with your data or AI challenge. Get in touch or view the services for engagement details.