Why are you trying to impress recruiters? I mean, the entire point of the post is wrong, but impressing recruiters is downright stupid. Let's be frank: recruiters are bottom-of-the-totem-pole, lowest-common-denominator, bottom-feeders.
If you aren't trying to do your own thing (which, let's face it, is the most exciting prospect), at least try to impress CEOs or product managers, or -- my goodness -- at least hiring managers. I heard a fun anecdote of Evan Spiegel attending an LA hackathon maybe 6 or 7 years ago. Some nerdy engineer showed him that he figured out how to get around Snapchat's spam filter. Spiegel offered him a job on the spot. Could a recruiter ever do that? Hell to the no.
My friend, this isn't personal, but a fact: you're privileged.
I sense you've never been in a position where you have $3,000 in the bank, your wife is depending on you to get through college, and you have to get a job or you lose your apartment.
Out here dropping stories about Evan Spiegel; gimme a break. Most people don't know any CEOs, PMs, or hiring managers.
The funny part is, I agree with your premise. You are indeed presenting the best way of opening doors. It's worked for me, and has opened many doors.
But only when I was in a better position. Till then, it was one of the worst things I could have done. Focusing on playing the hiring game would have put me in a much stronger position.
The comment you made is slightly out of touch. There's nothing wrong with that, but I think you'll maybe look back on it in 10 years or so with a wince.
In the situation I described above, where you absolutely need that job, all the people you mention have a good chance of forgetting about you due to day-to-day politics. Guess who won't? That recruiter. Because they get a cut of your salary.
Oh man, only if you truly knew how off-base this is :) My parents moved to the US with $2000, two kids (I was 11), and two carry-ons. But I'm not here to compete in the Victim Olympics.
> Most people don't know any CEOs, PMs, or hiring managers.
Good thing attending a hackathon is free. Good thing you can interact with literal SV royalty here on HN for free. Good thing you can contribute to famous OSS projects with minimal investment...
> In the situation I described above, where you absolutely need that job, all the people you mention have a good chance of forgetting about you due to day-to-day politics. Guess who won't? That recruiter. Because they get a cut of your salary.
Yeah, I disagree with this. I've been "forgotten about" and "ghosted" by more recruiters than I can remember. Not to mention that half the time my area of expertise wasn't even lined up with what they were looking for, and as soon as they hear about a potential pivot (front end to back end, engineering to product management, etc.) they jump ship. But people I've impressed (old bosses, old PMs, people I met through hackathons, obviously old founding partners) are always willing to come up to bat.
The whole point is that impressing these people is _pointless_ because they'd be impressed by a snow globe and mostly know nothing about tech. They're just a roadblock between you and the other technical people that you have to go round.
Everytime I ear people here bashing recruiters I feel the urge to shout: It's not about you it's STEM. Enjoy your prized ticket but be humble.
When I was at my lowest point I was delivering sushi rather than waiting for a job that would look good on a resume. Most of the people in desperate situations like that aren't (don't have time to be) padding their resume with side-projects, and therefore aren't the topic of the original argument.
I drove from PA to CA when I was 18, working along the way on my own business, and got a job in SV on my third interview as a "software engineer" making 65k. Bottom of the barrel coding job.
I'm somehow privileged now? Because I worked literally every day from the time I was 17 in high school until I got a full time job. Right.
You don't need to know them personally. Most companies (small companies at least) post job advertisements on their website and you can apply via email or a simple application form that goes directly to the hiring manager.
I managed to get my first dev job with zero professional experience (and I mean zero, I'd literally never worked any job before), zero "networking" activity, and only high school qualifications using this method, and it's only gotten easier since then.
“The fault, dear Brutus, is not in our stars / But in ourselves, that we are underlings.”
Your implication is precisely that recruiters are useful as a last resort. Wisdom beseeches to avoid decisions where that becomes necessary. Where, clearly, the recruiter is just using you and you are using them as a stop-gap measure.
Yet wisdom is considered privilege now?
No matter how we feel, the process still goes through recruiters.
In a company I used to work for, we built a way where we removed the company and uni name to remove biases from recruiters. Most recruiters flat out refused to use it and trust us because they considered that a very important signal. The decision is not upto just developers.
> I heard a fun anecdote of Evan Spiegel attending an LA hackathon maybe 6 or 7 years ago. Some nerdy engineer showed him that he figured out how to get around Snapchat's spam filter. Spiegel offered him a job on the spot.
I am sure we will all have our anecdotal examples like this and I am not against side projects. I agree with the post author that side projects are great, but don't expect them to count towards your next job. If they do, then great.
That's right and they simply look for keywords on my various online profiles and send me the standard "I'm really impressed by your experience, I think you'll be a great fit" message, even though 50% of the time I'm clearly not a great fit. Why do they get this wrong? Because they are "are bottom-of-the-totem pole, lowest-common-denominator bottom-feeders" to quote the parent post...
PS - I wish it weren't so.
Does it? Idk, maybe it’s because I’m not a SV SWE, but I’ve found all my jobs through my network.
There's a pretty simple flow chart for getting hired at a bay area company:
1. Go to MIT, Stanford, Cal, an Ivy, or CalTech and make sure you have linked in.
2. If 1 isn't possible then make a friend who works where you want to work and get a referral.
3. Cram leetcode
That's basically it.
Don't give up doing side projects and things you actually enjoy because that's how you learn.
I think you're also overly harsh on recruiters (they're not 'bottom-feeders'), they're friendly and can help you out - but they're just looking in a very narrow subset. Basically the graduates from those schools and people already employed at FAANGs.
This is also true, fwiw, of how I recommend switching teams within a company. Go sit with them, see what they're up to, establish a mutual fit, then ask their manager to sort out the transfer with your manager.
Well that's not entirely true, I did finally get an offer last week but it was downgraded from the advertised offer to "let's try out 3 months contract first".
At the start up I interned at during the beginning of my career, I got the interview and the job because I knew one of the developers. Every other job has been bog standard: apply , talk to recruiter, do phone screen, do onsite.
Recruiters are just people just doing their jobs. It's a shame that you've labelled a diverse group of people so heavy-handedly.
I don't know whether this is a flippant answer... but to get a job so they can eat.
Assuming he's in France, by "recruiter" he means company recruiters / HR. Your CV and first phone interview always go to a recruiter at the company, that's the first person you have to talk to (and impress) to have a shot at any job.
American might understand recruiter as an external agency, there's no such thing in tech in France. There's no CEO/CTO either, they are sitting idle out of sight collecting money never interacting with the company or any employee.
This reads like an overly pumped up alpha macho business guru telling his disciples how to "crush it".
I’m not going to go through and read a bunch of random code by myself, when I can just ask a couple of questions, and get the same information quicker. They are just too many resumes to read.
Seriously, all side projects tell me is that you spend your free time coding, instead of hiking, or some other hobby.
Also the higher your position the less side projects matter because it's your main job responsibilities and performance that's in focus, not what you do on your own time.
But for a lot of people, recruiters reaching out or applying through a portal is the start of many new positions.
Yeah, they are. They're also how most people find jobs before we reach the career stage of being able to call a friend who knows a guy who works at a place.
Secondly, Bottom of the Totem Pole is actually the revered position[1]. Bit of an amusing cultural knowledge oversight on the OPs side ;-)
[1] https://en.wikipedia.org/wiki/Totem_pole#Meaning_and_purpose
Yeah, I program at work, but the tasks I get at a software job don't scratch the itch that got me into tech in the first place. Just like how most workers in "creative" fields don't get paid to do the interesting things that first attracted them. They're stuck using their arts degrees to write marketing copy instead of their dream novel, or they became a civil engineer to design inspiring architecture but their day job is trying to update someone else's vision to include the safety features the designer didn't leave room for.
I get that lots of people get their fill of technology at their job and don't want to see a screen when they get home. Live the life that makes you happy. I'm just boggled at how many people appear to find it unimaginable and unrelatable that a technologist likes technology enough to mess with it for fun, even after work.
It's not that I can't understand it. I don't have that urge personally but I can see where it comes from and if that makes you happy go for it! The reason I personally get so defensive and anti side project is because as someone who's very defensive of their non-work time (due to spending it on other productive hobbies that bring more joy into my life than anything else) I've experienced a lot of colleagues/managers who have tried pressure or belittle me into doing side projects. It's been implied that I'm not a 'real' engineer or that I can't be successful in my career if I don't. And frankly I resent that attitude because it's bullshit and it tries to take away time from the things that make my life truly joyful.
As you say do what makes you happy, side projects or not. Unfortunately a lot of folk on the side projects side don't/won't accept them as optional if you want to be seen as a competent engineer.
Out of all 9 members of my current team, the only ones I can remember ever talking about any side projects are the dev manager, who is obviously addicted to setting up tech stacks like he did when he was a developer (we recently compared notes about our experience using prometheus and grafana on home servers, for example), and one guy whose side project is a heavy metal band. Everyone else? Nothing I've been told about. Maybe they occupy their time with being a parent, or SCCA racing, or mountain climbing, or building dollhouses; I don't know and it's not really my business.
I think there's a lot of value in being able to confidently say "yeah, I've got different hobbies <shrug>."
Two of the best engineers I've ever worked with did basically nothing on the side that resembled a technical side project. The worst engineer I ever worked with also did no side projects. And I knew brilliant engineers who were big into things like the Hacker Cup or aerial robotics, just for fun. It's tempting to think that if we ourselves are competent, people who act similarly must also be competent. But the longer my career goes on, the less weight I place on seeing someone does or does not do side projects.
If that results in skills useful at work, or for finding work, that's a nice but entirely secondary benefit. The more important benefit is burnout prevention - because I too "don't get paid to do the interesting things that first attracted" me to software, or science and technology in general.
> I'm just boggled at how many people appear to find it unimaginable and unrelatable that a technologist likes technology enough to mess with it for fun, even after work.
Me too. I sometimes wonder if I'm not missing out, but try as I might, I don't enjoy the "normal" stuff as much as I enjoy intellectual stimulation. I also sometimes wonder if this isn't because my eyes just don't get tired from screens. I can look at computer screens 16 hours straight, and my eyes don't get dry or itchy. I had co-workers who had to use saline drops at work, and I can understand if they didn't want to look at any screen when they got home.
I enjoy going hiking or going swimming in a lake or river or going to movies with friends when that was still a thing, but it's mostly experiencing, whereas programming side projects is creating. I much prefer creating over experiencing.
I don't have the eye fatigue, either. My hunch is it's because I turn my display brightness way down, down far enough that coworkers insist they can't see my screen when I show them something. It seems like colleagues keep their screens near full brightness. I could imagine that being tough to look at all day.
I realize that's also a personal problem - poor time/resource allocation - not allocating a proper amount of time/energy to work vs. personal projects.
However, I can say, doing a full time, involved job and giving it all my attention tends to use up all the cycles. Is that true for other people too?
One thing I've been doing for the last 2ish years is having side projects that are really far removed from my work. So for example a lot of my work is infrastructure automation and related problems, so I've been doing some side projects learning basic electronics and hacking on microcontrollers. Figuring out why my I'm getting weird readings on a temperature sensor is a great break from figuring out why my load balancer didn't do the right thing.
> I'm just boggled at how many people appear to find it unimaginable and unrelatable that a technologist likes technology enough to mess with it for fun, even after work.
I do get their point though, they feel bad because they are not one of those. But that's just the way things are. There aren't many people who got into tech because they REALLY like it. Not because it's a "good" job or because it's the lesser evil.
And by that I don't mean the people who only code at work or learned about tech later in life are bad developers, not at all. Nevertheless, they are the vast majority and they are quite different than the passionate young kid who codes for shits and giggles. It doesn't help than they are socially pressured to be like that. They end up hating it. Like when you have a brother/sister that is better than you at something and your parents always say "WHY CANT YOU BE LIKE YOUR BROTHER/SISTER".
I think that was kind of the beginning of the end for the golden era.
There's a point where it's not healthy. It'll catch up with you and there's a danger you'll find yourself not having the enthusiasm to do your hobby projects and also your real job.
How else are you suppose to learn different parts of the stack when you're (usually) only hired to work in one part? How are you suppose to learn DevOps/CloudOps unless you're on an Ops team?
Many (most?) companies don't delegate full stack responsibilities to individual teams.
A learning project is a project you're doing with the express intent of learning a new technology. The focus is on the learning, not the delivered functionality.
A side project is a project you're doing for the community. It's a labor of love. The focus is on functionality and meeting the needs of your users, not learning technology. You may even be able to grow it into an actual business.
From a career perspective you want to focus on learning projects. As you've mentioned learning projects are very important for your continued learning. Side projects on the other hand have the risk of distracting you from your work and my advice would be to avoid them unless you're scratching your own itch or maybe even want to explore starting a side business.
Bottom line - be clear with yourself on what you're doing and why you're doing it.
In the business world, delivered functionality matters.
I think building something for the community that the community actually uses teaches you a lot about product management and building reliable systems and designing products people want. You learn a whole lot about the reality of the industry by doing something purposeful.
There's a big difference, for example, in machine learning engineers who can train a model in a Jupyter notebook and an engineer who can both train and actually deploy a model like that on a self-driving car. Companies often very much appreciate having dipped into the practical aspect of things, where things like optimization, uptime, and consistency matter.
Also, building things that give you a feeling of success make you more driven and motivated to learn and improve. Sometimes having a thousand users is that feeling of success that is the driving force for more learning.
- learning project (focus on learning)
- side project (focus on functionality)
- cv-enhancing project (focus on optics, what the original article was mostly about and against)
In my experience, side projects are by far the most fun. All of the learning projects I've done in the past had some goal to achieve, something I could show someone and feel proud. I find it difficult to learn just for the sake of learning. Perhaps this is why I struggled with schooling.
One job I got because my side project was a finalist in a contest and was shown off at a convention my employer attended, and they called me as a result and brought me in for an interview.
Another job interview, I kind of stumbled on their programming test, but I was able to show something I made on the side, and that convinced them I knew enough to give me a week and bring me back in, and I refreshed my knowledge during that week, and I aced the test the second time and got the job.
My current job is at least in part thanks to those side projects I worked on in the past. And my side projects I'm working on now are giving me skills that I am not gaining at my current job, and will hopefully help align me with my next shift in my career (and if not, at least I'll make a few bucks and some people will enjoy the product).
If you're doing a huge career change, side projects may be your only way. But most companies (in my experience at least) recognize the value in having their application developers understand some Ops work, and vise versa.
Many (most?) companies won't entirely "firewall" you from other groups. Even if you're throwing an application over the wall to ops, there's usually opportunities to learn from them, help out on specific tasks, etc.
That said, learning at work is probably _better_, but I do think side projects with a specific goal (e.g. to learn a technology) are a valuable supplement.
If I had joined a good company and focused on that, I would still be comfortably building web services for them like I learned to in school, and I would probably continue doing that indefinitely.
That's fine, it's a nice salary, but it was also boring and soul-crushing. When I started to see the damage wrought by mass-scale social media, my side projects made it easy for me to transition into a much more interesting but specialized field that I saw more of a future in, and that has worked out great.
The author's main complaints seem to involve recruiters and the poor value proposition of shallow projects. But if you have deep projects and poke your nose around the industries that you're interested in, you won't have to deal with recruiters, and you'll often be able to avoid the technical side of interviews entirely. Talent is very scarce.
Although, I write this from a USA perspective and I notice this is a .fr domain; the labor markets and hiring practices might be very different.
Then after getting sick of front-end/design I started coding back-end side projects and taught myself enough to ultimately get hired doing CMS development. Then same again to get into Sysadmin, after running game/file servers as side projects. Etc etc...
Five distinct career changes/upgrades over ~20 years inside IT, all thanks to building stuff I wanted to build for fun and that impressing the right people to get me hired. The only IT job I've ever gotten through working my way up in a company was the last one, into Project Management, and that was only due to the breadth of skills I taught myself throughout the years... on all those side projects.
If I didn't do side projects, and didn't always strive for more, I'd still be running/packing cables for concerts and working 20 hour shifts for barely enough money to survive.
If your goal is career advancement, then it is fair to acknowledge that some projects won't be useful for that. But there's plenty of other reasons that people work on side projects besides just career advancement. "Just for fun" might be the most famous reason, that is I believe how the Linux kernel started.
While maybe big companies won't value side projects directly too heavily, there's still a good chance that if you learn new things and try to build interesting stuff, that it might open new doors in all sorts of unexpected ways. But there's no guarantee.
I also think that full time coding jobs can be a lot of work, and people shouldn't feel too pressured if they don't want to have side projects, because they have other things like a busy family life or non-technical hobbies. But for many people, programming can still be fun and interesting, especially outside of the usual corporate routine, and that's all the motivation they need to pick up a side project. That to me is really what a "hacker" is, not a leetcode grinder climbing the ranks at FAANG.
Systems programmers have different experiences than web developers who have different experiences from ML researchers. Things that benefit junior Ruby devs may make no sense for a middle aged, embedded dev working for the defense industry.
There are people who benefit greatly from side projects, and others who should never bring them up in an interview. I don't think anyone should be significantly swayed by the arguments I've seen here so far. Know your situation and react accordingly. Don't lose sight of the complex world of software and how many times the experiences of others only apply loosely, if at all, to your situation.
I mean, I believe many people don't have side project and still have perfectly happy life.
Just to clarify: I founded a company a few years ago from a side project I had started three years before, and this year I released two projects, so I can say that I love side projects. I simply regret this tendency to start so many shallow side projects (which are little more than tutorials) just to build a portfolio instead of focusing on creating something really substantial, or something that at least you really like. It's a waste and an illusion to think that it could help to be hired. I know too many developers stuck into this pipe dream.
I'm constantly commended on my side projects, and I excel at them because I enjoy them:
- https://www.youtube.com/watch?v=x034jVB1avs
- https://www.youtube.com/watch?v=5XTi-jf-ans
The laser stuff made me wealthy, and that wasn't even my intention. People at the time told me it was a huge distraction from my academic career and a waste of time.
My current side project is a real time voice converter (like Mission Impossible).
Follow your passion. You'll deliver better results and open lots of doors.
Your side projects will also usually be pretty novel. It's fertile ground for startup material.
P/S: Small typo on the first sentence on the about page.
And thanks for the bug report too :)
awesome project though! How did you build the voice encoder for each character?
I work at an A-round startup. Tons of people in FP&A, sales, accounting, and HR get promoted every six months. Engineers rarely get promoted. No refreshers. No raises.
Guess what? Engineers are now clocking out at 4pm, they are working on side projects, and it is the most rational thing to do.
On the flip side, I've worked at places where engineers are rewarded regularly for outstanding work. It makes sense to focus on your job.
On size advice does not fit all.
He is so much right here. Recruiters don't have the time to go through and understand your side projects, for that matter even engineers don't. Most interviews are 45-60 mins, you need to scope your interview such that the process remains same for all candidates. If someone is just beginning out then side projects matter a lot but for hiring experienced people, most won't care about side projects unless they got significant traction.
Also, it is incredibly hard to judge side projects. Sure, I can go through your Github repo if it is open source, open 2-3 files to see code structure, see the automation suite you have setup but unless the project was complex there is not much to talk about. For experienced folks, there are other metrics you need to gauge them on which are absent in hobby projects.
It doesn't mean one path is right or wrong for a job (I know many people who switch back and forth between bigcorp and startups), but if you only see BigCorp experience as status seeking/soul sucking experience, you're missing a huge part of the picture.
If you’re young and believe in yourself more than society’s ridged idea of credentialism has don’t be afraid to buck the trend. I failed out of a mid tier college. And while my 20s has my been a stressful hodgepodge of jobs I was under qualifying for. A public track record of my ability to create something with emerging technologies has always meant someone is willing and excited to work with me.
If you want FIRE, the best way is to optimize your career. How do you do that? It starts early before your first job, as you try out different school subjects, books, friends, hobbies. As you look out to the future, what do you see on the horizon?
Thinking about the time I entered school, programmers were near the bottom of the totem pole. Mathematicians were trapped in academic ivory towers. Data was barely used as the alpha bros of finance dominated the talks of high compensation. The most sought after jobs did not even exist then. Youtuber, data science, deep learning, cloud computing, analytics, ecommerce, cryptocurrency, even professional video gamer were not real careers.
Increasing revenues solve all problems. Jump on the waves of industries that are booming and will continue to boom.
The world and culture is constantly changing as we march towards the future. Put yourself in a position to succeed by learning the fundamentals needed to pass interviews and recognize when something seems obvious to you but not to everyone else yet.
There is some interesting stories of how people achieved it here: https://www.reddit.com/r/fatFIRE/top/?sort=top&t=year
In this dynamic world, one need to constantly assess their career.
In my opinion, it depends on what your career goal is and what you want out of life.
If you are in a position where you use a technology you don't like or work on projects you don't enjoy, a side project on the weekends can be a way of addressing the gap. Not everyone has the chance of joining a great company.
It also depends on what country or continent you reside in. It appears that in American culture, side projects are actively encouraged; A couple of silicon valley companies have come out of side projects.
A different argument can also be made that doing multiple side projects would not make you a better programmer. Our culture tends to focus on quantitative factors for improving skills rather than qualitative factors. What if rather than doing side projects, one changes ones attitude in their current job? An excellent article on qualitative factors on excellence can be found in https://leveragethoughts.substack.com/p/what-is-excellence
As a French having worked in Germany, Canada and New Zealand, I can say that the recruitment process is very different in other countries, where side projects and open source contributions are really valued.
In my opinion, his article should mention the geographical setting of his experience, and his advice should only apply to people living in France (and writing the article in French may have been more appropriate too)
My experience has been different than the author. I suffer from pretty bad anxiety, which doesn't exactly come in handy during interviews and coding challenges. Side projects have been a good way to talk deeply and technically during interviews about concrete problems that I've worked on because I can't show a potential employer code I wrote for someone else's company.
That said, I think there's limited value in showing an employer the product of some tutorial, but side projects that came from my brain alone never hurt in an interview context, and almost always helped.
It is going quite well (I am nowhere near making the same money). Just 2 of us at the moment. I've learnt so much over this period. Like what you would get over 10 years in a big tech company while jumping over all the hierarchy.
Moreover, my very first side project turned me from a guy who knows only Python into a guy who can set up entire architecture on the cloud. Later, I became somewhat a "rockstar"/jack-of-all-trades engineer.
But I agree, unless you do your side-project just to do something then it is your hobby.
My advice would be: someone has to pay for your side project's product/service. Because only then you can show that it generates real business value. This is the only thing which should matter to your future employer. You generate business value.
That's what I'm missing ATM.
However, if it weren't for side projects, I would never have learned Linux, virtualization, handfuls of programming languages, or so many other things I ended up bringing into my 8-5 job.
Sure, if you do a good job with your employer, you will build reputation. But so do side projects, speaking at developer conferences and going to meetups. Build your network!
It's not every company or set of interviewers, but there are lots of interviewers and recruiters who don't care at all about your side projects. I've done plenty of interviews, and don't really ask about them much, or really have time to check them out in any detail before the interview.
Lots of tech meetups are also jammed with aggressive recruiter-bros and newbies who need a paycheck and aren't all that interested in tech. Keep your expectations in check for finding good employers or employees at them.
For side projects, I wouldn't say not to do them. But don't do "hello world" level side projects in a trendy language in the expectation that anybody will care or it will get you a job. Do a side project to accomplish something that you are actually interested in. If you don't feel like it or don't have any interesting ideas, then by all means do something else instead. Half-hearted projects to fill a perceived recruiting checkbox definitely won't get you anything. Doing something interesting, or even doing something kind of boring in an interesting way, might help. Or doing something and taking it into Production enough to feel some of the pain points of maintenance, uptime, marketing, etc.
Is the same true for educational backgrounds? If you don't have an Ivy League degree, what methods can you use to put yourself in the running vs those that do? Side projects seems like a good option in both cases to appear competitive.
My side projects have opened a lot of doors for me, particularly they have enabled career switches. I'm a B2C product manager, was interested in moving to B2B and was ignored until I launched a small SaaS side project (B2B vs B2C PM is considered quite different.)
But the theme of this article is true, recruiters don't care and you should focus on enjoyable side projects.
> ” As we all know, the interview process is broken.”
I don’t know how the author conciliate these two opinions.
Other than that, I agree that being hired by a FAANG company is better for your career than any number of side-projects. The problem is that I don’t think I will ever be hired by a FAANG company (as many many many others). It is not about not wanting to focus on leetcode and Cracking the Coding Interview (and I don’t), but my resume would be rejected for sure much before that stage (as a self-taught developer with 41 years old and a degree in Eocnomics from an university in Brazil).
As an applicant, I can speak in great detail about any of my side projects, discuss any design decisions, trade-offs and compromises I made. Personally this usually involves some interesting trade-offs made on personal projects to optimize for AWS bill, vs decisions I'd have made at any company where a $100 /mo bill wouldn't even register as a line item on a budget. It also is a great way to differentiate yourself if you're trying to make a move from eg an Enterprise Java B2B company to a consumer-facing SaaS startup using $NEW_TECH.
As a hiring manager, I can see the candidate isn't being challenged enough by their current job, or they had a curiosity they wanted to satisfy outside their regular hours. Either way it shows initiative and a hunger to learn, both of which are good signals. Usually when people are talking about these projects, they are passion projects and you get a good feeling if somebody actually likes programming, as well as hints towards what specifically they find interesting. Did they spend 10 minutes talking about progressive enhancement techniques and bundle sizes? Did they talk about user feedback? Or maybe they focused on CI/CD, auto-scaling, or API design choices? This to me is far more useful than "Worked on team X and performed assigned tasks Y, Z".
As a person trying to break into the software world to get a software developer job, I feel like side projects are the only thing I can show.
My side projects include:
- An Air Quality Monitoring Dashboard
- A leaderboard app built with redis
- A WebGL globe to show live wikipedia edits
- A web service to scrape any number of GitHub stars from any number of people
- A node.js app which extracts 1 second of footage from your media library, and combines it into a '1 second everyday'-style video
- An audio reactive image slideshow from instagram selfies
- A visualisation dashboard to show stats about your blood from some diabetes bluetooth thingymajig
- 3D renders of popular logos, like the GitHub logo
- An Alfred workflow app to trim X seconds from the currently playing video from VLC
- A script which downloads the top 250 websites to your drive, so you can then run other scripts upon them, as often as you want, without getting blocked
- An augmented reality music website (where you can use the webcam to control audio)
I'm really grateful I'm able to do such things and have no intention of stopping.
> I don’t want to make this blog post a rant against side projects. In fact, I’m advocating the exact opposite. Continue to do as many side projects as ever, code on nights and weekends if you want too, but don’t think about how they could be useful to you to get a new job.
IMHO, that's over-doing it, but fairly on target. Like dating, one wants to be an interesting person. Your projects, to me, demonstrate that you are an interesting person, but as per the topics of collaboration & communication that the author starts with, while yes I want to work with interesting people, it's not what I've found to be the primary nor even all-that-distinguishing characteristic of hirees. Somewhat sadly; keep hacking! ;)
So side projects or even real projects that are used by millions are literally meaningless.
Study LeetCode instead to get a job and focus on your job at work.
If you think things like LeetCode makes you a better programmer then you only show how inexperienced you are. You can know a lot about theory and algorithms and still write shitty, unmaintainable code.
Yes, I think it's really limited in utility. But it can offer some insight into how quick and flexible you are generally speaking.
My first impression is you can do a quick DFS recursive function that does a swap (can prolly use xor operator) on the left & right pointers
I just think it's important to not classify all projects outside of your job as "shallow" side projects, and then completely discard them career wise like the article seems to be doing.
"Forget side projects and focus on job" sounds as terrible as the opposite: "ignore your job and just send time on personal interests"
It is my experience that most recruiters are superficial to the point that unless they received instructions to literally hire someone with most meetup attandances, they will ignore any candidate that list those in resume.
But, there ARE recruiters who can see through a weak resume and help you make it more targeted, surface keywords that help you get interviews.
I see .fr in domain: is going through recruiters the main way to get hired in IT in france? Where I am the best way to get hired (beyond entry level) is through referrals and for those, I find that side projects and collaborations are much better at generating a future lead that just proving you were good at your job
I am French myself and from what I've heard about how it happens in North America, the way recruiting works is a bit different.
The general idea is that French recruiters are more cautious, which is understandable since there are stronger employee protection laws and it is harder to let go of a problematic employee. For that reason, employees are also expected to stay longer.
It also looks like recruiting criteria are less technical. Your degree, years of experience, companies you worked for, certifications, etc... play a more important role than showing off your skills. Wages also tend to be defined more by your experience and position than how much money the company can expect to make out of your work.
So if you are not working in France, keep that in mind when reading such advise.
A side project is a great way to get better at things you already have interest in.
A side business is a great way to discover new interests and challenges.
You need to own the economic value of your output as early as possible. Read that sentence again. Side projects are about 10% effective here, if you get my drift.
Reference? Are you implying that developers over 55 are unemployed against their choice?
I suspect sampling bias: Any half competent 55 year old has lived through some golden opportunities to make bank, or decide on a career change by choice. Also the intake cohorts results in not many over 55 as a % of total. My experience in New Zealand is that older devs are doing fine as a cohort, although I also can see poor performers who stuck with old tech who may have bitter anecdotes.
> You need to own the economic value of your output as early as possible
I disagree. I have plenty of 50+ acquaintances doing very nicely on their boring salary without the stress or risk of trying to get a slice of equity. Plenty of people do not have the traits required, or their personal circumstances are not flexible enough to allow for risk, or they just want a 9 to 5 and a comfortable retirement (which they will get, and their rockstar friend might not).
Edit: Past performance is no guarantee of future results. The outcomes for the first cohort of developers is very unlikely to be anything like the latest cohort who you are advising - “as early as possible” doesn’t apply to 55+ year old developers?! We haven’t had 30 years of hindsight bias to know what the successful path for a current 20 year old will be.
I'm heading soon to do the same thing at another fast-growing startup.
I've actually talked about my side projects each time I've hopped jobs, and actually, when I took on advisory work. Niches are good!
The fact is, (even different parts of) organizations vary widely in their hiring practices. Some care and some don't. I've hired people almost solely on their side-project (nearly a proto-startup), and I've hired folks without them.
If you interviewed Mssrs. Bellard or Hunt (and you didn't know of them beforehand) and they talked about their side projects QEMU or haveibeenpwned.com (respectively), you should probably rate them highly, maybe even hire them on the spot.
You should aim to work for groups that value such projects.
I mean I don't expect people eat/sleep/breath code but I also don't want to hire folks that just got into CompSci/Coding cause it was a 'good/safe' career choice. In my experience the guys that are self learners, doing side projects, playing with the latest 'for fun' are the dudes that really get stuff done.
In my career so far, every time I've encountered an employer (or more specifically, a representative of an employer, e.g. a recruiter or hiring manager) who cared about side-projects and off-the-clock programming to the point where it was a dealbreaker / red flag for applicants, and not just a nice-to-have, the following things were true:
- they paid significantly below market rate (when accounting for bonuses and RSUs)
- they did not respect engineering work/life balance
- they had high turnover
"I don’t want to make this blog post a rant against side projects. In fact, I’m advocating the exact opposite. Continue to do as many side projects as ever, code on nights and weekends if you want too, but don’t think about how they could be useful to you to get a new job. Don’t do all the tutorials you find about Vue.js, but use this weird technology that you saw yesterday on Hacker News. Don’t think about what are the best blog post topics that could expand your personal branding, but write poetry or a review of the last movie you saw. Create the apps, services, websites, or video games you want to use. This may not make your portfolio or your public image convincing for the next recruiter you’ll meet, but this is how you will be able to express all that you have in you and end up affirming yourself. At least, you should end having something meaningful to show, something to be proud about."
Without you having to do anything?
To the extent that they show that you have really accomplished something difficult they can be very impressive and differentiate you from other candidates. E.g. in terms of high school extracurriculars, if, say, you've reached the title of chess grandmaster that's impressive, if you went to chess club practice a couple times a week and were just decent at it that's not going to help.
As a software engineer, if you've built a site with millions of page views or written an open source library that many engineers have heard of, that definitely opens doors. (Though even then, maybe not in the way you're expecting. Any given recruiter still might not care or might not be able to remove the red tape for you just because of that. But you'll likely have certain unique opportunities become available). If you've thrown together a few sites in your free time and then moved on to other things, it's not that impressive.
Being able to demonstrate turning an idea into reality and talk about technical (and design) problems I encountered and how I solved them seemed to be much more interesting to interviewers than most of what I had done at my previous day jobs.
Side projects open the creative pipeline. Your job, all too often, closes it.
Also, who cares about recruiters? This is your life—you should find a bigger pool of people to impress and delight.
Do you know how many successful startups come from side projects? To some extent, a large number of startups are from "side projects":
If a college student starts a company when they are at school, by definition, that's pretty much their side project from the beginning, because their main job is to study and get degree at school. Those are side projects. Zuckerberg stole the FB idea from his side project.
Look at how many successful people quit their jobs and then started their successful companies. You think they all really quit their jobs first and then begin to work on the startup they founded? Come on, very few of them have this clean start. Even if they are on paper looking clean, there are overlaps. Those are side projects, side ideas.
At the end of the day, you ship something useful and practical and learn something new along the way. Ain't that count?
Unless your side project = side business, now that'll be another beast.
Even something you do out of love that doesn't involve money making, you still have to think about it, find time to do it and when you can't(mostly because your main job took all your time) you will feel guilty and depressed. And the cycle continue.... seriously, I think it's worse than having no side project.
Which is fine if that's what you're looking for, but not so great if you consider yourself an entrepreneur.
- They allow me to grow my skills and also test ideas in public.
- Every code pattern or library I use in my main job has been put to test on my side-projects.
If I had more hours per day, I would pour them all into my side-projects.
1. You don't much or any professional experience with software development.
2. You are experienced, but are trying to break into another field - and haven't done any relevant work in your current position (for example - front-end developer pivoting to systems development, or whatever)
I've encountered a lot of recruiters lately, that were more than interested in checking out personal projects. Hell, I've also seen some data science and ML positions where they explicitly asked for cool/interesting side-projects, where you'd use the tech to solve some problem.
But side projects have tons of other benefits outside of making money:
* It satisfies your curious mind.
* It is a learning tool to discover new technologies. Consider this as investment for your future career. Imagine learning Kubernetes or ReactJS when it just came out.
* It is a learning tool to understand old technologies (because you simply don't have the time to do so on day job).
* It's a teaching tool if you have kids that's interested in computer.
* It solves some practical annoyance at home (for example: Homebridge).
More of a dream, really. I doubt it will happen anytime soon. I think I can swing it by 401k/IRA withdrawal age, though.
Basically, what I'm doing now, when I should be doing what I'm paid to be doing is what I'll be paid to do in a few years' time.
Experimentation and side projects are vital to stretch creativity and learn new things. Not all of my side projects have been successful, but they've all played a vital role in my career development, more by happy accident than design. It's all about following interests to see where they lead.
Instead, I have started shifting my focus to "side-gigs" rather, with the goal that they create future value for me in some sense.
So the author originally found much satisfaction in his exploratory, entrepreneurial, and hacking activities, as it offered a counter-balance to the corporate culture that he perceived as shallow and alien. It didn't matter that his ventures ended up as failures, he found something worthy out of the process.
Sometime later he had a change of heart and decided to pursue a "career". He was then confronted by a clash of culture when he realized that all his tinkering didn't matter to HR.
Now, he's a manager and he understand HR's perspective on reality. He gives you a glimpse. His time spent working on projects was a waste at best and a liability at worst. Companies don't need innovators or free thinkers, they're afraid of them. What they need are good soldiers unburden with ideas of freedom. Exploring new shiny stuff does not make you appealing to HR, your capacity to endure the grind does.
The author offers some philosophical digression where he posits that side projects, much like the theoretical stuff that you learn in school, serve to expand your mind, but don't let them delude you into thinking that you can make that enriched vision serve you in the real world (of employment I suppose).
True valuable experience comes from getting a first job and to do that you should brush up on your DS & algo theory and do coding exercises. Don't expects all your shallow side projects to come to your rescue at your next technical interview.
The author concludes that if you want to make things easier for yourself, you should get a job. It will free you to be yourself, to go fishing, to have a life. If you still want to work on some side projects, you'll do so because they truly matter to you, not because you think they will be strategically helpful in your career. It will suck becoming dependent on a company, but it's the price to pay to be safe from the relentless competition in the job market.
Since it's an 'Advice to my young self'. I would say either forget side projects (to be boring as hell), or invest more in side projects (take some risks).
I have been haunted by sloppy side projects for many years because day job makes me both mentally physically exhausted. Until recently I realized if I quit my job and my life wouldn't fall apart that much, and I can spend more time on the projects I'm interested in without worrying about the return rate.
If you want to grow as a programmer (in my case), then side projects are going to get you the skills to advance your career and get you a better job over "buddying up" with recruiters. Sure, you can be a 9-5 kinda person and then "switch off" when you get home, but you will be the one stuck wondering where it all went wrong and write a blog article complaining about it.
insert principal skinner out-of-touch meme here
#1: No one will ever look at your side project. However, it can still be of use to your job hunt if you can talk about it. In fact, it's possible to get away with a empty project provided you can talk about what would have been in there in great detail (as if you'd actually done it).
#2: If you can't talk about your project in great detail, then it has as much worth as if you'd never actually completed the project.
This one I learned with the years, that it is so much work to introduce new technology to a team, sometimes not the most productive endeavor. Involves some perfect timing, support from key stakeholders and a team open to the idea...
Unless the current stack is absolutely insufferable, it could be better to try and find what's interesting about it and become proficient with it.
Most of the most successful companies started out as someone's side-project. So, I don't see the point of that article that is basically saying be passionate about your job, not your own ideas. And he's saying that to his younger self. Wow.
Heck, my entire career was born out of immersing myself in an area of interest in my free time, outside of my original field of study.
I feel most of us would disagree with that. All new jobs in my career were result of learning something new on side projects. Recruiters show that as passion for learning. Many jobs don't allow for much exploration and you don't have leverage to call shots. It's usually uphill battle to even introduce any significant changes in large stable products. Also, side projects shouldn't be just for goal of finding new jobs and making recruiters happy anyway. It should be for passion for creating things, realizing ideas.
You're right, but your point also indicates why business value side projects less than career projects. The skills and experience to complete the project don't overlap much between the two types of projects. The success criteria is usually quite different as well.
Lol this is why so many tech stacks at work go to shit. Someone wanting to add another bullet point to the resume and instead of doing it at home, they force a new tool/language at work (when possible).
It really depends on your goals. My goal has always been to have my own business, so I put lots of time and energy into side projects.
If I only wanted to have a career, I probably would use that time and energy on something more career-oriented.
The only thing that needs attention paid to is have a flow of income while you're still working on your side project. It becomes mainstream as your only job when it starts bringing back decent money or VC support.
There's a reason they're "side" projects.
I'm not saying "you should definitely do side projects". I'm just disagreeing they aren't always useless. Like pretty much anything in life, your mileage will vary.
The side projects I was working on were pretty small potatoes, so that needs to be pointed out. But overall a higher focus on my job has led to two promotions and a ton more money.
Maybe I could have struck it rich with a startup, but the golden handcuffs feel so nice right now that I may never find out.
Anecdotally my side projects are of a consistently higher standard than the projects I work on at the company.
I also get way more chance to experiment with new things than I get at my job.
Clickbait title that even author doesn't agree with.
While they both netted positive outcomes for me, if I had gone all-in on either one, I think I would have had an order-of-magnitude better outcome. Splitting my attention cost me serious advancement & money at both.
"When a painter goes home, he might not want to paint more walls... But he may paint murals or canvases... regardless of the monetary reward"
Building software is a form of artistic expression for many people, doing it without the limits of business requirements can be very satisfying.
The author has some point in there, however, focussing on side projects does help you expand and broaden your experiences. Its supremely helpful when switching between slightly different industries.
This is like a writer telling you to "forget blogs/articles/novels/stories and focus on your newspaper writing job".
There is always something for everyone.
As with many other things in life, there is now one-size-fits-all. For someone else, a complete opposite will work.
Stay informed, learn about different approaches, and simply choose what you think is best.
But article is good, nonetheless, everything needs a balance.
or another advice - you need to diversify your skills, choose the skills you believe will be in demand in the future to learn, also try to choose ones that it will be ok you are older.
that doesn't make sense, why do you apply to jobs if you want to work for yourself?
My side-projects gave me the career I have today. They have gotten me jobs without interviews. Because of my side-projects, every job I have had in the past two decades has been without a formal interview or usual take home/coding/white boarding/hazing ritual. I have used a resume precisely twice in the past 15+ years, and one of those two times was because of the company we built and turned profitable was being acquihired.
Some of my side-projects have turned into products that generated real world value. Side projects let me explore new technologies that I don’t get to deal with at work.
I would say, because of my side-projects, that I have frequently drowned in opportunity in terms of offered work. I have gotten offered a “when can you start” job, without interview, in an unsolicited approach, on more than one occasion simply because someone was using one of my side-projects in their day-to-day work.
I recently did a few “test the waters” interviews with a couple of companies (FANGMAN being two of them), just to get some practice in, to see if I “still got it.” Only the FANGMAN companies required a resume before they would even talk to me. Apparently, I’ve still got it, but I realized those kinds of positions weren’t for me.
Having spoken to several people about “focusing on your job” many realise that they have a great job, but what they don’t have is a great and diversified career. They get pigeonholed in to a single role, whether that is marketing, or project management or even software development. When that career dries up, Flash programmer anyone? COBOL programmer? Then they have to reskill and hope someone gives them another chance. “I am an $X” where $X is how they identify themselves. I’ve always struggled to answer that question of “what is it you do?” Perhaps that is a failing on my part.
The majority of software development is code that is not customer facing, that is never seen outside of the business unit for which it was developed. For each and every job you will have through your career you will be told to take a number, stand in line, wait your turn, do as your told, learn to compromise and if we like you enough and you check all the boxes, we’ll let you know at our convenience. In the words of Casey Neistat, “this… is terrible advice.”
My last job was without anything more than a 20 minute chat and “here’s what I’ve been building these past few months as a side-project.” My job before that was “we really liked what you did on Project $X for Company $Y, do you have any experience in Technology $Z?” (Yes, here’s a side-project you can look at that uses Technology $Z). Every single job, for 20+ years, “here’s something I did on a side-project that’s really neat and interesting, do you want me to do that neat and interesting thing for your company?”
I have studiously avoided any and every company that has tried to pigeon hole me, or get me to jump through the hoops of their hiring process, so far it has worked out pretty well for me. I don’t think I have ever worked a single day in my entire life.
Not everybody can do this, not everybody wants to do this, but it has worked out pretty well for me.
If I had to give advice to my younger self, if my younger self would actually listen to the advice, I would say “Do more of the picking one project in any given year, and hyper focus on that for 12 months, rather than only doing things for a few months. If you need to figure out which project that is, do three or four for a couple of weeks, then abandon the ones that don’t have enough interesting problems.” I do focus on single projects for extended periods of time, and it is those projects that have built my career.
This is a very good & important assessment, realization, & I appreciate the author's reassessment.
> Secondly, I don’t think that multiplying the side projects is useful unless they are substantial.
A phrase that recuringly comes to mind when hearing of a lot of side projects is, "Dream no small dreams for they have no power to move the hearts of men."
I very much want to see a world where computing is a good & sensible place, for scratching your own itch. But at the moment, just getting started on a modest web project is pretty hard. Even if you don't need user accounts, it's still a lot of grunt-work, gulp-work, webpack-work, and or babel-work. Oh you want users with their data? Now multiply the number of hours by 20x. Folk like hood.ie & UserGrid have attempted to lower the effort-to-start, Firebase & others are certainly selling themselves on trying to accelerate the mid-level lift here, the 200's & 300's level courses of "getting your app going". But it's hard. We're not great.
So at the moment, scratch your own itch is hard to do well in a time effective manner. My take-aways are two fold: 1. on a macro scale, we should work harder to build a better systematic base to work from, and 2. a lot of side projects are over-invested in. As a chronic maker-of-side-projects, knowing how to put something down & walk away is a crucial skill. Unlike the author, I do think there's a quite considerable value in having some shallow experience, including with things you are not likely to use (understanding the meta-patterns of computing, seeing similarities across systems is where mature understanding starts).
> I don’t want to make this blog post a rant against side projects. In fact, I’m advocating the exact opposite. Continue to do as many side projects as ever, code on nights and weekends if you want too, but don’t think about how they could be useful to you to get a new job. Don’t do all the tutorials you find about Vue.js, but use this weird technology that you saw yesterday on Hacker News.
An imo unfortunate & accurate statement of a dwindling spirit of the technical community! We have heavily industrialized[1] these days, & our hunger to explore outer bounds & interesting potential is much diminished. As a result, those of us who are pioneering by nature are less in demand, more settlers and town planners are needed[2]. For now, we are "technically mature", we believe we have "good solutions" to the problems that are common & identified. For this to shift, we need more cause for adventure, more sense that computing has bigger open possibilities than what we've settled down around. I for one continue to believe the future is still exciting.
[1] https://daverupert.com/2020/01/the-web-is-industrialized-and...
[2] https://blog.gardeviance.org/2015/03/on-pioneers-settlers-to...
I got a job because of my side projects and would be unemployed if I didn't work on side projects.
Now, who's opinion is correct?
There are two primary paths from that level: middle management and senior management. If you like the first, learn to speak well, work on your image and build the reputation of a responsible and reliable person who takes the rules seriously. You'll get promoted and eventually you'll stall at the "director" level.
The senior management path is about financial and personal risk. This is where you'll need to build a successful side gig, turn it into a multi million dollar business and negotiate a senior manager position, with very nice compensation, with competitors who will try to take you down in the process. A lot more fun, more risk and a lot more reward.
During the recruiter phase, they're not going to understand the projects anyway. The only value they have at this point is they boost your confidence and let you move on to next questions. Just list them briefly if asked what you've been doing recently. Most recruiters can't recognize a good programmer, so they approximate it by judging your confidence.
The weapon of choice against recruiters is being prepared for the questions they ask. You pull out a lot of paper, write the questions down, and write answers. Ron Fry's 101 questions book describes them in detail. What the recruiter wants to hear, what she doesn't want to hear. All recruiters have the same set of questions, and although it changes every couple of years it's a solved problem. Yes, I know telling a recruiter what she wants to hear is manipulative :-(.
If I die tomorrow and all I did was focus on my career that would be so sad.
I never wrote any code to impress someone. I always wrote code to learn things, for my own benefit. And yes, usually there was a lot of synergy, but with high latency. Much of the knowledge I use at work comes from so-called "side projects" I used to do months or even years earlier.
I also find the headline rather sad. As if everything you do in your spare time has to be geared towards maximum efficiency in the day job. That is a pretty sad path to go down.