Ask HN: With nothing but an open-source portfolio, how to start job-hunting?
I’m a young student in high school who has predominantly spent their time working on open-source projects to create a portfolio demonstrating proficiency with a range of tools, languages, services, and paradigms. With this as my main asset, how might I best go about searching for a job given no prior formal work experience?
50 comments
[ 231 ms ] story [ 1970 ms ] threadIf I were you I would start to consult on the side while in school. In fact, this is exactly what I did do in high school and college. Make a small but well designed site which shows your projects in a portfolio style. Offer your services to local businesses while trying to focus on solutions you can offer them to help them with their specific problems. For example, as a freshman in high school I helped a specialty billing company to automate some of their reporting which used to be a manual process. I figured out they needed this by calling them up, introducing myself as a high school student who was trying to find companies who needed my services as a software developer, and asking what problems they had. It turns out, it's really that easy sometimes.
If you'd like to get a more salary based job on a team at a company, you might be in a good spot for this too. Create a resume. Focus on what you have worked on and what accomplishments you have achieved. Send this out to prospective employers. It would be good to still create the small but well designed portfolio site to show off your open source projects and mention this in your resume. Send this resume out to 5 companies a day, every day, and you will quickly find you start to get quite a lot of response.
We all started somewhere. A lot of us started out with a lot less experience than you have described here. You'll do well!
1.) Keep contributing to open source and working on/releasing/blogging about/otherwise promoting side projects.
2.) Contact founders directly via email and ask about job/contract opportunities.
The bigger your profile/the more samples of your work out there, the easier it will be to get positive responses out cold emails.
The thing that got him in the door was attending meetups. We were doing JavaScript stuff so he attended his local NodeJS meetup and met some people who eventually hired him. So if you're in a location where they have dev meetups I'd get out and attend, talk to people, maybe even present.
Different projects have different norms around job seeking, so this might take the form of reaching out 1:1 to other contributors or users you have interacted with, or it might take the form of "Hey, I'm looking for a new job..." to the mailing list for the project. Do understand the norms for the projects though, as sending a blanket "I'm looking for a new gig" to some places will lead to being ostracized, whereas for others it will lead to flurry of folks reaching out. If in doubt, reach out directly.
You will then be very well positioned for college internships, where you can make $$$ and work in a higher pressure environment on cutting edge things. Your résumé will show job experience and you'll likely have more poise than your peers. Be sure you don't stress out too much about a high school job. Life is long.
I've hired several people with no formal experience, but some awesome open source work.
1) While you search, you might start contributing to bigger open source projects that have visibility. It shows you can be part of a team. Then you also have "references" that can vouch for you; your employers can see your work directly.
2) Try thinking of your professional identity; how do you market yourself. This is a combination of your skills and interests in terms of what types of projects you want to work on and want to be called upon. What do you want to be known for?
Truthfully, your biggest asset right now will probably be that you have some skills (don't have to be trained from zero), and are super cheap and willing to do more than you get paid for.
For either of the first 2 options, call around to your local businesses and ask about internships. That would be an easier sell, and get you experience.
For a full-time job, you methods really aren't any different than the rest of us. Meet people, talk to them, apply to their posted job openings. Let people know you are looking so they think of you for opportunities that are not posted.
In my high school, the physics teacher also ran the computer lab. He had all sorts of connections. He even hooked me up with a babysitting gig.
Also, at a job you'll usually only be doing specialized work anyways.
Check out http://meetup.com/ for finding local programming meetups. It's awesome. reply
By the way, what languages and paradigms do you think you are really good at?
Secondary to the above it gives you some basic business and marketing/sales skills which always come in handy.
I believe you can achieve similar results by showing the work you've done on OSS projects. Just share your commits with potential employers.
Do this a bunch of times and you should be hired somewhere.
That's how I got a job as a very junior developer.
Also, just being realistic, it's WAY easier to get your foot in the door doing frontend stuff. Doesn't mean you have to drop everything and become a UI person, but if you have some kind of an API sitting on aws, having a UI to drive it vs. driving it purely with curl/postman/etc shouldn't take much effort but will be a good bang for the buck no doubt.
1) Show value you have added to OSS in an easy digestable way for potential employers. A 2-minute checkout on the web, with explanations where needed to have people understand what you did.
2) Show value you can add to their business. Place yourself in the position of the businessowner, and match this with your skills and talents. Eloquently writeup what value you can add to their position in the business.
* Find some developers in your local area who maintain, or can merge into, an open source project. Work on what they are passionate about, and get to know them. Learn what it takes to contribute effectively, and you'll get noticed. Bonus points if that open source project is something someone uses for work, as you're now another local expert in a tool that someone actively pays people to develop.
* Find something in your local area that doesn't work as well as it should and fix it, or at least offer to fix it. There's a crosswalk signal on my block that is malfunctioning. It's supposed to flash a red hand (aka don't walk) with a countdown from 10 to 1 seconds before turning solid red. Instead, it flashes "99". If you saw that malfunction, you could do a bit of research to see who the manufacturer is, call up city hall, and tell them you'd like to work with the technician who is tasked with fixing the light. Ask the technician if his company has any work you could help with.
* Find out who developed the websites for some local business in your area, or visit that local computer shop that offers website development along with their services. Ask if they'd hire you as an intern, showing them the work you've already done. Even if they don't ask them if they'd be open to discussing their process for hosting and deploying websites. Find a way to improve it, open source the solution, and give it to them. Now you've got a customer for your open source work, which is something you can most definitely put on your resume.
At the end of the day, you'll have to decide if you're willing to figure out what it takes to create opportunity for yourself, or if you're willing to settle for opportunities advertised to you.
Good luck, and stay awesome. And props to you for asking this question in the first place.