Work at Shimano Singapore

Digital Technology / Data Analysis Intern, June to December 2026

Seven projects, in the order I undertook them. Each one records how far it got, because a system that was built and a system that was used are different claims. Internal names, data and colleagues are left out. Screenshots show real interfaces running on sample data, and the support assistant is shown as a schematic.

What I owned was the problem framing, the experiment design, the validation protocol, and every keep or reject decision.

From my internship notes, on working with AI coding assistants
Ordered for
Change the reader to reorder the projects and change what each card leads with.
Validated and handed overJun to Jul 2026

Tool-life prediction for CNC lathes

Tested whether machine logs could time tool changes better than a piece counter.

MethodValidation used cycle-grouped splits over 5 and 20 seeds, a time-based split, walk-forward folds and leave-one-machine-out.

Interface decisionEach tool receives a risk band (low, watch, medium, high), and every warning is advisory. The system never changes or extends a tool on its own.

−26%per-tool error on remaining life
Analysis and recommendationJul to Aug 2026

Shipment and order forecasting for one plant

Audited a vendor forecast, then built and backtested a simpler one.

MethodThe audit came first. Five of the six existing models had been trained on a quantity other than shipped units, and their test sets reused validation data, so there was no fair benchmark to beat.

Interface decisionEach result was delivered as one self-contained HTML page with the figures, charts and caveats together, so the planners could open it in a browser without running any code.

39.2%WAPE over a 54-month backtest
Delivered, scheduled dailyAug 2026

SharePoint to Microsoft Fabric file sync

Moved daily order workbooks from SharePoint into a Fabric lakehouse.

MethodThe first design was an 18-step Power Automate flow that wrote to OneLake through its API. I resolved eight faults before reaching one that would not move.

18 → 1an 18-step flow replaced by one scheduled copy job
Reached QA and a team trialSep 2026

Technical support assistant

Answers after-sales questions in plain language and cites its source.

MethodRetrieval combines BM25 keyword matching with Qdrant vector search, merged by reciprocal rank fusion. Exact model codes receive extra weight.

Interface decisionTyping / lists the questions the assistant can answer, so its scope is visible rather than guessed. I also cut the first-run guide from 329 words to five short slides.

0.1 sfor a repeated question, down from 15.3 s
Reached the QA serverJul to Aug 2026

Safety documentation assistant

Drafts a hazard analysis from two photographs and a one-line note.

MethodTwo vision calls run in sequence. The first builds the cause tree and the second converts it into the 5M1E grid. The schema marks every category as required, so none can be skipped.

Interface decisionEvery field has a character counter sized to the cell it lands in, so text that fits on screen also fits in the workbook.

≈2 slongest request, down from 107.6 s
Reached the QA serverAug 2026

Engineering drawing reader

Reads tolerance values from scanned drawings for a person to confirm.

MethodThe model reports only what it sees and where. Plain Python assigns each value to its point, so a top and bottom swap cannot happen.

Interface decisionA user asked why "Confirmed" showed 44 when "All" showed 40. That question led me to redesign the tabs.

144/144values correct on a 12-drawing test set
Built and verifiedSep 2026

Sales, purchase and inventory planning app

Rebuilds a planning workbook's figures as a web application.

MethodIt rebuilds all 76,028 monthly cells from their order lines and matches the workbooks on 37 of 37 review groups.

Interface decisionThresholds set by the planner are labelled apart from thresholds set by the app, so it is always clear whose number is whose.

37/37review groups matching the workbooks