3 Ways To Build A Strong Portfolio Of Software Projects

3 Ways To Build A Strong Portfolio Of Software Projects

When looking for a web developer job, you should be able to demonstrate your skills.

A portfolio of your previous projects, well displayed, goes a long way to demonstrate what you are capable of doing.


Remember to place your projects at a place where others can see or access them.

In this post you are going to learn 3 ways through which you can build a portfolio of software projects that will get you the job, even if you are a complete beginner.

Before we get started building out portfolio today, let’s warm up to it first.

i. Create a GitHub Account

As a junior software developer, you look like a very risky investment.

Everyone will most likely be looking for reason not to hire you, instead of a reason to hire you.

But if you can demonstrate your competence you will have a smoother ride.

GitHub is a version control system for managing versioning of software.

It is as well a free code repository where you can store your code for your apps for easy access by you and others.

At this time I don’t suggest that you begin contributing to other people’s projects on GitHub, just focus on using it for storing your own code.

Exclusive Bonus: Click here to download my book on How to Become a $50/Hour Software Developer in 7 Simple Steps and jump-start your software career today.

This is the time you want to create an account on GitHub.

Put your source code in a public repository, especially if you are a self-taught developer.

ii. Purchase A Domain

You can put your code on GitHub but you also need a place where you can run the code so that you can demonstrate the user interface.

In order to stay ahead of the competition, having a personal domain will go a long way to assist your job search.

GitHub pages only support static HTML pages so if you need to run a demo of your PHP or Ruby on Rails applications, you need a real server.

Someone would be more confident to hire you if they can ascertain your capability by checking live demos of your previous projects.

A personal website is great place to put all your previous work together, including other people’s testimonials. There are other alternatives that can enable you to display your past projects but they all come with limitations.

With your own personal domain you are able to put a personal touch to your works of art.

When you are starting out as, say a mobile developer, you probably don’t have much of a budget to blow in purchasing a domain and hosting space.

But remember you are fighting against a huge competition and you need something to make you stand out.

Having a domain demonstrates that you’ve taken your career and what you do seriously and are really seeking to get ahead.


Where do you get the projects to include in your portfolio from?

Probably nobody has trusted you yet with any paid work that you could then include in your portfolio.

Here are three killer ways to achieve simply that.

Let’s get started.

1. Take Freelance Projects

Freelance projects will play a big role in getting your developer or design career started as a junior developer.

Nobody will hire you if you don’t have any previous record of work or tasks that you have successfully accomplished.

You need a way to demonstrate this somehow.

Freelancing is the easiest place to start. These are the projects that you will later include in your portfolio. It is from your freelance clients that you will ask for recommendations too. 

How do you get started freelancing? The questions of experience will still resurface, right?

Who will give any paid work to somebody without any previous experience?

    i. Start with friends and relatives

Start from your inner circle of friends and relatives. This is the time you need their help.

They are the easiest starting point.

  1. Approach one of your friends or relatives.
  2. Tell them about what you do and
  3. See if you could build a website or an app for them.

Remember you will first need to tell them why they need a website, so a quick brush up of your marketing skills will come in handy.

Probably they will NOT be as critical of your inexperience as a real employer who will spend money on you.

In most cases you will take on these projects for free.

Don’t worry about the pay for the start. These projects are a great opportunity to learn. You are still green and you need something to get your hands on in order to sharpen your skills.

A real project will speak strongly about your credibility and competence so seek to take on these for the sole purpose of learning, growing and building your portfolio of projects.

When you build something great, these friends will be able to connect you to your next paying client and there you go: your career just launched!

Don’t take on so many projects for free, lest you be known as the guy who works for free. I’d recommend you only do at most 3 projects for free.


Only take projects that will enable you build the specific skills you need for the particular field you are seeking to get into.

If you are looking to venture into iOS development, building 10 Android apps won’t prove your point. A potential employer will still need to see your experience in iOS.

    ii. Check with local businesses

