How to create a portfolio?


What’a the best way to create a portfolio (looking to switch careers)? What should a portfolio contain, where should I save it (GitHub for example)?

Thank you.


I think this depends on the tech stack you would like to switch to.
E.g. for Machine Learning, one way of building a portfolio is to contribute to

This is something I’d be careful about how you brand it.

Professional developers don’t normally have something called “a portfolio”. Rather, they might have things like GitHub contributions, articles they’ve written, presentations they’ve given, etc. Having things like this that can publicly demonstrate your development abilities will help you get a job.

On the other hand, when I see developers referring to a portfolio, they’re often someone with little to no professional experience, with a collection of projects they’ve built for a coding bootcamp or something like that. Publishing a repository on GitHub that contains a tutorial project you’ve gone through isn’t going to help you get a job.

Personally, I think communication is a skill that lots of professional developers undervalue. Because of this, having something like a well written article on some technical topic can be a great way of demonstrating your abilities. The article needn’t be on something complex, and could be something like a beginner’s guide to using some technology.

I have an article that goes into this in a bit more detail.

Hey Paul (and everyone else),

Thanks for your reply. I re-read your article where you talk about “The best way to contribute to open source is to do it on the job.”

I’m registers and have made it through several github training articles and the “Hello World” exercise. Could you (or anyone else) recommend a very basic level Python project I could contribute to?

Thanks for any help you could provide.


I only scanned through it, but this guide to contributing to open source looks good.

1 Like