Back to Home

All Projects

The rest of the portfolio — earlier LLM projects, applied ML work, open-source NLP contributions, and a couple of things from further back. For the current highlights, see the Selected Projects on the homepage.

HR Attrition Analytics

PythonXGBoostRandom ForestHypothesis Testing2026

A full data science workflow on IBM's HR attrition dataset.

  • Approach: EDA, hypothesis testing (Welch's t-test, ANOVA), classification, regression, and clustering.
  • Key Insight: OverTime turned out to be the single strongest attrition signal — employees working overtime leave at roughly 3x the rate of those who don't.

P1 · Aria — LLM Chatbot with Memory

GroqLlama 3.1LangChainStreamlit2025

A conversational AI with persistent memory, deployed live on Streamlit Cloud.

  • Key Insight: The hard part of building a chatbot isn't the model call — it's state management.

P2 · DocChat — RAG Document Q&A

LangChainChromaDBGeminiStreamlit2025

Upload any PDF and ask questions — retrieves relevant chunks first, then reasons on top. Deployed live on Streamlit Cloud.

  • Key Insight: RAG is a retrieval problem wearing an AI costume — chunking and embedding quality matter more than the model.

P3 · AI Agent with Tools

LangGraphLangChainGeminiTavilyStreamlit2025

A ReAct agent that searches the web, reasons across tool outputs, and decides what to do next.

  • Key Insight: Building an agent is easy; controlling it is the real engineering.

P5 · Fintech LLM Analyst — Text-to-SQL

LangChainGroqLlama 3.1BigQueryStreamlit2025

Ask a plain-English question about financial data, get a real answer backed by BigQuery SQL.

  • Pipeline: The LLM generates the query, BigQuery runs it, and the LLM explains the result in plain English.
  • Key Insight: Sits at the intersection of language, data, and decisions that affect real people.

Fintech Segmentation API

FastAPIDockerRailwayGitHub ActionsScikit-learn2024

A production REST API serving a KMeans behavioral segmentation model trained on 278,932 transactions.

  • Model: Classifies users into 4 segments across 31 behavioral features.
  • Infra: Fully Dockerized with CI/CD via GitHub Actions.

Fintech Behavioral Segmentation

PythonScikit-learnPandas2024

The research side of the segmentation work — clustering on fintech transaction data to identify distinct behavioral patterns.

  • Features: Spending habits, merchant diversity, temporal patterns, and payment behavior.

Olist Analytics — dbt + BigQuery

dbtBigQuerySQL2024

An end-to-end data pipeline on the Olist Brazilian e-commerce dataset.

  • Architecture: Modeled into a star schema with staging, intermediate, and mart layers.
  • Downstream: The same BigQuery mart tables feed into the Fintech LLM Analyst above.

SEA Dataset Dataloader — SEACROWD

HuggingFacePythonNLPOpen Source2023 — present

Open-source contribution to SEACROWD — standardized HuggingFace dataloaders for Southeast Asian language datasets.

  • Impact: Part of the research effort that led to the paper at EMNLP 2024.

Face Recognition — Computer Vision

PythonOpenCV2022

A real-time face recognition system built from scratch.

  • Pipeline: Face detection, matching, and identity classification.
  • Note: The project where I first realized making a computer see things was way more interesting than expected.

Twitter Sentiment Analysis — Football Fan Bases

PythonNLPUndergraduate Thesis2023

Comparative sentiment analysis of Indonesian Twitter discourse around Real Madrid and FC Barcelona fan communities.

  • Methods: Lexicon-based methods and ML classifiers on scraped Twitter data.

Stock Trading Robot

LSTMPythonMathematical Modeling2022

An automated stock trading agent built for a mathematical modeling course.

  • Model: LSTM predicts stock prices up to ten days ahead and recommends buy, sell, or hold.