Toolbox
The languages, libraries and tools I use, and where I’ve used them.
Languages
| Category | Tool | Where I’ve used it |
|---|---|---|
| General purpose | Python | AdsRank, LiftLab, BetterRankings, DogArmor |
| TypeScript | DiffSense, degree planner at V3RT3X | |
| Systems | C/C++ | ONNX Runtime serving in AdsRank |
| Data | SQL | Australian Public Toilets, BetterRankings |
| Build | Groovy | Jenkins pipeline at Adtran |
Machine learning
| Category | Tool | Where I’ve used it |
|---|---|---|
| Deep learning | PyTorch | AdsRank, LiftLab, DogArmor, FlameJackets |
| Classical ML | scikit-learn | LiftLab |
| Data | Pandas, NumPy | BetterRankings, LiftLab, Toilets |
| Computer vision | YOLOv8, DeepLabCut, EfficientNet | FlameJackets, DogArmor |
| Retrieval | FAISS | Two-tower retrieval in AdsRank |
| Inference | ONNX Runtime | AdsRank, DogArmor |
LLMs and RAG
| Category | Tool | Where I’ve used it |
|---|---|---|
| Vector search | Qdrant, pgvector, ChromaDB | Research Paper RAG, DiffSense |
| Retrieval | Hybrid search (dense + BM25), cross-encoder reranking | Research Paper RAG |
| Models | OpenAI API | DiffSense, Research Paper RAG |
| Orchestration | Inngest | Research Paper RAG |
Web and backend
| Category | Tool | Where I’ve used it |
|---|---|---|
| APIs | FastAPI, Flask | PayPlan, ReleaseWatch, Research Paper RAG |
| Frontend | React, Next.js | PayPlan, ReleaseWatch |
| Runtime | Node.js | DiffSense |
| Databases | PostgreSQL, SQLite | PayPlan, ReleaseWatch, Toilets |
Infrastructure and testing
| Category | Tool | Where I’ve used it |
|---|---|---|
| CI/CD | GitHub Actions, Jenkins | PayPlan, Adtran |
| Containers | Docker | DiffSense, ReleaseWatch, DogArmor |
| Cloud | AWS, Azure, Railway | PayPlan, DogArmor |
| Testing | pytest, Playwright | ReleaseWatch, DiffSense, PayPlan |
| Daily tools | Git, Linux, Claude Code | Everywhere |