Languages and toolkits behind the projects above.
Python
3+ years across research, coursework, and shipping projects. My default language for data work and back-end glue.
Tools: pandas, NumPy, scikit-learn, PyTorch, FastAPI, Selenium, BeautifulSoup
R
My go-to for statistical modeling and quick visualization. Used heavily on ProphetCMA for ensemble tuning.
Tools: tidyverse, ggplot2, caret, xgboost, gbm, randomForest
Machine Learning
Classical ML across regression, tree ensembles, kNN, and blending. Comfortable with cross-validation, leakage checks, and honest metric reporting.
Tools: scikit-learn, XGBoost, GBM, Random Forest, Optuna
AI engineering
LLM-backed tools end to end: API integration, prompt and workflow design, retrieval, and evaluation that catches regressions before users do.
Tools: OpenAI / Anthropic SDKs, LangChain, vector DBs (pgvector / Chroma), Pydantic, eval harnesses
SQL
Window functions, CTEs, query planning. Comfortable in Postgres and SQLite; happy living in the query plan when something is slow.
Tools: PostgreSQL, SQLite, pgvector, sqlalchemy
Java
6+ years; my first serious language. Used for games, small apps, and OOP-heavy coursework.
Tools: JavaFX, JUnit, Maven, LWJGL
JavaScript, HTML, CSS
4+ years building front-ends. This site is hand-rolled HTML + Tailwind; comfortable picking up frameworks when a project demands them.
Tools: Vanilla JS, Tailwind CSS, React (when needed), Vite
C / C++
2 years through coursework. Useful when I need to read library internals or care about memory layout.
Tools: STL, CMake, gdb