By Andrea Yip on February 23, 2021
A portfolio is an important way for any data/AI professional to tell their story, show off their best work, and demonstrate how they think about solving problems. We’ve talked about the importance of having a portfolio, and using this as a strategic tool to share your project work with recruiters and employers.
There is no right or wrong way to put together a portfolio. However, among the portfolios we consider to be strong, memorable, and more likely to get noticed by an employer, we’ve noticed a few consistent themes. Here is our checklist for best practices when it comes to creating a data/AI portfolio:
Let’s get into the details:
Show off your strongest projects – these are the projects that tell a great story about how you identified and solved a problem, and how your solution had an impact on people. “Projects” may represent a diversity of work you’ve completed: research papers or work that you completed in the classroom, through volunteer work, from a thesis project, or in a business environment. Where possible, include examples where you can show how you engaged in an end-to-end project from idea to production. When sharing with a recruiter, highlight projects that collectively show off the range of skills or expertise you have and are most relevant to the job that you’re applying for.
Tip: It can be tricky to share projects where intellectual property (IP) issues are a concern – this is very common with industry projects. As a professional, you have to honor IP. However, there may be creative ways to tell your story while protecting IP. For instance, it may be possible to use public or fake data to demonstrate the work, create a public project from scratch that illuminates similar concepts/thinking, and/or password protect sensitive projects and require an NDA before sharing. You’ll have to determine what path makes sense for you given the confidentiality agreements you’re bound by.
Use a simple and repeatable framework to talk about each of your projects. This level of organization makes it easier for someone to follow what you did, how you did it, and make comparisons across your projects. A couple of frameworks we find helpful:
Explain what role you played in putting the project together, particularly if you were working on a team or at a company. This helps put your contributions into context and shows how you interacted with other team members. When it comes to describing your role, avoid generalities as these can be difficult to interpret. For instance, rather than say you “managed research”, describe how you “led a research team with 2 other analysts and was responsible for cleaning and integrating data, and training binary classification models”.
Don’t keep us in suspense! If you worked on a project, tell or show us what the outcome was and how this made an impact on other people or a business at large. The latter point is particularly impactful because solving a real-world problem that impacts a person’s life or business makes for a powerful story. It helps put into context why it’s important to solve the problem. Focusing on results is also a great way to show how you were able to implement your solution – not just build it – and even get it into production.
When used strategically, visuals are memorable and can even do a better job of explaining complex data concepts than the written word. It gives your reader a different way to engage with and understand your work. For instance, include a demo of a project so your reader can interact with what you’ve built, show media and screenshots of your solution to help bring it to life, or create a diagram that explains your thinking. Finally, don’t assume people know how to interpret quantitative data that you may include (e.g., charts, graphs, models, etc.), so make sure to offer an explanation.
NLP, ML, pandas, ETL, AI... These are all terms or acronyms that are easy to overuse. Using a lot of technical language doesn’t necessarily demonstrate one’s technical prowess and, in fact, might even suggest that a person is hiding their lack of technical expertise behind all of this jargon. Keep in mind that people who look at your portfolio will not necessarily be technical nor have the subject matter expertise that you have, so avoid speaking to them as if they do. Use plain language wherever you can and thoughtfully including technical language as needed.
Tip: Sharing your GitHub repository or Jupyter notebook can help tell your story, but don’t expect someone to take the time to look at this or make sense of it on its own. Whenever you share code, make sure it’s within the context of a described project and consider why your reader should look at it (what’s interesting or unique about it? Is this just for reference? etc.).
Make sure you can talk about your portfolio and each of your projects in just a few sentences. Not only is this summary great to put into your resume, but these are also helpful speaking points to have on hand during screening calls or interviews. Having a short pitch and knowing when to leverage it takes practice, so try running your pitch by business colleagues, peers, or friends.
Consider creating a project for a specific role or company you’re very keen to work with. It’s rare for someone to take the time to create a project for a specific company and, in the process, offer that company new insights into their business. A well-made custom project is more likely to capture their attention. For instance, a person interested in a consumer analyst role at an eCommerce company may build an NLP tool that analyzes consumer reviews from the company website and share back key findings.
Good luck as you build out your portfolio!
Some other posts about portfolios you may want to check out.