6 ms·
Ask HN: Landing a programming job by virtue of a side project only?
I'd like to pursue developing full-time but have no formal education. I do however have a profitable (~$500 MRR) SaaS in the finance niche and a few dozen freelance reviews from over the years. I plan to continue growing my product, but I believe the upside is limited and marketing isn't my forte, which has lead to my interest in seeking a position with stability where I can focus mostly on coding.
My first step will be to get a public repo up for it, but provided that's done, my questions are:
1) Would you consider someone in my position a candidate for an interview based on a product/repo only?
2) My experience is full stack, LAMP/JS, but all vanilla. Are there opportunities for a developer without framework knowledge, or should I focus on this prior to a job search?
3) I live about an hour from Toronto, Ontario. If I had a choice, a hybrid position where I commute one or two days a week and work the rest remotely would be great. Can this type of arrangement be found outside of senior positions or am I being unrealistic?
Cheers
- drenvuk 7y ago1. I would whiteboard you and vet your previous clients/projects. This also assumes I have time. Make sure you're good on from a project pov and an algorithms pov. I've seen bad code from people who have made decent looking projects. When I looked deeper I just saw copy pastes from stackoverflow. 2. This makes it harder - just learn react, new ES stuff and webpack if you want to focus on front end, it doesn't take long, just run yourself through some tutorials and build a small project to familiarize yourself. Some people will ask you trivia. 3. You're being unrealistic. I suggest you ask for referrals.
- smt88 7y ago> I would whiteboard you > you're good on from a project pov and an algorithms pov As someone who also hires software people, I would urge you to review the evidence on whiteboarding. It's difficult to discard your own anecdotal evidence, but hiring has no control group -- you have no idea how many great people you're missing as a result of whiteboarding. The reasons against whiteboarding have been discussed here many times, but I'll summarize them again: - They're unnatural. People haven't practiced writing code standing up, with markers, with other people around, in real-time with minimal thought/planning, or with a potentially life-changing job on the line, and they don't do that after you hire them. - They're biased against people who are introverted, who haven't specifically practiced whiteboarding, and/or who just aren't as cocky. Why are those traits you want to filter out? - Most programming jobs are about learning and critical thinking, not regurgitating algorithms. - They're humiliating for most people. That alone should be enough to end the practice. When people ask me for advice, I tell them to avoid companies whose first interaction with you is humiliating. - Experienced candidates can (and should) refuse to do whiteboard interviews, which means your company is missing out. I hope that's at least food for thought!
- pikamonad 7y agoWhile these items might be true, as an interviewer you are not trying to solve for “find all good candidates” but, instead, are solving for “find one good enough and better than the rest”. Anymore, I love that I have a clear path on how to obtain a very high six figure gig with plenty of resources to get there. I’ll gladly play that game, with enthusiasm. When others focus on the plight of the interviewee, others are leetcoding, white-boarding, practicing, reading up on blind, etc.
- xwolfi 7y agoDepends, I don't think you care all that much about coding skills. You don't want a cripple, but you want a diva even less. You can take a learning developer with an amazing passion for learning, and building shit while you must refuse a guy who say he's leet coding and shit on everyone trying to learn from him :D Depends what industry you work in, but where I am, it's more about accepting to switch team and language during hiring freeze, spend a week or two on legacy retro spec'ing, tell business users that you failed your impossible deadline, and fix your own crap honestly. Nothing leet about it, just brutal honesty, courage and loyalty to get a six figure where I am.
- smt88 7y ago> leetcoding, white-boarding, practicing, reading up on blind, etc. These things have no relationship with whether someone is productive, constructive to the team, or good at coding.
- drenvuk 7y agoMy whiteboarding consists of a mix of three things: 1. Invert a binary tree (tree based and simplistic) 2. Open a file, parse it in a simple way and then write to a new file. (file systems, strings) 3. Design a barebones twitter/reddit, etc. (architecture) No dynamic programming, no esoteric stuff. Just can they understand tree structures, do they have a grasp on file systems, and do they have a modicum of design sense. It doesn't need to be hard. After that the rest of proving themselves happens on the job. This isn't for humiliation, I just want to filter out the people who I would waste time on with further vetting and training. If the candidate cares they should be able to meet my appropriately low bar.
- winrid 7y agoUnrealistic? Half the people at my current company do this.
- duxup 7y agoI can't tell you anything about your local market but you sound "self taught" and there are lots of people like that in the industry. Look up some local meetups and get to know the local market.
- sergiotapia 7y agoIt's a tough sell if you don't know any frameworks. The vast majority of businesses use frameworks, makes it easier to hire for, right?
- deleted 7y ago[deleted]
- jaabe 7y agoI’ve never hired someone who was self-taught, not because self-taught people can’t be equal or better, but because you’re trying to buy security and stability. The most expensive mistake you can make as a manager is hiring the wrong person, and self-educated people just aren’t worth the risk when you have a dozen other candidates who are great. I’m Danish though and things are a little different here because education is free. In face the government will even pay you a small amount of monthly money while you study. So we don’t have that many self-educated people, and those who are, are typically self-educated for a range of reasons that put them at a disadvantage from the get go. So my point isn’t to discourage you, but to make you aware that managers might see your lack of formal education as a risk that you need to mitigate. Everyone can learn to program, but learning how to program, correctly, efficiently and safe comes with formal education and you probably need to show that you know at least something about how to make CS based decisions. Maybe you do, if so great. If you don’t, spend a little time researching best practices, read up on design patterns and maybe complete the MITX intro course(s) to CS on edx.org. I’m not sure knowing a specific framework is really all that valuable. If your can build something with LAMP/JS that makes money then you’ve already demonstrated your ability to write software. On the other hand it wouldn’t hurt you either.
- thetrost 7y agoYeah, nobody gets fired for buying IBM. I don't know how the market for good developers is in Denmark, but I think restricting your potential employees to just formally trained limits your potential as team/company. edit: Plus, I know quite a lot of formally trained developers who at some point just stopped learning. To me that is much more dangerous than not having a formal education in the first place.
- jaabe 7y agoI’ve hired a lot of people, I do a lot of networking and I work as an examiner for CS students, I’ve never seen someone who was self-educated remotely compare to someone with a degree. It just doesn’t happen in a country where anyone who wants to put in the work can get a degree. Which was kind of my point. The people who failed to get a degree are typically the people who won’t become great when they are self-taught either. I can see why you would chose not to get an education in a country like America, where it would be a huge financial burden to do so, but we literally pay people to attend their free education.
- kksrini2809 7y ago@sullivan You can get full-time employment even though formal education is required but sometimes not mandatory. Visit https://angel.co https://angel.co. Try to build up your networks and show up your product and revenue in social media this will help you to land up your next full time job. Wish you good luck.
- xwolfi 7y agoThe $500 MRR is an interesting selling point, for sure. See yourself as a product you must sell to a new client, your future company. The client is made of: - A future manager - Future colleagues - HR / Upper management Each part of the client has its own set of requirement. Getting the interview depends mostly on selling the resume: make professional accomplishment clear, show that you understand what's happening around you and focus on problems and their solution. 1) I would definitely consider you for an interview, but with a strong bias against you: I, like many others, have a formal education and believe it helped me. I also hired exotic profiles and got bitten. The fact you have a product up and running is the only reason why I'd pay to see you. 2) Vanilla or not, what I would want to see in frontend code is clarity and team-orientation. If your code can be worked on by a team, and is clear and well done, that'd be more impressive than an angular spaghetti. I would ask you your opinion and try to determine if you can scale to team work, big project and deadlines. Your profile is usually understood to be able to accept ungrateful work happily while learning, and become senior in a 5-year horizon at best. You'll be expected to be humble unless you can demonstrate exceptional insight about programming. 3) I would refuse to see you immediately if I heard about you wanting to slack while we pay you to learn, and I would strongly signal during an interview that not only this is not possible even for the CEO, but that wanting it while you have so much work to do just to be on par with the team that will have to support you for a few years is disrespectful. The top rule I try to apply when recruiting, is : is that guy better than me. If yes, hired.
- muzani 7y agoMy experience is that side projects will land you an interview, but they still test for personality and technical ability.
- CuriouslyC 7y agoCan't say for sure without spending some time with your code, which you would need to entice me to do. Without a resume, you need a portfolio. That could be one app, if it really catches my attention. A blog with a few short but insightful posts about programming could help too. Catching me at a meetup and demonstrating some intelligence and thoughtfulness would probably clinch it. Your marketability is fairly limited with just vanilla JS/LAMP. At this point I'd say learn basic React, Node and Python (preferably) or Ruby. Familiarity with AWS would also be a high return investment. You don't need to know any big back-end frameworks (e.g. Django/Rails) really well, but be able to bootstrap a project and use the management app. Spending some time with a microframework is a good idea (e.g. Express/Flask/Sinatra). At your level working remotely part time is probably not going to be an option. Offering to take a lower salary during negotiations might get you a few days remote but I wouldn't expect it. I would definitely negotiate for more remote time as a reward for positive performance reviews though.
- segmondy 7y agoI have hired people due to their side projects and they turned out to be solid. But most people don't. It requires looking at your code, vetting & talking about it. My concerns are do you know how to work with a team? How about communication? Do you know how to partake in all the other activities outside of coding? Testing? Documentation? System Design? Do you know how to program in the large? Most people out there can brute force their way to a working project and even make tens of thousands of dollars but that doesn't mean they are a great developer.
- codingdave 7y agoHonestly, having a $500 MRR side projects tells me nothing about your coding skills, and would not inspire me to interview you for a coding job. What it would inspire me to interview you for is an junior PO role. You found a problem, built a solution, got a few customers, and have kept them happy. The skills to do that are not related to the coding -- they are product design/ownership skills.
- dragonwriter 7y ago> You found a problem, built a solution, got a few customers, and have kept them happy. The skills to do that are not related to the coding If it's a software solution, the idea that the skills for the “built a solution” part of that are not related to coding seems to be generally untrue. Yes, a solo project of the type involved more than coding skills, but product owner skills without tech skills don't call forth software from the depths of the abyss, though they can produce a nice idea of what a software solution would look like if someone was available to build it.
- codingdave 7y ago"not related to coding" and "not related to coding skills" are not the same thing. Many people can fight through learning enough code to whip out an MVP. But did they do it effectively, or did they spend 3 months doing what most coders do in 3 days? Did they do it well, or is it brittle code that needs major refactoring? So while you are right that coding has to happen, I stand by the original statement that the mere presence of code does not inspire me to interview the person who created it.
- p0d 7y agoI work in IT and many of the responses I am reading here sound idealistic. I am aware of weak, good and exceptional programmers who all get paid at the end of the month. Have a go and see what happens.
- taway555 7y agoi was able to do this. i had one side project/app published in the app store and one freelance contract. those alone got my foot in the door for technical interviews... from there, there is no free lunch, however: study nonstop to pass technical white boarding and screens. you have to run through the gauntlet of technical interviews to get hired. do you have any formal education? bachelors in anything?
- rajacombinator 7y agoI would not believe you were making $500 MRR if you put it in a public repo. So consider that carefully. Better off spending time writing your resume well.
- bongowok 7y agoThe solution to both your problems is the same: advertising your product (either that financial widget or yourself). If you learnt to advertise yourself effectively, getting a job as a self taught developer should be a breeze. Conversely, if you learnt to advertise your financial widget so that it paid you a full-time salary, you could effectively hire yourself and continue building more products.
- chad_strategic 7y agoI know you think you want a programming job, but try to avoid it. I was in a similar position to you years ago. When you start working for other Sr. Dev etc, they will break your spirit and add levels of code bureaucracy and egos. This doesn't include the arguments about naming variables. Just keep working on your own projects. Who cares if it's spaghetti code, you are making money, those people you interview with are working for the man, you are not. Creative, drive and initiative (the talents you used to build your own web site and make it profitable) are talents not found in programming. Coders and Sr. Devs who see that you have those talents will soon extinguish those positive traits from character. Sent from a government office... Help I'm trapped.
- chad_strategic 7y agoKeep fighting, it will be a long battle but worth it in the end. 1. Do some human networking/meet ups. This is completely under rated and the returns are infinite. 2. Upwork.com, it take about 10 proposal before you get some work. It works over time. Here is some inspiration... https://glenmccallum.com/2019/05/14/senior-developers-rejected-jobs/ https://glenmccallum.com/2019/05/14/senior-developers-reject... https://selftaught.blog/self-taught-programmer-jack-dorsey-birthed-social-media-giant/ https://selftaught.blog/self-taught-programmer-jack-dorsey-b... second paragraph.
- sullivan 7y agoThank you to all commenters. I'd be hard-pressed to find this kind of advice in any other community, let alone for free, and I appreciate each of you taking the time. I've had a day to reflect, and have decided to remain focused on my product and continue to subsidize through freelancing and non-tech work. I realize now that I didn't give enough consideration to what would be imperative to an employer and the largest change from my experience working solo - functioning as a team member. I'm a lone wolf, and while I don't think that's inherently right or wrong, it's how I deliver my best work. I think perhaps I'll revisit this idea in the future with my improved perspective, but for now I know that what I truly want is to support myself with a product I can call my own, even if it comes at the expense of a heftier paycheque.
- dangerface 7y agoI have no formal education. YES! Side projects are the best way to demonstrate you know what you know. 1) YES! A million times YES! When recruiting people I don't care about their degree I know how academia works I know its all talk no walk, I want proof and a public repo is the best way to do that. 2) When searching for jobs search your skills (php / javascript) not a job title. Your biggest selling point is that you are a self starter. If there is something you don't know you will just learn it, while the academics sit on their ass waiting for some one to show them. Its hard to understate how much of a massive advantage this is, especially to business minded people. 3) Yes Your biggest obstacle will be self doubt or over confidence, don't bull shit if there is something you don't know just stick to your winning attitude.