What kind of projects, do employers want to see on a portfolio?

Recently there was a popular question on /r/java where someone asked

I really enjoyed the question and the answers, as there where a lot of insights, so i summarized the most common answers in this blog post.

Extracurricular activities


I want to see evidence of extracurricular activities. Back in the day, before it was popular, Google looked for Python experience in their Java developers. Since it wasn’t popular yet, having experience with Python suggested someone who loved coding enough to teach themselves to do it on their own time.
I can teach you how to do a project. I can’t teach you how to solve problems and learn technologies you haven’t seen before.

/u/best_of_badgers

For a self thought developers building a portfolio is a must imho as its the best way to show that you can do the job, but also for students its important to have a portfolio of apps or OSS that you have worked on.

High level technologies

For me, I’m just looking at the high level technologies you have worked with and stuff you are interested in. If you pique my interest I’ll do an intro phone call to get a better picture of who you are and what you’ve worked on.

/u/thecuseisloose

It´s important to put the technologies you have worked with on your resume. You could impress employers if you have worked with new or interessting technologies. If you have experience in the tech stack the use at the companie this will be a huge plus.

Evidence of being able to learn fast, and be autonomous

I’m mostly looking for evidence of being able to learn fast, and be autonomous, e.g. teach the job for themselves in period that isn’t like several years

/u/audioen

Smaller companies tend to have less ressources for training new deployers, so the ability to learn fast and (mostly) autonomous is highly valued. Of course this differs from company to company.

Something that builds and is “deployable”.


Something that builds and is “deployable”.
I want to be able to do a git clone and then mvn package and docker-compose up. It doesn’t have to be great, but I want to see the application run.

/u/shagieIsMe

Having finished or a least runable apps in your portfolio makes it even more compelling for employers. This will be even better if you have a README explaining how to package and run the application.

Having some projects better than having none.


Having some projects better than having none.
Having projects that I can investigate — on github, or on some website of their own — is better than a line on a resume. “Investigate” means that I can go read the docs, play with the app, look at the code, or anything else.

/u/mikeblas

Anything is always better than something. This is also true for portfolios, put everything on there even if its unfinished.

Projects that are used by “customers”

Having projects that have customers is best. If you make a program to catalog your VHS tapes, that’s great. If you’ve made a program to catalog your VHS tapes and everyone at the anime club loves it and uses it, and you’re listening to your customers and adding features, then that’s awesome. Note that “having customers” doesn’t necessarily mean “making money”.

/u/mikeblas

/u/mikeblas makes a very good point again. Having a project that is used by real people is really valuable and will help you to stand out of a crowd of applicants.

Thanks to all the posters of this /r/java thread for sharing their wisdom with us. I hope you enjoyed this summary.

If you liked this post you may also want to check out: http://junior-dev.com/2019/03/28/how-to-prepare-for-an-programming-job-interview/

How to choose the perfect side project?

You want to improve your coding skills but you cant decide which project you should work on in your free-time? Choosing the perfect side-project depends on many different factors. Below are some of the most important factos when choosing a side project.

Learn something new

You want to choose a project that puts you on the edge of your current skill level. If you choose a to difficult project you will abandon it, its therefore essential to choose a project with the right difficulty level. Not to hard but not to easy.

Fits your interrests

Choose a project that fits your interessts or that will help you be more efficient in your personal life. This increases your motivation to work on your side project, making it more likely to be finished.

Know your available time

The project should be managable in scope, you want to choose a project that you are able to finish in the time frame you have available. Finished projects look better on your resume then unfinished ones. If you want to shoulder a project thats too big for you, it will fail.

Start small and iterate

The best way to build a project is to start small and then iterate on it. Build a basic version first and then either improve it in small iterations or choose your next project to work on.