This lesson is a brief overview of what a developer portfolio is and why you should make one.
For a complete breakdown of how to make an effective developer portfolio, we HIGHLY recommend Josh Comeau's free guide.
What is a developer portfolio?
A developer portfolio is a website where you show off your best projects.
It acts as a landing page specifically made for technical recruiters and hiring managers. You can think of it like a resume extension. Except instead of more buzzwords and corporate lingo, you get to add personality and context.
A bad developer portfolio can do more harm than good. But a great portfolio can give you a huge advantage over other candidates with the same level of experience.
Why is it important?
Software engineers, especially those without previous work experience, need to be able to show potential employers that they are good programmers.
Your developer portfolio is your chance to prove that you know how to code.
This goes beyond simple syntax, too. A complete portfolio of 2 or 3 deep projects shows potential employers a lot about who you are and what you're capable of.
They can dive into your projects and look for qualities that they find important.
- Do you write easy-to-understand code?
- Is your code well-documented with robust READMEs and lots of inline comments?
- Are you following best practices for whatever language/framework you're using?
Not every company is going to be looking for the same thing, but having a solid portfolio gives off a strong impression that you know what you're doing.
Who is it for?
Most of the time it will be tech recruiters and hiring managers who check out your developer portfolio. And they'll usually be checking it out because you don't have a ton of professional experience for them to ask about.
The portfolio serves as a bridge between student and professional. It's an opportunity to show that you can build stuff, are a great learner, and that you're continuing to practice coding even outside of school/work. This is a good signal to potential employers.
Since it will be tech recruiters and hiring managers who are looking at your portfolio, they should be your target audience. What does this mean?
It means that your portfolio should be highlighting skills relevant to positions that you are applying for. A lot of candidates think that an impressive portfolio is one that shows the biggest variety of skills/languages/frameworks -- but that's just not the case.
A great portfolio goes really deep into the specific skills that a company is looking for.
If you're applying for React jobs, your portfolio should be React projects.
Do some research into your potential landing spots and look for the common threads that all of the positions have in common. Then, tailor your portfolio to show off that you have those skills!
How to choose projects
Aside from using a tech stack that aligns with your dream job, here are a few dos and don'ts for choosing projects for your portfolio.
- Projects that solve a specific problem.
- Projects that are "live" and being used by real people "in the wild."
- Projects that show your interests and values, like a climate-change app that shows that you care about the environment. Or a crypto app that shows that you're interested in Web3.
- Tutorial projects that you didn't come up with on your own.
- School/bootcamp assignments that "everybody" else in the class also built.
- Shallow or incomplete projects that don't have much original code.
- Unrelated, non-dev projects (like photography, YouTube videos, etc.).
- The portfolio site itself.
Number of projects to include
3 is the magic number.
You can get away with 2 if they are interesting, robust projects that clearly took a lot of time and effort to build, are deployed to the world, and especially if they are used by real people to solve a real problem.
But only having 1 project won't give the tech recruiter or hiring manager enough information.
On the flip side, once you hit more than 5 projects you're starting to drift into "too much" territory. It's unlikely that the person reviewing your resume is actually going to check out every single one of your projects, so even if you have a ton of projects you should carefully select your top 3-5 to include.
Your goal is to show off your best work, so only include your 3-5 best projects (even if you have more projects completed.)