Albert Dulout

Applied AI, from technical discovery to delivered systems.

Applied AI Engineer and Data Scientist in Singapore. I work on the design, the build, the evaluation, the cloud delivery and the handover.

Choose reading depth

Overview keeps things short. Evidence adds implementation detail inside each record.

Selected work

Two client engagements, one internal platform, one personal project. Open a record for the problem, what I built, and the decisions behind it.

Document intelligence Client work at PALO IT · 2025–2026 Inspect record

Four document-intelligence prototypes for one enterprise client, covering document comparison, clause matching, legal review and résumé screening.

Treasury, legal and HR teams were reviewing long PDF and Word files by hand. They needed a faster way to find meaningful differences without losing the source context behind each result.

I built the AI and backend pipelines for extraction, retrieval, comparison and source annotations; colleagues built the React interfaces. Every result linked back to the original wording so a reviewer could verify it.

The pipeline filters obvious matches first, then uses embeddings and model-based comparison on the remaining candidates. This keeps unnecessary model calls down while preserving detailed, reviewable output.

Core stack Python · Azure OpenAI · Azure AI Search · Azure Document Intelligence · PyMuPDF · Docker

Implementation details

Documents are split into reusable sections and paragraphs, then indexed for keyword and vector search in Azure AI Search. Comparisons run asynchronously in structured batches, while PyMuPDF marks additions and removals on the source pages for side-by-side review.

Language and interfaces
Python, Flask, React and TypeScript on the team-built interfaces
AI and retrieval
Azure OpenAI, Azure AI Search, keyword and vector search, semantic reranking
Document processing
Apache Tika, PyMuPDF, Azure Document Intelligence, hierarchical chunking
Azure and delivery
Blob Storage, Key Vault, managed identity, Docker, Nginx, App Service, Container Apps, GitHub Actions
Route optimization Client work at PALO IT · 2025–2026 Inspect record

A route and resource-planning platform used by waste-collection operations across two countries, with configurable objectives and clear reporting when a plan is not feasible.

Planning ran on inconsistent Excel and CSV workbooks, vehicles with different capacities, time windows, driver shifts, repeat trips, competing objectives and road data with gaps in it.

I led delivery end to end: the OR-Tools solver, resilient workbook ingestion, scenario comparison, KPI and route-level reports, the React workflows and cloud deployment.

Repeat trips are modelled as shift-aware virtual vehicles. Soft penalties make the planner hand back unserved stops explicitly rather than fail silently, so an impossible plan says so. Distances come from Haversine, OSRM or the Google route matrix, which trades road realism against cost, rate limits and the ability to run offline.

Core stack Python · FastAPI · OR-Tools · React · OSRM and Google Routes · Azure Container Apps

Implementation details

The solver covers capacity, service time, shift, depot, unload and objective constraints, with objective modes for time, distance, fuel, carbon, cost, coverage, revenue and profit scaled to integers for OR-Tools. Around it sit tolerant workbook parsing, recursive moving-average weight forecasting, scenario comparison and operational reports.

Language and frameworks
Python, FastAPI, Uvicorn, React
Optimisation and data
Google OR-Tools constraint programming, pandas, NumPy, openpyxl, pdfplumber
Geospatial
Offline Haversine baseline, cached OSRM table API, Google Routes matrix
Cloud and delivery
Docker, Azure Container Registry, Container Apps, Static Web Apps, Log Analytics
Reporting and testing
WeasyPrint PDF and XLSX reports, pytest
Resilient cloud data platform Internal platform at PALO IT · 2026 Inspect record

An internal Azure data platform built around a workforce SaaS that did not provide the role-based access the business needed.

The SaaS API exposed the data, but not the access levels required by internal, HR, Finance and Audit users. We needed to bring that data into Azure and expose it through a controlled interface.

I built the ingestion, orchestration, PostgreSQL model and role-scoped API. Durable Functions coordinate the dependent syncs, while Entra ID protects familiar read endpoints with different views for each audience.

Checkpoints and completeness checks make interrupted syncs safe to resume. They also prevent a partial import from being mistaken for deleted source data.

Core stack TypeScript · Azure Functions · Durable Functions · PostgreSQL · Drizzle · Entra ID

Implementation details

OAuth pagination, retries, checkpoints and idempotent upserts feed a normalized PostgreSQL model. Azure Functions then expose role-scoped routes behind Entra ID, with managed identity and telemetry supporting day-to-day operation.

Runtime
TypeScript, Azure Functions, Durable Functions
Data
PostgreSQL, Drizzle, role-scoped reporting views
API and access
OAuth ingestion, Entra ID, Easy Auth, role-scoped endpoints
Azure delivery
Bicep, Key Vault, managed identities, private networking, Application Insights
Mathilde Recipes Personal project · 2026 Inspect record

A family recipe platform that turns scanned documents and phone photographs into a searchable French-first collection, with English translation, a recipe-aware assistant and transparent nutrition estimates.

Visit recipes.dulalbert.com

Family recipes arrived as scanned documents and phone photographs. I wanted to turn them into something useful while learning Cloudflare and keeping a self-funded side project inexpensive.

I build and maintain all of it: the ingestion and quality pipeline, the catalog, the recipe-aware assistant, nutrition estimates, protected admin workflows, image generation jobs and the delivery automation.