Sometimes you just don’t want to bother family and friends. Or maybe they are not a good place to start, it depends.

Some people also sometimes just want to have their coding adventures secretive and personal by keeping family and friends out of their business.

They just prefer to go out there and give it a shot themselves. That’s great either.

Getting onto your feet and approaching a local business or entrepreneur in your town with a view to building a project for them is a great way to start. In fact this way you get real world experience firsthand.

This gives you an opportunity to also work on your

  • Communication skills,
  • Time management skills and
  • Prioritization

You need these projects with your new clients to work out well, so you should definitely put in your best foot forth.

As for real businesses, don’t seek to work for free. It set’s a bad relationship between you and the prospective employer or client.

You could accept to work at a lower price but NOT for free.

You work for a lower price because you want to win them. You are probably a beginner developer and your rates are not established yet due to your lack of experience.

After a couple of successful projects under your belt you will be well able to set some real price tag or hourly rate.

This client is probably already being approached by many other developers who want to do the same work you seek to do.

You need to let them buy your idea somehow. Once you get accepted for this project, do your best. Apply yourself to learn as quickly as you possibly can and stick to deadlines and schedules.

You will need a great recommendation from this client later on. So prove your competence now. Nobody wants to hire a mediocre software developer.

2. Start Your Own Pet Software Projects

A great alternative when you are looking to build your portfolio is to start your own pet software project.

This could be some simple application that solves a particular problem that people experience or automates some manual task that people perform each day.

The key point is to build something that can actually be run and be tested.

Something you can use as a starting point to learn and demonstrate your skills.

If you a web developer and you already have a domain, then create a subdomain under your main domain called “projects” where you can then host your websites or applications, as you create them, and then show them as samples or demos to potential clients.

If you are into web development, mobile app development or desktop software development, you could build an application that you can then sell to potential users in your locality or in the internet, if you have the budget to invest in marketing.

Marketing a software startup or an app till it gains tracking in the market is a pain in the ass and takes great amount of effort and resources.

NOBODY will come banging at your door in order to buy your software before you market it to them.

3. Contribute to Open Source Projects

A fun and exciting way to build your portfolio is to join a GitHub community and contribute to open source projects.

There are various ways you could contribute:

  1. By improving the software documentation
  2. By translating the documentation to your first language
  3. By participating in software testing
  4. By submitting code to build features or fix bugs

Open source contributions add a great deal of credibility to your portfolio and resume.

I got my first paying clients for web app development using only my open source projects as credentials.

And with that…

…I can lick my finger and put in the air, and assure you you can do it too.

The projects you contribute to have to be related to the field you are seeking to get into.

For a programmer, contributing to software documentation is a great idea, but for your contributions to really stand out, it needs to be directly related to coding.

If you are a junior software developer, getting started with open source projects will prove a great challenge because most projects require quite technical skills that you might have yet developed.

However, it is really worthwhile because you will have a great opportunity to

  • Network,
  • Learn great coding practices,
  • Learn team collaboration and
  • Improve your communications skills, which are key to a successful software development career.


Portfolio Tips

  • Only take relevant projects that are related to the field you seek to get into
  • You can accept low pay for the start, it will pay off in the long term
  • Start where you are most likely to win to make the process of building a portfolio less frustrating
  • If possible, put your code on GitHub so that it’s available for review or for easy of sharing it with others
  • Be swift. When you are rejected at one place quickly move on to the next
  • Always have a user interface to demonstrate your projects


Have you gotten started building your portfolio yet?

Which is you preferred method for building your portfolio of projects?

Please leave your comments in the comments below.  Found this article useful? Please share.

Exclusive Bonus: Click here to download my book on How to Become a $50/Hour Software Developer in 7 Simple Steps and jump-start your software career today.

About the Author Geoffrey Barnes

Geoffrey is an experienced software developer and open source evangelist. When not coding he writes and talks about current technology trends, small business tips and developer productivity hacks. He is no coffee addict.

follow me on:

Leave a Comment: