You can see it all the time: In the hope of landing a job, new developers put in hour after hour creating their portfolio website. They have a great design in mind with a cool color palette, fancy animations, and a great UX.
But after weeks of work, the result looks more like... eh.
Why all this effort? It seems like everyone in the industry believes that you need a portfolio website to get a job.
Actually, not everyone. Many developers (including me) get great jobs without ever having a personal website. Even if they are self-taught.
So the crucial question is: What do the people involved in the hiring process think? These people are the gatekeepers. You have to spark their interest to get a job. If they don't care about your personal website why build it at all?
To answer this question I went out and conducted a survey among recruiters and hiring managers. The results are clear: you don't need a personal website to get a job. On the contrary, it can even backfire.
So before you start (or continue) wasting a lot of time on your portfolio website let's talk about
Note: If you're involved in hiring developers you can participate in the survey as well.
My personal experience with portfolio websites is clear: many of my colleagues never had one. Neither did I. Still we found great jobs. But this is not objective, of course. The question is if this personal experience holds true for others as well.
To dig deeper I reached out to 300+ recruiters and (React) team leads who are involved in the hiring process. I asked them two questions.
Imagine this situation:
You see two job applications by developers without professional experience. Both resumes include a link to their GitHub profile and a list of portfolio projects. One developer also mentions a personal website. How would you rate the following questions from 0 (not at all) to 5 (definitely)?
- Would you look at the personal website?
- Would the chances of the dev without a personal website be lower?
Hold your breath. Here are the results:
65% of the hiring managers would definitely look at a portfolio website of an inexperienced candidate. 93% would be likely to have a look. That means as an aspiring Junior React developer make sure that your portfolio website is in a presentable state.
If you have one already.
If you don't have a portfolio website yet, you might not even bother. 51% of the hiring managers said that your chances of getting a job would not be lower compared to a candidate with a portfolio website. For 85% the chances would only be slightly lower at most.
The logical conclusion: for 51% of the hiring managers a candidate without a portfolio website has the same chances as a candidate with a website. Not only that. Having no website might even increase your chances. But more on that later.
First, let's have a look at the correlation between the two questions. How many hiring managers look at a website but still think its impact is small?
The answers tended to be on the two extremes. The bottom right corner shows a strong correlation between hiring managers who said
A third of all hiring managers belonged to this group. Combined with the others at the bottom of the graph more than half of the hiring managers did not give any importance to portfolio websites at all. That's what we also saw in the second pie chart above.
The majority of hiring managers look at your website... but don't give a crap.
Now you're right. Reality isn't black and white. A considerable number of hiring managers said a portfolio website would slightly increase a candidate's chances. For some it would even be a clear advantage.
At the same time, the framing of the survey was quite open and left some questions: How does the portfolio website look like? Are the GitHub projects of one dev better than the others?
So the question "Would the dev without a personal website have lower chances?" unsurprisingly was often answered with:
Luckily, many of the hiring managers were so nice and provided deeper insights. That's what we'll discuss in the rest of this article.
You're right. Depending on the hiring manager a portfolio website might give you a bonus. But why is that? Let's hear two of the more positive voices:
Your personal website is a showcase of who you are. If you're not willing to put in the work to make yourself stand out and give me a glimpse at how passionate you are about development then I'd rather give the opportunity to someone who is.
Anyone can learn to code but you can't teach someone how to enjoy what they're doing.
Team Lead (wants to stay anonymous)
It depends on both. The GitHub projects and the personal website. A good personal page will either show nice projects or a creative page that stands out. But that is, by definition, rare. Both things can also be found on GitHub. For a developer without much experience, the personal factor would matter more than usual.
Tech Lead Style Team at Westwing
The key takeaways here are that a website can show
Now, these are all important points. Especially for devs without much experience. Your character is important to fit into the team. Creativity is crucial for solving problems. But most importantly, a Junior developer needs to grow. And dedication and passion are the fuel for this growth.
Thus if you can convince a hiring manager that you have these attributes you will get a step ahead. And a portfolio website may help with that.
At the same time, as Renato mentions, all of this can be found in GitHub projects as well. And from my perspective projects on GitHub are superior to a personal website. By a lot. But we'll come to that later.
For now, let's have a look at two reasons why you shouldn't build a portfolio website.
When I build a website from scratch this is what typically happens:
If you have experienced something similar you know one of the biggest drawbacks of creating a portfolio website from scratch:
You can spend a lot of time getting everything straight. Usually much more than expected.
The question is: Do you really want to invest all this time in a portfolio website? Even if the most important people don't care? The people who decide whether you get the job or not.
You probably got it. Time-wise a portfolio website is a risky investment. But you might think: "I got time. And it's still an opportunity to practice my coding skills."
Ok. But there's another problem.
Having no site doesn’t affect the interview process. Having a poor site, however, does not reflect well on a candidate
Team Lead at iHeartMedia
Let's face it: Most developers aren't born designers. And they don't need to be. After all, it's usually not part of a developer's job.
But the problem is that unlike your personal projects on GitHub, a portfolio website is expected to look good.
A bad design can make you look incompetent even though everything works fine and the information on the website isn't bad at all. And even if your website looks great in your eyes another person might not agree.
That's not all though.
Websites are cool and look nice but they open the door for more interpretation and criticism because they’d naturally form an opinion. If a personal website hasn’t been up-kept then it could hinder their application, not enhance it.
Recruiter (wants to stay anonymous)
He's got a point. It's not only about the design. There's a part that we rarely think about in advance:
Websites have to be maintained.
Over time, things will change. Your links might go 404, a change in one part of the code might break another feature. Personal projects that once were cool look crappy now. Our resume receives updates.
A website has to be checked regularly. I've seen broken links in portfolios that were only a few weeks or months old. Especially in the early days when there are lots of changes to your website and GitHub portfolio the risk of breaking things is high.
I would never consider it a negative point to not have a website. Candidates can earn bonus points if they have one and it's really good. But an ugly or broken page just hurts their chances.
Tiago Dionesto Willrich da Silva
Engineering Team Lead at Zenjob
A wise man once said: "Better to remain silent and be thought a fool than to speak and to remove all doubt."
In that manner: it might be better to have no portfolio website than one that looks bad or is broken. Especially since there are great alternatives. Alternatives that have a way higher impact on your job search as you will see in the next section.
But before we continue, it's time for... an ad break. (Not really an ad, more of a freebie that might come in handy if you're just starting your career as a developer. Anyway, grab a coffee, and let's continue.)
If you made the decision to ditch your portfolio website you just saved a lot of time! Congrats.
But what should you do instead?
Here are some alternatives that have a higher impact on your job search.
If you don't have professional experience as a developer yet you have to prove your skills. From the perspective of a hiring manager, offering you a job means taking a bet on you. Will you be a valuable asset to their team or not?
Your public projects on GitHub are a great opportunity to prove that you're job-ready. Your code speaks for itself. And if you build your project in a professional way you can hit a home run on your job search.
I have never had a personal website be a talking point that has come back with positive feedback. However, GitHub and personal projects are nearly always mentioned and talked about.
Sam L. (wants to stay anonymous)
Sam has an important point: Your GitHub projects are a great conversation starter in job interviews. The interview will typically start with a short introduction round. After that, you'll likely be asked about your past experience.
If you don't have professional experience yet your GitHub projects provide the interviewers with an alternative. They will ask you about your technical decisions. They will try to follow your thought process. They might ask what you would improve from hindsight.
This is not only an advantage to the interviewers.
You will start the interview by talking about something where you're the expert. You built this project. You can show your enthusiasm. You can share your expertise.
At this point, you might rightfully ask where the difference is. If you publish the source code of your portfolio website it's basically the same as any other GitHub project, isn't it?
Some of the hiring managers I asked said exactly that. But there's still a small difference.
Better to have no website than a bad one. If one dev has a website but the other has better projects or contributions on GitHub I would give higher priority to GitHub.
Frontend Team Lead at LIQID
A portfolio website is exactly that: a website. To be more precise, a static website.
Now, to be frank, these are miles away from real-world web applications. And building web apps is what you're getting hired for as a React developer. Not building static websites.
The difference is that web applications are dynamic by nature. They are stateful and load data from APIs. They offer interactive elements and forms.
So instead of investing a lot of time into a personal website build one or two full-blown web apps. This will much better prove that you have the skills to work on real-world production projects than any static website could do.
That leaves only one question: how and what exactly should you build if your goal is to impress hiring managers?
No worries, I got your back. Here is an in-depth guide into building React portfolio projects that make you shine like a pro.
Blog posts are extremely valuable. I would prefer a non-experienced person with a bunch of articles over a person with less than 1 year of experience.
Team Lead (wants to stay anonymous)
You have a personal website that also includes a blog? That changes the game.
It's still a static website that doesn't really prove your production skills. But the focus is not on the website anymore. It's the content that you create.
In fact, you don't even need a website. Just create an account on dev.to. On your resume, you simply add a link to your dev.to account instead of the personal website. That's it.
The reason why blog posts or other content can have such a great impact are these:
All these points are super important in getting your first job. But it's difficult for hiring managers to assess your thought process or communication skills outside of a personal interview.
By creating educational content you provide these valuable insights right away. That can get you a step ahead of other candidates.
Now, also blog posts may backfire if they are too chaotic. So here are two tips for writing good content.
At this point, you may be convinced that writing blog posts is a good idea. But you may feel that you don't know enough yet, that your English isn't good enough, or that you have no idea what to write about.
But let me guess: You do the following two things regularly, right?
It's simple. Pick either of those and write about it.
I personally like the first approach a lot because it gives deep insights into your thought process. And it's relatively easy to write about. Just note that it might be helpful to create a stripped-down version of your code to illustrate the problem. That will allow the reader to follow along.
Kelvin, a student of mine, took the other approach. He learned about integration testing while building the Reddit Analytics app here on Profy. He's not a native English speaker and he was new to testing at that point. But still, he wrote this article on dev.to which even got featured in their newsletter.
I think I made my point: It doesn't take a lot to write a few blog posts. It will be much less effort than building a portfolio website from scratch. But the impact on getting your first job can be tremendous.
If you want to take a deep dive into blogging as a developer I can highly recommend this free course to get started.
This point is very similar to creating blog posts. Still, it deserves separate mention.
By writing detailed READMEs for your projects on GitHub you can show your communication skills and present your thought process. Surely not in such a deep way as by writing blog posts. At the same time, it's less time-consuming.
To be honest, a good README is a must-have for any portfolio project. Here's why:
Imagine a hiring manager opening one of your GitHub repos. One of the first things they see is the content of the README. Yet most developers simply leave the default content created by "Create React App" untouched.
What a wasted opportunity.
Instead, give some information about your app. Write about your technical decisions. Lead the reader to the most important code.
It can be hard to write your first READMEs, I know. So if you want more information here is a guide to writing READMEs that impress hiring managers. You can also get a template there.
When you apply for a job your resume is the first thing anyone sees of you. Let me point it out again: The very first thing.
This initial contact is likely a recruiter or someone from HR. They will decide within seconds if your resume goes to the trash or if it is worth spending more time on.
I hope you get the importance of getting your resume in order. Without a decent resume, nobody will even look at your portfolio website or your GitHub projects.
Despite its impact, many developers seem to spend a very limited amount of time and effort on their resumes. At least judging from many of the resumes I've seen so far.
Here are my most important tips around resumes.
If you want more information here are some simple tips from an experienced hiring manager that can help you create a standout resume.
Now you know how to write a resume. But what about the content?
Many of the best and brightest engineers I work with don’t have personal websites or they are heavily outdated. Websites are interesting but I prefer a resume with project information, project links, open-source GitHub activity.
Team Lead at Elastic
Obviously, your resume should include all the relevant facts about your personal data, work history, experience, and education.
If you don't have professional experience as a dev yet you should mention your GitHub projects instead. The same is true for any open-source contributions.
To make life easier for the recruiters or hiring managers, add links to your projects (source code and deployed version). If you have any OS contributions link them as well. For example, by providing links to the Pull Requests on GitHub.
The results of the survey are clear: The majority of the 60+ hiring managers who took part would look at your portfolio website. But looking at your chances of getting a job we can say:
It wouldn't matter much if you didn't have a website at all.
If you want to build a portfolio website anyway, make sure that it looks great and is maintained. It should be responsive. No broken links. No outdated data.
But be aware that it can take a long time to get everything straight. A portfolio website can become a huge timesink.
So maybe it's better to pick one of the alternatives mentioned here:
Each of these will have a bigger impact on your job hunt than a portfolio website. So invest your time wisely.
Illustration in social media preview based on drawkit.io