A scheduled Dropbox sync picks up new source files and rebuilds the catalog. Most of the platform runs within Cloudflare's free tiers; the paid costs are the domain and on-demand image generation.

Core stack React · TypeScript · Cloudflare Pages and Functions · D1 · Vectorize · R2 · Queues

Implementation details

The pipeline scans source files, extracts text or image content, requests structured Gemini output, validates it, assigns provenance and tags, removes mirrored and fingerprint duplicates, then rebuilds a deterministic catalog index. Skip reasons, validation errors and quality fixes are recorded rather than silently published. The application adds search, cooking mode, CIQUAL-based nutrition assumptions, conditional retrieval and protected review workflows.

Frontend
React, TypeScript, Vite, i18next, custom CSS
Runtime and hosting
Cloudflare Pages, Pages Functions, Cloudflare Access on the API routes
Data and retrieval
Cloudflare D1, Vectorize, Workers AI with Qwen3 embeddings
Media and jobs
Cloudflare R2, Cloudflare Queues, sharp, heic-convert
AI
Google Gemini for extraction, classification, translation and chat; gpt-image-2 for recipe images
Ingestion
Scheduled Dropbox sync, Mammoth for DOCX, pdf-parse for PDF, CIQUAL nutrition data
Automation
GitHub Actions scheduled pipelines, Wrangler for Pages and Worker configuration

How I work

The parts of delivery I can own, from the first technical discussion to a system in use.

Understand the problem
Turn an ambiguous AI or data request into a testable technical approach, with clear constraints and tradeoffs.
Build the system
Develop the models, retrieval workflows, optimization, APIs, data pipelines and interfaces needed for a working product.
Put it into use
Deploy on Azure, automate delivery, add monitoring and design for safe recovery when something fails.
Help teams own it
Document decisions, explain the system, work with stakeholders and mentor the engineers taking it forward.
Use AI throughout delivery
Use agentic AI for technical discovery, meeting recording and synthesis, coding, testing, documentation and review across the full software development lifecycle.

Experience

Engineering school, then analytics work, then applied AI delivery.

Data Scientist, Innovation Lab

PALO IT · Singapore · March 2023–present · promoted February 2025

I design and deliver applied-AI proofs of concept and product foundations, then help teams adopt them through evaluation, cloud delivery, documentation and mentoring.

Across three years the work has spanned document intelligence and retrieval systems for an enterprise client, a logistics route-optimization product, an internal Azure data platform, computer vision and generative-image work for a public-sector exhibition, a legacy-modernization graph proof of concept using Tree-sitter and Neo4j, and Azure DevOps and CI/CD support on two .NET modernization workstreams.

Build
Python, TypeScript, Node.js, Flask, FastAPI, React
AI and data
Azure OpenAI, Azure AI Search, embeddings and RAG, Replicate, LoRA fine-tuning, OR-Tools optimization, computer vision, PostgreSQL, pandas
Cloud and delivery
Azure Functions, Container Apps, App Service, Bicep, Docker, Key Vault, managed identity, GitHub Actions, Azure DevOps
Working with teams
Technical discovery, client workshops, documentation, mentoring interns and junior engineers

Analytics Engineer Intern

Papernest · Barcelona, Spain · February–August 2022

I worked with the Southern Europe growth team on marketing analytics. I built campaign-improvement tooling on the Google Ads and Sheets APIs, and improved the Google Ads conversions-import process by 6 percent through ETL changes.

I also automated the team's Slack alerting so anomalies in campaign performance surfaced without anyone running a query, and I maintained the reporting the team used for weekly spend decisions.

Tools
SQL, BigQuery, Python, pandas, Google Ads API, Google Sheets API, Slack API, JavaScript, Data Studio

Master Data Analyst Intern

Nestlé Europe · Paris, France · June–December 2021

I built a pricing simulator in Excel and VBA on top of data extracted from SAP and SQL, so the commercial team could test price scenarios without going back to the data team each time.

I automated several recurring data-management and analysis tasks, and evaluated the Alation data-governance platform with counterparts at Purina in the United States.

Tools
SAP, SQL, Excel and VBA, Alation

Education and credentials

Engineering Degree / MSc, Data Science and Optimization

IMT Atlantique · Brest and Nantes, France · September 2019–April 2023

Coursework in machine learning, computer vision, natural language processing, data mining, time-series forecasting, optimization algorithms, big-data architecture and data visualization, plus a blockchain application built on Avalanche.

Preparatory Class for the Grandes Écoles

Lycée Montaigne · Bordeaux, France · September 2016–June 2019

Two years of intensive sciences with mathematics as the major and physics and chemistry as minors, the competitive entry route into the French engineering schools.

  • Microsoft Certified: Azure AI Engineer Associate
  • Google Data Analytics Professional Certificate
  • IELTS Academic, Band 8.0 / C2
  • French (native), English (professional), Spanish (conversational), Russian (intermediate)

Beyond the work

French, based in Singapore. Outside work, I am usually cooking, training or learning something new.

Cook
Family recipes, often with Mathilde Recipes open beside the stove.
Train
Weightlifting, long-distance running and rugby.
Compete
Two-time Singapore Development League rugby champion.
Learn
Always working on another language.