Hussain Abuwala

Software Developer at IBM, Toronto. 3+ years building AI/LLM and backend systems.

hussainabuwala.1997@gmail.com · github · youtube · linkedin · résumé

I work on LLM-powered analytics in IBM watsonx BI. I’m curious about software in general, and I share what I build and learn on The Unplanned Stack.

Work

Software Developer, Band 7, IBMOct 2025 – present

Metadata enrichment v2

Cut cost per asset from $5.32 to $0.009 by rebuilding watsonx BI metadata enrichment as a native LLM pipeline that replaced external dependencies. 6.5× faster, accuracy above 90%, and $19K in monthly customer savings.

Java · Node.js · TypeScript · LLMs · Embeddings · RabbitMQ · Kubernetes

Data Stories

An analytics agent that finds two or three verifiable findings in a dataset without the user asking a question. Selected for executive review.

Node.js · TypeScript · LLMs

Custom Instructions

Lets business users write domain rules in plain language. The rules feed asset discovery and SQL generation, so answers follow each customer’s business context.

Node.js · TypeScript · LLMs · Kubernetes

Visualization editor

A chart editor for IBM watsonx.data with manual authoring and automatic chart recommendations, using metadata enrichment, aggregation selection, semantic sorting and type inference.

React · Node.js · LLMs

Number formatting

Currency, percentage and number formatting across text answers and charts, which unblocked a prospective customer.

Node.js · TypeScript · LLMs · Kubernetes

Software Developer, Band 6, IBMJan 2024 – Sep 2025

Metadata enrichment v1

Cut glossary uploads from about 20 minutes to under 3 by modernizing the legacy enrichment service and integrating watsonx.data intelligence classification. It powers five services: conversational analytics, visualization, insights, semantic search and Suggested Questions.

Java · Node.js · TypeScript · Embeddings · RabbitMQ · Docker · Kubernetes

Suggested Questions

An LLM service that generates and pre-validates answerable questions from enriched schemas, giving users a guided first interaction. Won an IBM Outstanding Innovation Award.

Node.js · TypeScript · LLMs · Embeddings · RabbitMQ · Docker · Kubernetes

Skills

Languages
TypeScript, Java, Python, Bash
AI
LLMs, Prompt engineering, Agents, Embeddings
Backend
Node.js, RabbitMQ, SQLite, nginx
Frontend
React
Infrastructure
Docker, Kubernetes, Linux, Git, k6

Education

University of Waterloo2022 – 2023

Master of Mathematics (MMath) in Computer Science
CGPA 94/100

Monash University2016 – 2020

Bachelor of Computer Science (Honours)
CGPA 4.0/4.0 · Overall Best Graduate (100+ cohort) · High Achiever Award (top 1%)

Projects

URL ShortenerOct 2026

Load-tested through nine scripted events up to 10% of Bitly’s traffic, changing the design only when an event broke it. Final version: about 877M redirects a month at 14.8 ms p99 with 0% errors, for €9.56 a month.

TypeScript · Node.js · SQLite · nginx · Litestream · Linux · Bash · k6 · Python

LLM from scratchOct 2026

A language model built step by step, from a table of counts to a small Transformer. Each episode has a notebook, tests, and two videos. 3 of 14 episodes published.

Python · NumPy · Jupyter · Matplotlib · unittest

Thoughts

Everything Has a PriceSep 2026Everything Has a Price: a drawn figure tied to a price tag labelled TIME

An animated essay about desire and what it costs. 2 min 44 s.

Outside work

Cricket
Basketball
Badminton
Non-fiction books
News, documentaries, economics
Plain clothes, no logos
Computers and technology
Grew up on Pokémon, Beyblade and Jimmy Neutron

Log

2026-10
Published the URL shortener: nine load events, every number measured.
2026-10
LLM from scratch, episode 3: from counts to weights, softmax and loss in NumPy.
2026-09
Published Everything Has a Price.
2026-09
LLM from scratch, episode 2: trigrams and the sparsity wall.