A strong AI portfolio is three to five projects that a stranger can understand, run and judge in under ten minutes, each showing a clear problem, a defensible evaluation and an honest account of what went wrong. Hiring teams rarely read code line by line; they look for evidence that you can scope a problem, work with imperfect data and measure whether your system actually works. This guide explains how to choose projects, build them to that standard and present them so they get read.
What employers look for in a portfolio
Job postings for AI roles vary widely, as our guide to AI job roles shows, but the signals reviewers want are consistent. They want proof that you can frame a vague need as a measurable task, that you know the difference between a demo and a system, and that you can explain trade-offs in plain language.
Three questions sit behind most portfolio reviews:
- Did the candidate define success? A project that states a metric and a baseline is stronger than one that says “it works well.”
- Is the work reproducible? Pinned dependencies, a README with run steps and a small sample dataset signal care.
- Can they communicate? A one-page write-up with a chart or two often outweighs a thousand lines of uncommented code.
Choose projects that match the job you want
Pick projects by target role rather than by what is fashionable. A machine learning engineer portfolio leans on data pipelines, training and deployment. An applied LLM developer portfolio leans on retrieval, tool use and evaluation. An analyst or product role leans on problem framing and clear reporting.
A balanced set looks like this:
- One classic ML project on tabular or text data with a proper train/validation/test split and a simple baseline you beat honestly.
- One LLM application such as a document question-answering tool, with a written evaluation set of at least 30 to 50 questions and a record of failures.
- One end-to-end project that someone can click: a hosted demo, an API or a small app.
- Optional: one contribution to an open-source project, a documented competition entry or a replication of a paper.
Free starting points include the Machine Learning Crash Course, the fast.ai course and Kaggle Learn, which also offers public datasets and notebooks. For competitions as a showcase, see our guide to winning at Kaggle and AI hackathons.
Build each project to a standard
Start with a narrow question
“Classify support tickets into five queues and flag urgent ones” is a better scope than “build a customer service AI.” Narrow scope lets you finish, evaluate and explain. Write the problem, the user and the success metric in the first paragraph of the README.
Use real, messy data and say where it came from
Cleaned toy datasets show little. Use a public dataset with licensing you can cite, or collect a small one and describe how. Note class imbalance, missing values and leakage risks you found. Never publish private or scraped personal data.
Evaluate before you decorate
Report a baseline (even “predict the most common class”), your metric and at least one error analysis: ten examples your system gets wrong and why. For language-model projects, keep a fixed test set and rerun it whenever you change the prompt or model. Our explainer on LLM-as-a-judge covers the limits of automated grading if you use it.
Make it runnable
Provide a requirements file or container, a short command to reproduce the main result and a small sample of data. Add a hosted demo where practical; Hugging Face Spaces is one free way to host a simple interface.
Present the work
Put a short summary at the top of your profile or personal page: three projects, one sentence each, with links to the repository, the demo and a write-up. In each README, use the same structure:
- Problem and users in two sentences.
- Approach with a diagram if the pipeline has more than three steps.
- Results in a small table with the baseline.
- Limitations that name what the system cannot do.
- What I would do next to show judgment.
Keep a changelog of mistakes. Interviewers often ask what you got wrong, and a documented answer is credible in a way a polished success story is not. Our guide to preparing for an AI/ML job interview shows how portfolio questions usually arrive.
Common mistakes
- Copying a tutorial project without changing the data or question.
- Reporting accuracy on the training set or tuning on the test set.
- Hiding failures, which makes reviewers suspect them.
- Letting repositories rot: broken links and outdated dependencies signal low care.
- Claiming team work as solo work. State your role clearly.
For the broader picture, see how to start a career in AI.
What to watch next
- Employers asking for evaluation sets and error analysis rather than only notebooks.
- More hiring processes that include a take-home project on your own portfolio.
- Free hosting and credits for demos from model hubs and cloud providers.
- Growing expectation that candidates can discuss privacy and licensing of their data.
Key takeaways
- Three to five focused projects beat a long list of tutorial copies.
- Define a metric and a baseline in every project.
- Make each one runnable, with a short README and a demo where possible.
- Document limitations and failures; they build trust.
- Match projects to the role you want, not to the latest trend.
Frequently asked questions
How many projects should an AI portfolio have?
Three to five well-finished projects are usually enough. Reviewers have little time, so depth and clarity matter more than quantity.
Do I need a hosted demo?
Not for every project, but at least one clickable demo helps non-technical reviewers see what you built. A recorded short video can work if hosting is impractical.
Can I use Kaggle notebooks in my portfolio?
Yes, if you add your own question, evaluation and write-up. Kaggle datasets and notebooks are a good source of material, but a copied notebook with no changes shows little.




