Disclaimer: professional in this case means making a living as a web developer.
This is a question I asked myself and discussed with other developers over my career multiple times. It seems like most web developers have at least one private side project ongoing or they are planning to.
For me personally I also felt some need in the past to have a side project because all the cool kids I follow on Twitter have some and they have fun with it and are successful, at least that is what it looked like for me. And I wanted to have fun and be successful too.
If you were on the job hunt in the last years as a web developer or talked to some devs that were you might asked yourself the same. It often even feels like if you do not have an open source (e.g. GitHub) account and add that to your CV nobody will even look at it.
So that specifically developers that are new to the profession get the feeling there is a need for private side projects to become and stay a web developer, is no miracle to me.
From my experience, after more than 10 years of software development, private side projects are not a good indicator if someone is a professional web developer. Over my career I had years with and without side projects and I wasn't the only one, even the cool kids take breaks from their side projects.
But I will say that private side projects can be quite helpful if you want to improve your coding skills or want to get into some new technology because you can do everything on your own terms.
They are no requirement though.
And please do not forget there are web developers out there which do not have any private time to spare for side projects and this does not make them any less a professional web developer.
What are your thoughts and experiences with this?
Top comments (27)
I think the short answer is no, with a very large asterisk.
You can get a job without side projects, but they sure do help, especially since they're becoming such a huge part of tech hiring culture.
Side projects are like if you had to show your work on your resume. If an employer is looking for React proficiency and your portfolio is built with React, that's your skills speaking for themselves. Having clean repos with good commits shows some of those softer tech skills (we've all tried to decipher a teammate's bizarre commit message). These projects can also help you in your job when adding a new feature or tech - "I've worked with this before in my project, I can handle it!"
On the other hand, not having side projects doesn't make you any less of a developer. I don't have any side projects right now; I work full time as a developer! If anyone tried to tell me I'm not a real developer because of that, I'd scoff and send them back to 10X land. A mechanic is still a mechanic, even if they don't work on their own car.
Overall, I'd say side projects are important for those looking to break into the field as juniors, especially coming from nontraditional education backgrounds simply because there is so much weight being put on them right now. And if having a lush and green Github graph saves you from one interview whiteboard, then that's a win.
Do you need to?
Absolutely not. In fact, I think people put too much weight on them when talking about applying for jobs.
I think they can help, career-wise, when you don't have much professional experience, but most companies are going to see that you did a year here, a couple of years there and so on and talk to you in an interview anyway. Side projects "for show" run the risk of making people overly critical of you before they even get to the interview stage. People love to pick holes :)
On the other hand, if they're projects you genuinely want to do, and you have the time (i.e. they're a hobby) then go for it. Challenge yourself. But don't let failure in your personal projects make you question your professional ability... or vice versa.
It doesn't hurt. I had a small number of well done side projects when I interviewed, and people told me after I got hired that it was one of the reasons they wanted me. They said it felt like I was passionate about coding vs looking for a job. That being said, I may have gotten the position either way. I think the question for me would be, is there a reason not to do side projects?
Course if you have years of experience, I think it becomes less important in terms of interviews
I don't think so. As you mentioned, people have very different lifestyles, and starting having a side project as a requirement for the role of a web developer doesn't feel right to me.
There's one aspect though where I think having a side project could help you during a job application for instance which is the possibility for the hiring manager to take a look at your project and understand how you write code, how you deploy it, what have been you playing with lately, etc. For this purpose, I find side projects interesting, but I don't believe they should be a requirement for dev jobs.
I see what you mean but I also think it's a double-edged sword.
Some of my side projects have a terrible style because I was playing around and wasn't taking it too serious. If a hiring manager would see those they'd probably never invite me.
When I'm interviewing new candidates I'd like to see side projects as a possible point of discussion but not as an indicator how good they are.
Sure, I agree with you on that. I'd also see these projects more as an opportunity to discuss technology, approach, etac. I'd also not judge how good a dev is just looking at side-projects, for sure. :)
The short answer: Absolutely not. But if you do then you'll have a clear advantage.
The long answers complicated and full of disagreements and arguments, but the way I see it is that if you do choose to take on side projects it gives you full ownership of something, which forces you to look at a project from all angles. Be it planning, development, delivering within a timescale, etc.
Then theres the obvious benefit of more exposure to coding and trying out things you might not get to do in your daily job, which gives you a higher chance of discovering new and better ways of working, with new tools, methods, etc which you can then bring into your day job.
The effect that ownership of your own project has can't be understated. Over time it helps with all sorts of things, from general knowledge of a whole project to things like debugging and figuring out how not to waste a day fixing a 2 line bug.
So while you don't need to, and should never feel pressured into doing it, it can help if it's something you enjoy doing. If you see it as a chore then it'll likely just cause burnout.
I personally don't have many finished project. I love thinkering with new and excited tools until I'm done thinkering. I have a full time job where after a work day, I'm tired and during the weekends I spend time with my partner doing other fun stuff. Once a month I pickup a framework or library to play around with. But I never force myself to finish a project, unless I feel passionate about it of course!
I do have some private long term projects where I work on when I feel like it. These are projects that I personally would use, but because of my work, I do not feel like I need to finish it NOW.
I think something like this could be a great description during an interview. Letting them know that you actively start/create projects as a means of learning new technology. They're not full-fledged projects- just opportunities allowing you to keep growing and learning. If you can talk with enthusiasm about what you've learned by working on them or what you might want to try next, you'll certainly impress.
So I'm going to agree with Erica below me, but with a twist.
I think the short answer is yes, with a very large asterisk.
This topic came up the other day when my colleagues and I were interviewing a candidate with no side projects. For me, it was something of a red flag, but for the others, it wasn't. If you have a long list of full-time work, I wouldn't expect you to be devoting much time after hours for more projects.
However, if you are just starting out, side projects will definitely set you apart from other candidates. We love looking through GitHubs and seeing fun projects.
One of the questions I often ask in interviews is, "What are you learning now?" or "What do you want to learn next?" People with side projects consistently provide better and more interesting answers.
Side projects show me that you're committed to continual learning and demonstrably interested in technology. Even more, if you're passionate about a project that excites you, it's thrilling to listen to you tell us about it. When you have candidates with equal qualifications, I've regularly seen the candidate who spoke with enthusiasm about their project receive the job.
If you don't have time for additional projects, I'd at least recommend taking time to stay on top of what's going on in the industry. Subscribe to newsletters and dedicate a little of your time to keeping current about trends and emerging tech. Maybe have an answer ready about the kind of side project you'd like to build (with tech stack details) if you had the time.
Thanks for taking part in the discussion Kimberly.
You confused me for a second because it seems you and Erica are not on the same page, she said no with an asterisk and you said yes with an asterisk. 😁
Form me you made some good points here and I also love to see the passion when I interview a candidate.
From my point of view we (devs doing interviews) need to be careful though that we don't accidentally create a toxic hiring process.
Erica said it quite well in her post: "A mechanic is still a mechanic, even if they don't work on their own car."
Our area is one of only a few where professionals are almost required to improve their skills constantly in their private time and that puts a lot of pressure on us and even more on new starters.
And I think if we (devs doing interviews) should work against it. That was one of my motivations to write the article above.
I definitely understand the confusion. I loved Erica's answer and agreed with a lot of what she said. I think the details were in the asterisk :D.
I appreciate your perspective that expecting side projects may create a toxic hiring process. I hadn't thought of that before and it's a really good point.
Some of the other questions we sometimes ask are, "Is there technology you'd like to learn more about" and "tell me about the favorite thing you've built - either professionally or personally or in school". Maybe these are better ones to lean on that capture the same information: whether the candidate has a GROWTH mindset and likes what they do.
Thank you for sharing your article and your motivations behind it.
I'm going to talk from the perspective of a software developer in general, not a web developer in specific. Side projects do help improve your skills but they're by no means a mandate and there are definitely other ways to hone your skills.
As everyone else has said, short answer, "no, but it helps". From a hiring point of view it makes the decision much easier when you have a point of reference for what someone can do/has already done. If you don't have a portfolio of some description it's much harder to convince potential employers of the high quality of your code, particularly when you're very early in your career. Not sure about elsewhere, but a lot of roles here in the UK stipulate 'salary up to X depending on experience', so the more you can do to demonstrate that experience the easier it will be to justify starting on a higher salary.
That said, everyone's situation is different and employers are seemingly recognising that more and more - and also recognising that non-tech skills are just as important as the actual coding skills in terms of the perspective they give you. Posting on here doesn't hurt either ;)
I feel like this post, as well as a number of the comments, are conflating very different things. Becoming a dev and staying a dev are two very different things, as are portfolios, side projects just for fun, and side projects for pay.
The entry- and junior-level web dev job market are currently extremely competitive and oversaturated in many (maybe most?) places right now. Many people are reporting a year plus long job searches while trying to get that all-important first dev job. Those folks are going to be at a severe disadvantage without a GitHub full of projects for a portfolio. It wouldn't be a stretch to say they need side projects. You can't compare the market of a decade ago to what's going on now.
After getting that first job and working a few years, no, at that point you do not generally need a portfolio, nor do you need fun or paid side projects in order to get new jobs or continue advancing. At that point your work should speak for yourself, unless maybe you are trying to get back into the market after a long break; I think at that point a portfolio is again necessary to show you've kept updating your skills.
Thanks for pointing out the difference between applying on entry-level vs more expirienced level.
I can understand that most on entry-level feel they need to have a good portfolio of side projects. As you well described there's pressure from different angles.
For me as someone who is from time to time part of interviewing processes I've asked myself how fair it is evaluate someone based on their side projects and I concluded for myself it is not at all. Not all entry-level devs have the time to create a good portfolio of side projects, one reason could be because its a career change.
Since then I'm only using the side projects as a topic to talk about but not to evaluate coding style or anything similar.
I know that view is not common (yet) but I hope with discussions about this topic it becomes a bit more mainstream.
I agree, it's not really fair to require everyone to have a huge portfolio and I don't personally require this of candidates either. But listening to people who are on the hunt for their first job, it seems like most employers are requiring more and more out of entry level candidates. It's a huge problem with the industry right now in my opinion. Seems like many candidates are going to be entering the field already burned out, the way things are going.