Landing Page
Internal portalA single entry point that brings the team's dashboards and internal applications under one roof — pairing a curated landing page with centralised authorisation and user management.
Engineer at heart — Data Scientist with Operations Research background and three years experience as inhouse consultant owning data-driven solutions with stakeholders up to the C-level
Building machine learning models, LLM solutions, and the full-stack web apps that deliver them. End to end, from raw data to production — same person across the arc
What problem, for whom, against what success metric. Whatever isn't agreed here gets argued about in the demo — so I keep this phase as long as it needs to be.
Work broken into milestones, each ending in a deliverable I can demo. Estimates account for integration delays — three years in regulated finance taught me they're the rule, not the exception.
Structure before substance — decide the shape of the system and the deliverable before producing any of it. The cost of getting the foundation wrong is always higher than the cost of debating it for a day and code review isn't the place to have that debate.
Iterate in demoable increments — quality is a habit from the first commit, not a phase at the end. Deployment stays reproducible and automated, so shipping isn't a hero exercise.
A clean hand-off so the work survives me — documented, reproducible and owned by the team that inherits it.
A single entry point that brings the team's dashboards and internal applications under one roof — pairing a curated landing page with centralised authorisation and user management.
Generates analyst commentary on individual Profit & Loss positions (GuV) by feeding curated financial data into an Azure OpenAI model — turning line-item numbers into draft narratives ready for review.
Computes statutory claims and equalisation reserves for German insurance reporting, paired with an interactive dashboard that surfaces the underlying drivers and year-over-year fluctuations.
A LangChain prototype served as an internal API endpoint that answers natural-language questions two ways; a Text-to-SQL path that queries internal business data directly and a RAG path that retrieves from text-based internal knowledge packed into vector databases.
An optimizer for a running dinner — given a group of friends and their hosting preferences for appetizer, main or dessert, it assigns who hosts each course so the group's total walking distance across the city stays minimal under specified constraints.
A React component library published as an npm package — Radix UI primitives styled with Tailwind v4, built with tsup and documented in Storybook.
A FastAPI backend to power my future services — GitHub OAuth authentication, async SQLAlchemy over PostgreSQL, Redis caching and S3/MinIO storage.
A Poisson goal-scoring model that predicts football match outcomes — scraping five seasons of results across Europe's top-five leagues, deriving home/away attack and defence strengths, then comparing the model's scoreline probabilities against published odds to surface positive expected-value bets.
Turns broker statements into German tax reports — parses PDF and CSV exports, converts every USD trade to EUR using ECB historical reference rates, then aggregates realized gains, losses, dividends and fees per month and year for filing.
A cluster of personal market experiments based on yfinance data; stock analysis and ML price forecasting, an LSTM deep-learning price predictor, an ROI backtester over custom date ranges and a compound-interest projector for recurring monthly investments.
An optimisation problem to find the optimal six-unit team combined with move data, plus analyses that surface curiosities.
A web tool built for production-line operators to browse known fabric defects with reference images, plus a free-text German search where an MLP classifier over TF-IDF features and text embeddings predicts the most likely root causes from historical defect-cause records.
Predicting the objective-function cost of an Angle-Distance Traveling Salesman. ML models trained to estimate route cost without solving the full optimization.
Mixed-integer optimization problems modeled & solved in Gurobi