ML Engineer

James Le Portfolio

RIT-trained ML researcher who built MetaRec — 21 collaborative-filtering models in PyTorch and TensorFlow, benchmarked on MovieLens 1M — and documented the journey from theory to a Django web service. A textbook example of using open-source work as an ML portfolio.

PythonPyTorchTensorFlowRecommendation SystemsMLOps

Location

San Francisco, CA

Companies

Twelve LabsSuperb AIFull Stack Deep LearningSnorkel AI

Credentials

  • MS in Computer Science, Rochester Institute of Technology (Dec 2020)
  • BA in Communication (Minor in Computer Science), Denison University (May 2017)

Skills

PythonPyTorchTensorFlowRecommendation SystemsMLOps

Notable

  • 25+ articles on Towards Data Science with 900,000+ views and 250,000+ claps
  • Head Teaching Assistant for the Full Stack Deep Learning course

What makes it work

A breakdown of the choices that make this portfolio stand out.

1

Open-source library as primary portfolio piece

MetaRec is not a toy project — it implements 21 collaborative filtering models across matrix factorization, multilayer perceptrons, autoencoders and Boltzmann machines, all evaluated on the MovieLens 1M dataset. Publishing it on GitHub with documentation transforms personal research into a public contribution that every future employer can inspect, run, and evaluate without taking anything on faith.

2

Reproducible Jupyter notebook documentation

The Data Portfolio page states plainly that it is "a list of my top data analysis projects, in the form of Jupyter Notebooks and R Notebooks," most "fully open-sourced on GitHub" under an MIT license. That framing — reproducible, inspectable, permissively licensed — lets a hiring manager run the exact experiment rather than take a polished write-up on faith.

3

A personal-wiki homepage with an exhaustive content taxonomy

The site's navigation is unusually long for a personal page — Start Here, About, Work Experience, AI Research, Presentations, Data Portfolio, Data Journalism, Coding Portfolio, MOOCs, Undergraduate Papers, Writes, Reads, Listens, Publishes, Podcasts, Captures, Resume — repeated as a sidebar on every page. It reads as a maintained personal knowledge base rather than a one-off portfolio site, which signals years of consistent upkeep rather than a pre-interview sprint.

4

A bold, quotable hero headline

The homepage opens on a plain black screen with the oversized line "THE SEXIEST JOB OF THE 21ST CENTURY" — a direct callback to the famous 2012 HBR framing of data science. It is a confident, on-the-nose piece of copy that immediately signals which era and which field the whole site is staking a claim in.

What ML Engineers can take from this

Specific, actionable tips to apply to your own portfolio — no generic advice.

  • Build one open-source ML project and maintain it seriously. MetaRec succeeds because it implements a coherent family of algorithms with documentation, not because it covers every ML topic. Depth on one problem beats breadth across many.

  • Use Jupyter notebooks as your documentation format and say explicitly that they are open-sourced under a permissive license. Reproducibility plus a stated license removes the two biggest reasons a reviewer skips past your code.

  • If you produce a lot of content over years, build a durable taxonomy for it (by type: writing, talks, code, papers) rather than a flat blog feed. A structured personal wiki reads as more serious than a reverse-chronological list.

  • State a comparative result in plain terms. "Ant colony optimization performed 30% better than genetic evolution" tells a reviewer what was tested and what won in one sentence.

  • Choose an evaluation benchmark that your field recognises. MovieLens for recommendations, ImageNet for vision, GLUE for NLP — using the canonical benchmark immediately contextualises your results for anyone familiar with the literature.

Projects

Notebooks you can run, under a license that says you may. James Le’s data portfolio is largely open-sourced on GitHub under MIT, with MetaRec, a meta-learning framework for recommendation systems, as the research anchor — work that invites checking instead of asking for trust.

ResearchadvancedMS thesis project (RIT, completed 2020)

MetaRec: Meta-Learning Meets Recommendation Systems

PythonPyTorchTensorFlowKerasDjangoMovieLens 1M

James Le's RIT master's thesis: a meta-learning framework for collaborative filtering that "includes and unifies" state-of-the-art recommendation models and extends them to operate with limited data. The public repo implements 21 collaborative-filtering models across four families — 7 matrix factorization variants, 5 multilayer-perceptron models (Wide & Deep, DeepFM, xDeepFM, Neural FM, Neural CF), 6 autoencoders (AutoRec through Embarrassingly Shallow Autoencoders) and 3 Boltzmann-machine models — all run on MovieLens 1M (1,000,209 ratings, ~3,900 movies, 6,040 users), plus a Django recommendation web service.

Implementing a whole family of published recommenders against one benchmark — each linked to its source paper — shows the ability to read the literature and turn it into running code. The Django service, with versioned algorithms per endpoint and A/B-test support, shows the research was taken past the notebook.

  • 21 models in four families, each folder linked to the paper it implements

  • One shared benchmark (MovieLens 1M) across every model, so the comparisons are like-for-like

  • Django web service: multiple algorithm versions per API endpoint, CI tests for server and research code, A/B-test support, container deployment

ML Modeladvanced4–8 weeks (estimate)

Fashion Recommendation: Clothing Retrieval and Visual Recommendation

PythonResNetNearest-neighbor searchDeepFashionFloydHub

An end-to-end image classification and visual recommendation pipeline for fashion images. A ResNet-based classifier is trained on the DeepFashion Attribute Prediction subset (289,222 images, 50 clothing categories, 1,000 attributes). Its feature layer captures fabric, style and pattern, and nearest-neighbor search over those features returns visually similar clothes. The AI Research page describes it as a two-stage framework trained on Fashion144k and tested on DeepFashion.

Reusing a classifier's learned embedding for retrieval is the pattern behind most production visual search. Building it on a 289K-image dataset shows data-handling beyond toy scale.

  • Classifier features reused as the similarity space for recommendations

  • Trained on 289,222 DeepFashion images with 50 categories and 1,000 attributes

  • Code split into preprocessing, hyperparameters, input pipeline, model and train/test files

Data Analysisintermediate3–6 weeks (estimate)

Travel Time Optimization via Ant Colony and Genetic Evolution

PythonXGBoostpandasNumPymatplotlibgeopy

Taxi travel-time optimization, framed as a Traveling Salesman Problem over New York City locations. XGBoost first predicts travel time between every pickup/drop-off pair, using NYC Taxi and Limousine Commission 2016 trip records (close to 1.5 million trips, 11 attributes). Ant colony optimization and a genetic algorithm then search for the best itinerary.

Combines a learned cost model with classical metaheuristic search. That is a different skill from pure prediction, and it shows up in logistics, routing and ride-sharing roles.

  • Regression model supplies the edge costs that the optimizer searches over

  • Head-to-head comparison of two metaheuristics, with a stated result (ACO 30% better)

  • Exposes ACO hyperparameters (alpha, beta, rho, q) as CLI arguments

Ready to build your portfolio?

Follow the ML Engineer roadmap — skills, projects, and timeline to get hired.

ML Engineer Roadmap