In today’s article I’m going to answer the question, what is a programming portfolio and how do you go about building one.
I’ve had a lot of people ask me about this and they either don’t know what a portfolio is or they don’t know what roles it plays in the whole process of getting a job when you have no experience.
And most importantly they want to know how to actually go about building one.
So, I’m going to cover that in this post.
If you’re new to my blog, I’m Peter Mukundi and I help people become software developers no matter who they are. No matter where they come from and the experience they have.
I do my absolute best to give you all the information I have about how I became a software developer so that you can do the exact same thing.
Follow the exact same process I have.
So, I highly recommend checking out my blog from time to time to get actionable tips to land your first job as a software developer.
Without any further ado let’s just get into it.
So, what is a programming portfolio?
So, assuming that you are brand new to programming or you’re just starting out, the portfolio is going to be the thing that you have.
Like a tangible piece of evidence that shows that you can build projects.
That you can work with programming languages. This is because a lot of problems you’ll have when you’re applying for jobs is that it’s hard to know what people KNOW.
It’s hard to know what people skills are as software developers.
Typically, your portfolio lives on your website or your personal website and in the section for your portfolio you list all of your applications that you’ve worked on.
Maybe the open source projects. Projects that you’ve built and all free things you’ve worked on.
And this will be like TANGIBLE evidence that you are actually skilled in the programming languages or technologies that you say you are.
This goes even beyond demonstrating your skills. It shows off your personality and what types of interests you have.
It shows what types of projects you like to choose to work on.
And beyond that I think this is one of the most underrated things about a portfolio. Something that can actually say more about you and truly show that you can complete tasks.
That you can start a project and you can COMPLETE it.
One of the biggest issues I’ve seen from some of the people who I know are in this field is that most developers are so bad at completing things because they’re perfectionist.
They don’t want to look bad!
But they forget that as an employer who is going to hire you, if they see that you’ve completed projects, that’s going to be a BIG PLUS.
If they see you complete multiple projects with different skill sets, different technologies and different programming languages, that’s all going to look good on you.
So, the portfolio is a really key piece of you getting hired without any experience.
Now let’s dive into how to build a portfolio because that’s very important as well.
Start with the end in mind
The first step you’re going to want to take if you’re new to this and if you haven’t really thought about how to get started is you want to start with the end in mind.
And that’s a concept from one of my favorite books ever, “the seven habits of highly effective people” by Steven Covey.
Definitely one of my favorite books.
The idea is, in any endeavor that you’re, for instance, software development, you want to start with the end of what you want to accomplish.
You want to figure out what is it that I want to be as a software developer. What direction do I want to take? What programming languages and technologies do I want to work on?
Then, start with that and then work your way backward.
Say you want to be a front-end developer. Well, then you have to figure out what projects you need to build to showcase those skills.
If you’re someone who has no idea. It’s okay, you don’t have to know everything when you first start out.
But what I would recommend is picking one programming language and working your way back.
Let’s say you’ve decided to pick Python as your programming language.
The next step is to figure out 6 to 8 projects that you can build with Python. And then work your way backwards and start with the simplest project.
It would be a tic-tac-toe app. It can be a calculator app. It doesn’t matter.
Just keep it as simple as possible.
You can either choose 4 to 6 or 8 projects to work on. It really doesn’t matter. But at the very minimum pick 4 projects you’re comfortable with and start working on them.
The key thing to remember is to keep these projects fluid. Meaning you can change at any time.
In fact, what I would recommend is once you’ve created your first project or once you complete your second project or third or basically any time you complete a project you should re-evaluate the projects in your roadmap.
You should ask yourself something like, “based on what I know, based on my skills, should I modify my second project to be something different?”
This is because you’re always going to be learning as you’re building projects or reading blog posts.
Whatever it is, you’re going to be picking up so much information. So, what you knew a month ago is going to be different from what you know today.
You want to constantly be changing that roadmap.
One of the issues that I see with a lot of people is that they create a roadmap and they’re so scared that it’s not a perfect roadmap.
They never even follow it!
The key thing here is to constantly adapt.
So, you’re building applications. You’re starting with something simple. You’re making it more complicated.
You’re adding different technologies and adding different programming languages if that’s the direction of where you want to take things.
But, how do you know when enough is enough?
I know I said you should create anywhere from 4 to 8 projects but I’ve seen 10 applications on a portfolio.
How do you know when it’s enough?
Well, there’s no right answer but I’d say once you get to at least the 4 mark or maybe 6 mark, at that point if you’re able to build applications.
If you’re able to build features on those applications with some confidence.
Chances are good and you are ready to go out there and at least try to see what opportunities you may have in the job market.
Then you can create your personal website and add your portfolio section on there as well.
Just make sure that when you showcase your portfolio on your website that you do it in a nice way and it looks nice.
I would stick to minimal.
If you’re like me and don’t like styling, just make sure you explain applications.
Make sure you include screenshots or gifs. Make it standout.
Make it look fun and just be yourself. Show some personality.
That’s way better than being robotic!
I hope this gives you a good sense of what the programming portfolio is, how it plays a role in you getting a job in the future and how to go about building it.