10 ms·
Here's a piece of advice from actual experience (from both sides): Invest your time studying for interviews than wasting time building side projects if you're
by cocktailpeanuts 10y ago
Here's a piece of advice from actual experience (from both sides):
Invest your time studying for interviews than wasting time building side projects if you're doing this purely for getting a job, period.
In my experience, companies don't care about your little side project when hiring--that is, unless your "little side project" had some huge impact or is something they have been aware of--the best you could get is "huh that's cool", and that's it, unless you created something really unique.
This whole process of job interview is broken because it's extremely easy to study for them and give the right answers if you invest a couple of weeks to a few months. But since we're talking about getting a job, I think you should take full advantage of this. If I were you, I would be doing this instead of doing side projects for the sake of getting a job.
Also, "side projects" should be something that you build because you think they're cool, not because you want to get a job. That's another reason why I say study for the interview instead of bothering to do side projects if the purpose is to get a job. It's neither meaningful for the employer nor for yourself.
If you still really want to do a side project, just pick a problem you want to solve, and apply some new technology you want to learn to build it. That's the best side project for yourself and the potential employer.
- jamesmp98 10y agoSo what do you do if you lack a degree and professional experience?
- pjc50 10y agoYou need to get one of those two. Which means getting the experience somehow. Unpaid work is one (expensive) way of doing it, but so is getting into a related position and working your way across. QA is potentially a good path for this: hired to do simple things without the degree requirement, move into test automation, move across into development. Then you have it on your CV.
- pmiller2 10y agoIt's actually pretty tough to go from QA to dev.
- strangetimes 10y agoTeach yourself test automation (Selenium, etc.). Shockingly few QAs know even the basics of scripting/programming.
- pmiller2 10y agoIt seems like that would be a ticket to a QA automation job, not a dev job. People say QA -> dev is a good way to get in, but I've seen very few people actually accomplish it.
- gregshap 10y agoI've seen it happen several times (my employer may be unusually prone to hiring jr devs as qa automation). I agree that if you can hold out for a dev job, do that and save a year or two getting to the same place. If you really can't get a dev job and need the income, get a QA Automation job and start migrating early by asking to fix small bugs yourself, or work on the automation tooling. At a smaller company, working on the build system and QA automation tooling might be more interesting and get more attention than what you would do as a jr software dev.
- user5994461 10y agoAgree. Don't get into QA if you want to be a dev.
- pjc50 10y agoYes, but it's also quite hard to get hired as a dev without either qualifications or experience. If you've got the qualifications you can go in directly.
- ChuckMcM 10y agoIt probably varies from place to place but in the Bay Area at least you pretty much have to get a degree of some sort. There are so many programmers out there that the degree/no-degree has become an easy filter for recruiting types and no-degree + no experience (which means no one to talk to about how you work and what it is like to work with you) makes it doubly difficult. That said, it doesn't have to be a degree from Stanford or Berkeley, it can be from pretty much any accredited institution. Typical path forward here is community college for a couple of years and doing the general education requirements, then transferring to one of the state schools to finish a degree in a STEM subject (typically math, cs, ee, or physics)
- mindcrime 10y agoSilicon Valley used to be famous for the exact opposite: the story was always that formal credentials were less important than demonstrated competence. Have things really changed that much? Anyway, at least here on the East Coast, I find that many (most?) companies don't have a strict requirement regarding a degree. At least, not if you have real world experience. Maybe it's more crucial if you're going for your first job.
- autotune 10y agoStart contributing to open source projects on github that solve business problems. Usually for popular projects there are a good number of issues that are available to solve at varying levels of difficulty.
- nrjdhsbsid 10y agoThis 100%. When I'm involved in the interview process I make a point to check out all candidates side projects but over 90% of people don't care. In getting my last job I thought I would have a slam dunk because I have a bunch of cool stuff I work on but nobody cared at all. I failed multiple on site interviews until I gave in and read a couple CSCI 101 books cover to cover. I had too much specialized knowledge and not enough fizzbuzz. On my second round of interviews I got offers from all three companies because I could regurgitate their stupid toy problems in minutes.
- akhilcacharya 10y ago> stupid toy problems in minutes. What sort of toy problems are you talking about?
- logicallee 10y agoI'm going to be snarky but I'll say it anyway: you know, stupid stuff like balanced binary trees and shit like that, when nothing's going to fall apart if the user's browser shows a spinning wait animation for 7 seconds (45 seconds at peak times but that happens for just a few hours per week at most) while you iterate through the data sequentially. honestly, who ever needed an algorithm or data structure. /s (I'm sorry. I thought about using less snark but I can't.)
- gricardo99 10y agoand if you did absolutely have to implement one from scratch, then you probably wouldn't have to spit out an answer on a white board in front of some judging eyes with very limited time and push that into production.
- adrianN 10y agothe last time i had to implement a datastructure was in class. on the job i use the standard library. i hope you do the same.
- 10y ago
- typetypetype 10y agoI agree with this except in the case of getting your first job, in which case you need something to point to.
- johnfn 10y agoAbsolutely true. Which isn't to say to not do side projects, as they are a fantastic way to become a better programmer! They are just not the most efficient way to get a job.
- daheza 10y agoI wonder if this is programmer specific and not as relevant to designers.
- s_ngularity 10y agoAs a programmer, I'd venture to say it is programmer specific. I know for many creative type jobs a good portfolio is key
- bsvalley 10y agoI think you missed the fact that before landing a job, you need to land an interview. I've been on both sides as well for different kinds of companies. Some value side projects a lot at the first screening. If you study a lot it will get you a job %100 guaranteed. But it's nice to be able to work for a company you like.
- LanceH 10y agoI mostly agree with you, but the side project can be a huge factor in differentiation between candidates, either at the resume or interview stage. My rules for the ideal portfolio ready side project: 1. It is "complete". Not just started but something that actually works. This means that a side project needs to be something which you can actually finish. No matter how great your code looks, it will be outweighed by code that works. 2. The problem it can solve can be described in 10 seconds. 3. The interviewer will not be able to sketch it out in their mind in under a minute. While the problem solved may actually be quite simple to implement, it is best if it's just outside the interviewer's knowledge. Actually publishing a usable library, even something trivial, provides great separation at the resume level and gives you something specific to discuss in the interview. The easiest examples I could think of would be a library that does some math. Odds are the interviewer doesn't know how to do trig functions on a sphere, but it is something easy to look up and implement. You can describe it quickly. No amount of time will help them figure it out. Some people's eyes will just glaze over and they'll assume you're really smart (don't go into too much detail on these guys, show them your communication skills instead).
- throwaway_374 10y agoAgree with this 100%. It's soul sucking and destroying but unfortunately coding interviews today are entirely about competitive programming and not about what you create. So you're best off knowing how to derive an O(N) dynamic programming solution to everything on Codility/HackerRank/LeetCode/ACM-ICPC coding challenges.
- mindcrime 10y agoThis whole process of job interview is broken because it's extremely easy to study for them and give the right answers if you invest a couple of weeks to a few months. This is highly dependent on the company you're applying to. The world is bigger than GooBookHooSoft. I've worked for a lot of companies that don't do any of that "grill you on Algorithms 101" stuff, and are far more interested in a demonstrated ability to build something. OTOH, it certainly can't hurt to study the shit out of Algorithms 101, but projects will carry more weight at certain companies. I know if I were in a position to hire right now, I'd care more about projects than CS trivia.
- Blahah 10y agoIt depends what OP means by "getting jobs". To me it means getting work from clients. For getting clients side projects can be extremely useful, and there are no interviews.
- wslh 10y agoIf I see one of your side projects is inline with what we are currently working in my company I would hire you immediately. Obviously we will do some checks on the code quality but nothing extreme. I always hired people based on previous experience and never ever gave them a puzzle to solve.
- shireboy 10y agoAs someone who hires for software development, I have to only partly agree here. No, your little dogfood calculator is not going to make me hire you, but given equal resumes and presentation, I'd hire the candidate who also shows some self-initiative and actual code vs the candidate who is all on paper, only uses the limited 8 year old stack of their previous employer, or worse openly admits they have no actual experience. So, to OP, definitely don't over-do it on the side projects, but do be sure your potential employees know you enjoy what you do and are self-taught and self-motivated.
- stonemetal 10y agoThis reflects my experience 90%. One time I contacted a company in a whose hiring thread here on HN. They asked if I had code on github they could look at. When my response was no, they broke it off.
- pmiller2 10y agoThat's a little extreme, and it's their loss, IMO. Many good programmers have nothing public on GitHub because they only program for their job. I guess they don't want those people.
- pdimitar 10y agoThis definitely struck a nerve when I read it. I'm gradually making my way in GitHub with my own toy projects but truth be told, I prefer to spend time with my wife and work on my body (I have weight to lose and I need loads of cardio) than to always be on my PC/Macbook and code for glory. There are people who realize this and are respecting it (and are adapting their interview per candidate) but increasingly, companies simply don't want you if you didn't invest months/years in showing off.
- curiousDog 10y agoSolve the book Elements of Programming Interviews and you'll get a job at any of the Big 5.
- Apocryphon 10y agoHow about CTCI?
- curiousDog 10y agoI feel like CTCI would get you into Amazon/Microsoft but not Goog/Fb. There's much harder questions in EPI that are part of the regular circuit at these companies.
- huehehue 10y agoIt really, really, really depends on where you're interviewing though. Remember Google infamously rejecting Max Howell, the original Homebrew author? I know there has to be more to the story, but he's become the poster child for talented programmers getting rejected because they can't play the interview game. My point is, though, that his side project absolutely had a huge impact and it still wasn't enough. 90% of my interviews have been a take-home project followed by a chat going through my history and experience; in fact, my small side projects and hackathon projects tend to impress interviewers more than my on-the-spot abilities or my work history. Interestingly, I worked for a Fortune 500 bank and, while it was the least-challenging job I've had, the interview process was by far the hardest and had a few questions straight out of CCTI. Research a few companies. Their Glassdoor pages usually indicate what kind of interview process they have. Then prepare accordingly.
- namelezz 10y ago> Remember Google infamously rejecting Max Howell, the original Homebrew author If Donald Knuth interviewed with Google, he would fail too because he would need 24 hours to solve a hard level leetcode question[1]. Unfortunately, Google loves throwing those kind of questions at interviewees and expect them to come up with solutions within 1 hour interview, lol. [1] - http://keithschwarz.com/interesting/code/?dir=find-duplicate http://keithschwarz.com/interesting/code/?dir=find-duplicate
- Robin_Message 10y agoI thought the trick with this one was to sum all the entries and subtract the sum of 0 to N-2. The remainder is the duplicate entry. It's just a trick though; I don't think skill in coming up with these is particularly well-correlated with being a good programmer, and for that reason Google claims not to do teasers like this any more.
- gms7777 10y agoThat works in the case where there is exactly one duplicate entry. The question says there is at least one dup entry.
- EJTH 10y agoI kind of agree with you for people who already have verifiable experience that sideprojects are not important. For people without anything on their CV however I think it can be a good idea. I have been on both sides as well, many times and to be honest, if someone was a graduate and they didn't have some kind of side project, we just scrapped them.
- v89 10y agoThere is so much evidence online of this being true but people just don't want to believe it. Devs love the idea of "being found" because they had the perfect project on GitHub or a great blog. Reality is these are time consuming, low % approaches to improving one's job prospects. It's so much more time efficient to network and study for interviews.
- cpursley 10y agoThis 0%. Side projects are how I've gotten all of my real jobs. Side projects* demonstrate that not only can you write code, but that you can also architect and deploy an application that solves real world problems. There's a lot more to software engineering than can be tested by fizzbuzzing on a whiteboard. * (I'm assuming your side project is an application)
- treehau5 10y agoside projects show you can clone code on github and push it to your own repo. Interviews show you can articulate what you know in a convincing fashion, and that you have done homework on the company as well as your skills of inference and general personal skills to glean into what sort of answer the particular interview is looking for at the time. Something a lot of people really miss out on when bikeshedding over how terrible whiteboard questions are or interview question xyz is
- cpursley 10y agoPass off someone else project as your own? Doubtful. This attitude comes across as having trust issues. To me, it's a sign of a company with a rotten culture to be avoided. But if someone was able to clone and deploy someone else's project and pass it off as their own, it at least demonstrates that they know git, the command line and some ops.
- jasonlotito 10y agoI've had companies remark about code I've "written." It was merely code I forked and they made an assumption.
- forgetsusername 10y ago>your skills of inference and general personal skills to glean into what sort of answer the particular interview is looking for at the time. Interviews beget interview skills. How does this translate into job performance?
- ma2rten 10y agoSide-projects can subside for a lack of experience to a degree. A fresh grad's resume with a ton of open source projects will look much better than one without. Or someone who is a developer planning their move into data science will greatly improve their changes by having some experience in machine learning and data analysis even if it's just in a side project. However, I agree that unless a side-project has very high impact, it doesn't help much to have on your resume for people who have relevant work experience from a previous job.
- blahshaw 10y agoThis has been true in my experience. Interviewed at FB recently, they gave me a take-home project that we would go over together in the on-site interview. I spent a lot of effort on the project instead of typical white-board coding. I did great on the project but did so-so on the white-boarding. No offer.
- djmill 10y agoTotally agree. It's great for fellow engineers to poke around on to make sure you aren't an idiot or aren't copying/pasting projects from the web, but you're right.. for the most part, no one cares about side projects when it comes to trying to snag a new job.
- philip1209 10y agoI second this. If you have a software day job, then you should already be practicing coding every day. I think it's more useful to spend your extra time learning rather than applying. This can be algorithm books, coding courses, interview guides, etc.
- sebringj 10y agoI've had quite the opposite experience as a corp-to-corp freelance contractor but this isn't scientific as its testimonial anyway. My focus has been on cutting edge technology that appears to be the right way of doing things based on large successful companies using the particular technology like Uber, Netflix, Facebook, Google, etc. I've built side projects with forefront technology gaining valuable experience that otherwise I would never get because of the chicken and egg problem. How do you get experience without experience? You don't. I tend to be pretty decent on interviews anyway so its difficult to know if this approach is the right one but for sure it keeps you sharp. It is more common than not that the technical interviewer compliments me on this approach. Recruiters and non-technicals tend to not care about the specific project but do like that I am comfortable with the technology which gets me through the next round at least.
- Wazzymandias 10y agoI very much agree with this, but just as an aside I'd like to mention that I worked on a full stack web application as a side project and I believe that helped me land my current job at a startup. However I'd also note that I applied to a LOT of companies, and while my side project helped me land my current job, 90%+ of the companies didn't care about it. I learned a lot from my project but job hunting is a numbers game, and it's far more worthwhile to study than it is to build a side project IMO.
- RandomOpinion 10y ago>In my experience, companies don't care about your little side project when hiring--that is, unless your "little side project" had some huge impact or is something they have been aware of--the best you could get is "huh that's cool", and that's it, unless you created something really unique. Something else to consider: Depending on the corporate policy on open source, employees may be forbidden to look at external source code without prior approval by the legal department. This is more likely at large companies who are afraid of lawsuits accusing them of copying code or ideas (and, yes, it does happen). So, your interviewers may not even be permitted to look at your portfolio anyway.
- danielhooper 10y agoWho is this advice for? UC Berkeley grads? If you don't have personal projects or previous professional experience to talk about the only thing you have to bring to an interview is a university degree. Are you proposing the OP just does nothing? How is OP supposed to land an interview in the first place?