AI delivery & adoption · Singapore · Open to roles
I spent seven years in M&A before leading AI delivery at Execo, a 450-person services firm.
I worked with legal, customer success, sales and other teams to understand their workflows and build tools around them. I handled development, tested the outputs with the people doing the work, trained teams and managed rollout.
Below are public projects you can try or explore, alongside systems I built and piloted at Execo.
~SGD 200M in M&A transactions · 11 systems deployed or piloted at Execo · 6 departments
Projects I've built independently, with links to demos, code and test results.
SME loan pre-qualification agent
17/17 evaluation cases passed · public results
An SME owner describes their business in plain English. The agent checks eligibility against six OCBC SME loan products and returns a pre-qualification summary or refers the case to a relationship manager.
This is an independent portfolio demo built on OCBC's published product information, with illustrative values where OCBC publishes none. It is not affiliated with OCBC.
Rules check for excluded industries, foreign incorporation, requests above product limits and conflicting revenue information. These checks run before and after the agent's assessment. A product can appear in the final summary only after a successful eligibility check.
The public evaluation covers 17 conversations, including seven cases based on bugs found during development. It combines automated checks with scoring by a separate model. Each case must pass every check.
BankingAgent
Kevin · personal finance assistant
Used daily · about 650 tests · approximately USD 7/month hosting
Kevin is a personal finance assistant I use every day. It turns bank-alert emails into categorised transactions and sends a Telegram confirmation I can reply to when something needs correcting.
A small web app tracks spending against my budget, credit-card bonus caps, trip budgets and outstanding IOUs. I use the project to learn what it takes to keep an agent working reliably over time.
Each bank email receives a unique identifier to prevent duplicate transactions. An audit log and weekly reconciliation check help catch transactions that failed to reach the ledger.
Edits, deletions and budget changes are previewed for confirmation. Kevin learns merchant categories from my corrections and asks when it is unsure.
Card calculations account for both statement cycles and calendar-month bonus caps. Foreign-currency spending during a trip is assigned to the trip budget using fixed rules.
FinanceAgent
minuted · meeting notes from your phone
Speaker naming improved from 44.4% to 95.8% on one reference recording · USD 0.20 logged for a 42-minute call
I wanted transcripts, summaries and action items for meetings I attend in person. minuted starts with an iPhone recording and uses an iOS Shortcut and GitHub Actions to produce a transcript, meeting notes and tasks in my own repository.
I use a private version for my meetings. The public copy has never processed a real call.
The first version passed its tests but assigned the wrong names to speakers. Comparing it with a manually corrected transcript showed naming accuracy of 44.4%, even though the transcription service had put 95.8% of words in the right speaker group.
I separated speaker naming from transcription so the original transcript stays intact. The naming step now maps speaker groups to a participant list and leaves uncertain speakers unnamed.
The accuracy figures come from one reference recording. Summary quality has not yet been evaluated. Audio is processed by a third-party transcription service. Setup includes opting out of training, and the service deletes transcripts after 30 days.
OpsAutomation
Marketing AI readiness assessment
19/19 rule checks passed · prepared examples · no API key required
A demo for assessing proposed AI projects against the data they need. A language model assesses each idea's potential value, while a rules engine checks dependencies and puts the work in order.
If a proposal depends on unresolved data issues, the roadmap identifies what needs fixing first.
The current demo uses prepared examples for a beauty brand and an insurer.
The model assesses the proposal; the rules engine decides whether its dependencies are ready. This allows the system to hold back an otherwise promising idea until the required data work is complete.
The example clients and previous engagements are illustrative. A production version would retrieve information from actual client and engagement records.
MarketingApp
Work at Execo
Tools I built and piloted with teams at Execo. Results and usage figures are as at April 2026.
Company-wide time and margin tracking
450+ staff · approximately 70% weekly time-entry rate
I replaced spreadsheet-based time tracking with an app used across Execo's 450+ staff. I also connected time entries with salary and loaded-cost data in Looker, giving the VP of Delivery current margin information for pricing reviews.
OpsApp
In-house legal review and redlining
Redlining approximately 50% faster in pilot
After the legal team trialled a vendor product, redlining was the capability that met their needs. I led the decision to build it in-house and recreated the workflow using Claude Skills.
I then developed a Google Chat proof of concept for contract review, NDA triage and redlining. Paralegals could prepare first-pass reviews and redlines for the CLO to check.
details
The assistant routes requests to separate contract-review, NDA-triage and redlining agents. It can search supporting documents and retrieve deal context, and asks for confirmation before producing redlines.
The contract-review agent uses a 15-rule playbook based on Bonterms. The redlining agent produces Word documents with tracked changes.
I also designed an email-to-signature workflow covering document intake, extraction, reconciliation and contract status. That work was specified but not yet implemented at my exit.
Sift extracts action items from HubSpot emails, calls, meetings and notes, checks for duplicates and routes tasks to HubSpot or ClickUp.
Reps can also request the same actions through Google Chat: for example, extracting tasks from yesterday's calls. The chat assistant previews proposed changes and asks for confirmation before writing to the CRM.
details
A scheduled worker checks for new activity every 15 minutes. The scheduled and chat-driven workflows share processing records to avoid repeating work.
The pipeline processes new sources incrementally, recovers complete task records from truncated responses and pauses repeated failures. Notifications appeared in Google Chat, where the team already worked.
Preparation time reduced from half a day to about one hour · leadership pilot
I built a workflow that assembles customer onboarding documents from CRM records, Drive files, call transcripts and emails. It reduced preparation from half a day to about an hour, including human review, during a pilot with CS leadership, who then paused it to refine the requirements.
details
Built with Google's Agent Development Kit (ADK). Parallel sub-agents gather the sources, separate agents draft each section of the document, and the assembled draft goes to a person for review.
Customer successLLM Workflow
AI tools for M&A analysis
Used to prepare three deal summaries · approximately 60% less time on my own review work
I built a set of Claude Skills for my M&A work, covering financial-statement extraction, DCF modelling, CEO deal summaries and ledger comparisons. I also used NotebookLM to search material in data rooms.
The tools helped me identify potential cost savings and cross-selling opportunities during due diligence and reduced the time I spent reviewing material.
M&ASkills
CRM reporting and revenue forecasts
Forecast used by the CEO · sponsored by the CRO
I built analytics on Execo's existing CRM data in BigQuery, using AI-assisted SQL to produce revenue forecasts and analyse closed-lost deals. I also tested a model for scoring win and churn risk across the live pipeline.
The CEO adopted the forecast. My responsibility was the analysis and reporting; the underlying data pipeline was already in place.
RevOpsAnalytics
Internal AI tools
Routine use in Talent Acquisition · proofs of concept in Finance and Sales
I built a shared interface for small AI tools requested by different teams. Talent Acquisition regularly used a résumé-formatting tool. Finance tested receipt capture with duplicate detection, and Sales tested a HubSpot deal-naming tool, both as proofs of concept.
An image-generation tool was also available across the company.
Org-wideApp
Sales call coaching
10-call pilot · scoring checked against the VP of Delivery's assessments
I built a tool that transcribes sales calls, scores them against a coaching rubric and gives reps specific feedback. I compared its scores with the VP of Delivery's assessments during a 10-call pilot.
A manager dashboard was planned for the next phase.
SalesLLM Workflow
Outbound email drafting
Sales team trial · endorsed by the CRO
I built an agent that researches a prospect, assesses their fit and drafts three outbound emails in the company's tone of voice. The sales team trialled it with support from the CRO.
SalesAgent
Swim-school sales demo
Client signed a contract worth USD 30,000 in monthly recurring revenue
I built a sample CRM dashboard and an ElevenLabs voice-agent demo for a swim-school sales pitch. The dashboard used client-provided sample data, supplemented with AI-generated examples where needed.
The client subsequently signed. I then worked with the VP of Delivery to adapt the demo approach for other sales opportunities.
SalesApp
Legal-source data collection
Approximately 2 million links delivered · around 70% less time on a 100,000-link batch in Phase 2
I took on a client project to collect links to legislation and case law across jurisdictions. I used AI to learn the required scraping techniques, built reusable configurations and trained an outsourced QA team in Kenya.
In Phase 2, I added a virtual-machine workflow with automated site-structure detection, which cut the time for a 100,000-link batch by approximately 70%.