About her

Your Name

Data Scientist // ML Engineer
Est. UK
FieldSupply Chain
Risk Intelligence
BasedUnited Kingdom

Machine Learning // Data Science // Software Development // Mathematics

I build AI systems that read risk out of messy supplier data; frontier models paired with classical and deep learning.

Then I ship them to production: cloud pipelines, dashboards, and agentic workflows that quietly remove the redundant work.

On the side, I do content creation to help machine learning become more accessible to people trying to pivot their career, while also combatting the fear mongering around AI :>

What my work consists of

RISK INTELLIGENCE

AI risk intelligence for supplier portfolios

AI systems that surface supply-chain risk hiding inside complex supplier-portfolio data. A deliberately mixed approach leveraging frontier LLMs reasoning over unstructured signals, alongside traditional statistical and deep-learning models where scale and explainability demand precision.

Frontier LLMsDeep LearningClassical MLRisk Modelling
risk_analysis.py
import statsmodels.api as sm
import statsmodels.formula.api as smf

model = smf.logit("disrupted ~ cfr_score + leverage_ratio", data=df)
res = model.fit(disp=0)

print(res.summary().tables[1])
====================================================
               coef    std err          z      P>|z|
----------------------------------------------------
Intercept    1.4208      0.312      4.554      0.000
cfr_score   -0.8942      0.141     -6.342      0.000
leverage     0.5137      0.183      2.807      0.005
====================================================
CLOUD PIPELINES

Production data pipelines on the cloud

Data-analysis pipelines deployed on Cloud Run and orchestrated by Cloud Scheduler, so they run reliably and on time. BigQuery is the analytical warehouse; results surface as living dashboards in Looker Studio (Data Studio).

Cloud RunCloud SchedulerBigQueryLooker Studio
bash — gcloud deploy
$ gcloud builds submit --tag gcr.io/supply-risk/engine:v2.1

$ gcloud run deploy risk-pipeline-service \
    --image gcr.io/supply-risk/engine:v2.1 \
    --region europe-west2 --no-allow-unauthenticated

Deploying container to Cloud Run service [risk-pipeline-service]...
✓ Service deployed successfully.
URL: https://risk-pipeline-service-uk-an.a.run.app

$ gcloud scheduler jobs create http daily-risk-evaluation \
    --schedule="0 6 * * 1-5" --location=europe-west2 \
    --uri="https://risk-pipeline-service-uk-an.a.run.app/run"
AGENTIC SYSTEMS

Agentic automation with LangGraph

Agentic systems in LangGraph that automate the redundant, repetitive work spread across departments in supply-chain risk management; chaining tools and models into reliable workflows, so human attention is reserved for the judgement calls that need it.

LangGraphAgentsWorkflow AutomationCross-team Ops
agentic_workflow.py
from langgraph.graph import StateGraph, END

workflow = StateGraph(SupplierState)

workflow.add_node("fetch_news", scrape_unstructured_signals)
workflow.add_node("assess_risk", model_reasoning_node)
workflow.add_node("escalate", human_in_the_loop_approval)

workflow.set_entry_point("fetch_news")
workflow.add_edge("fetch_news", "assess_risk")

workflow.add_conditional_edges(
    "assess_risk",
    lambda state: "escalate" if state["score"] > 0.75 else END
)
app = workflow.compile()

What I've worked with

Stack
Contact & Media

Let's make
something sharp.

Copied to clipboard