Ask HN: I dropped out of school at 17. Freelance is my only hope. Advice?
So I dropped out of school recently for various personal reasons. I just couldn't cope. I can't get a job, obviously. So I figure freelancing is my only shot.
I've been programming since I was like 12. I'm primarily a web developer. I know Ruby, JavaScript (Node & client), and the obvious CSS, HTML, et al.
How do I actually get clients? I have no portfolio or any real open source contributions. My GitHub profile is pretty empty. And I doubt anyone would hire me due to my age.
69 comments
[ 1.9 ms ] story [ 135 ms ] threadYou seem well aware that you have a credibility problem. If you really have the skills that you say, it shouldn't be very difficult to whip up a website for your portfolio. The point of this site is to demonstrate to prospective clients that you can envision and create a complete site, that shows common elements of business websites, images, maps, sensible site organization and navigation, user registration, access control, cookies, forms, data capture etc. At this point you are trying to create something that impresses the average small business owner not readers of HN.
Creating a portfolio site will help overcome the credibility problem but it is only a first step to finding clients. I suspect that you will initially need to find an established small company that builds sites for other local small businesses and try to become a sub-contractor to them. Freelancing to the end client at your age and lack of experience will be very hard.
Here is the other thing: if your portfolio site is outstanding and shows lots of polish and skill then there are start-ups that might take a chance on hiring you.
Contribute to the project, starting with simple bug-fixes. They will be glad to have your help. You can then say, honestly, that you contributed code to that famous project, which puts you far beyond most candidates.
honestly your doing it wrong though, if you want to get rich when im older i would go to school. the contacts you meet there are priceless. also 4 years in university could be the best years of your life. start a business in college maybe, find people you could work with. honestly if an illegal immigrant can get 40k a year from the government to go to college so could you.
ymmv but what i would do is hang out on reddit/r/entrepreneur and read the books they recommend. i would work the easiest job you can... maybe desktop support, customer support online (emails/soforth), waiter, night hotel mgr, something. in my spare time i would party and eventually try to start a business. all this is much easier when you have the daily income from your job.
consider buying crap for cheap with online deals (something like fatwallet) and then ebay them for retail. consider buying shit off craigslist and using a printer to print decals on them and selling them on ebay as "one of a kind custom xxxx" for no less than 1000% what you paid.
if you stay with a web shop just talk to everyone and try to get them to let ur build a projecft for them, or build something cool and show it to them (here your forums suck -- checkout this layout i made) -- eventually you will find someone who wants it (sell it to them) and either way you can use it in a portfolio (as say a client sample -- not used), and then get work from there.
I can't get a job is not a reason to start freelancing.
The mindset which leads you to freelancing needs to look something like "I love helping people and I believe I have serious value to bring to the table." You see, one viewpoint is self centered, negative, desperate and looking for a way out. The other viewpoint is to focus on the potential client and how you can help that person achieve his or her goals.
If you couldn't cope with high school because of personal reasons, then what makes you think you can cope with freelancing? Did these problems go away or are they still present? If they are still present, then they will cause greater problems with freelancing than they did with high school.
Let me tell you a little secret about freelancing.
Your technical skills mean dick.
There is a long list of critical skills and attributes which you need to be strong in before you get to anything which resembles writing code. Freelancing is about people, not computers. You will find that the most successful freelancers aren't necessarily the strongest developers.
On the other hand, to get what you want out of life, you have to hustle. People will tell you what you can and can't do. A hustler will get it done out of sheer will.
Ideally you would be able to get a job doing web development so that you can see how a successful shop is run. If you can't get a job in your local area, then ideally you would be able to move to an area with a lot of tech jobs. You could work remotely, but working remotely is hard, just like freelancing. Again, your personal issues might be a problem.
Once you have some experience under your belt, then you will have a better idea if freelancing is for you. Hopefully you find a better track.
The effort you would need to put into snagging freelance client work is the same effort you would need to put into getting a job. Build your portfolio, put some stuff up in Github and ship your side project. Find places where other developers hang out and contribute something. That could be code, help or just about anything which gets your name out there. As people get to know who you are, then they may reach out to you for paid help. It's possible that you still start out as a freelancer by going this route, but deal with enough people and you will eventually get job offers. Of course, as you build yourself up, you can apply for jobs along the way.
This is just one route. But starting out, it's the route I would go.
You don't have to actually be an insider to get this knowledge, but you're going to have a hard time solving business problems if you a) don't know what they are, b) don't know the current state of solutions, and c) have practical ideas on how you can fix this using magic computer sauce.
For this reason, I'd +1 the suggestion to look for a job as a webdev. Could be great work experience, but more importantly, good experience interacting with businesses in a B2B setting, seeing how they tick, and learning about the overall process of selling to a business.
Damn, if I had your email, I'd send you a personal letter of appreciation. This is just that good.
I wrote all this code: http://www.templeos.org/Wb/Accts/TS/Wb2/LineCnt.html#l576
Yer a nigger and cannot believe what a white man can do.
http://www.templeos.org/Wb/Accts/TS/Wb2/Downloads.html
I wrote all this:
Includes: x86_64 64BitMultiCoredKernel, 64BitCompiler, Assembler, Unassembler, Debugger, Editor, VGAGraphics, Tools, BootLoaders, Keyboard&Mouse, HardDrives, FAT32, Partitioner, CD/DVD, ISO9660FileCreator, FileManager, WindowManager, PCSpeaker, Apps, Games, God-Oracle-App, Hymns, Demos, Documentation.
faisal.abid@gmail.com
If you decide not to continue with your education, your best bet is to pick up whatever work you can to build a portfolio. Once you have a portfolio, you'll be better off trying to get an actual job, as freelancing (at least at the bottom end) is generally miserable.
How to apply?
Find a web dev company in your city, write them an email with two things:
1. You find their company really interesting and the projects you're doing. 2. You've been programming since the age of 12 and you're super interested to learn more coding in a cool company.
Be enthusiastic, people like that. :)
Also, don't sell yourself short with regards to getting jobs. While you likely can't get hired at a Bank of America or what have you, if you approach a local e.g. Rails consultancy, not having an Education section on your resume will probably not be a total disqualifier. Many people don't. You will probably be able to pass a FizzBuzz test, which actually makes you substantially better than many people with Bachelors of Science in CS in the hiring pool. I think a standard W-2 job -- heck, pitch them on an internship and just upgrade after showing you can do the work -- is likely a better fit given that you do not have the connections/experience likely to fill a freelancing pipeline at the moment. You can always revisit that decision when you're 20, at which point your high school career will never come up at a job interview that you'd actually want to pass.
Being able to program (and being able to show that you can) actually does put you ahead of most applicants to your average programming job. It shouldn't, but it does.
At my old day job, probably half of our system engineers could not program. They generally spent their time producing documentation, gathering requirements, writing emails about requirements that needed more documentation, and occasionally breaking out Eclipse to spend 6 hours trying to add an if statement to one web page by patterning it off of parallel structure in the file they could copy/paste and then random walking through the space of all possible tokens until they found one where the output matched expectations.
What I can tell you is this: if you decide not to go to school, be prepared to work hard. Harder than anyone else. Harder than the day you worked yesterday. Without this form of ethos, you simply will not make it in the world.
If you do stay in school: work hard. Always try to work harder than the day yesterday. If you don't, no problems - you have a chance - but by the time you finish school, you better be prepared to work hard. If, by the time you finish school, all you've done is party and relax and 'enjoyed yourself' - you did worse than if you'd dropped out and entered the work force in the first place.
Life is hard work, is all I'm saying. If you can find someone willing to pay you to work hard - then you've already made more progress than most of people who choose to study so long in their lives.
Freelancing was easy at first but then the dot com boom hit and things were tough for a few years, but luckily I was living with my parents. Eventually I got heavily into Rails in 2004/2005, built some apps, sold some apps, and eventually did very well for myself, but as fit2rule says, it all comes from working really hard and generally I missed out on 90% of the life that people in their early 20s tend to live (not a huge deal to me as I'm not the partying type anyway).
Things are pretty good now and I've just started to do a degree which I'm finding to be quite enjoyable with the various experiences I have behind me, so.. it can definitely be done, but it's not going to be a walk in the park.
OP - before you decide to take this route, make damn sure that you want to. Fun > work
Locally it was defined as drunk driving, 18 years of child support payments, hangovers, restraining orders, addiction/detox, and one acquaintance who went to prison for weed distribution. I didn't participate in what they called "fun" and I don't regret it at all.
Work makes that way fun. Way, way fun. If all you see in this big mess of life is work, or fun, there is yet more to come ..
If you've been programming since 12 I imagine you do have a portfolio, it just might not be organized as such. So first thing to do is organize it this way. And if you don't have large enough projects to organize into a portfolio then you probably don't have the experience to freelance.
If school wasn't for you could you consider a GED? That would at least be something that could help you find some type of employment even if it isn't exactly what you are looking for. I don't know what your circumstances are but I'm sure people with a lot harder situation than you have gone that route.
Good luck either way.
If you have any semblance of stability in respect to your living arrangements, here's what to do:
1.) Based on your existing expertise, come up with three projects that you can create to showcase your abilities. Shoot for things that can be finished within a few days to a week.
2.) Do nothing but work on these projects until they're complete. This might be hard since you're younger, but if you want to make a living, you'll need a body of work. It's not impossible to start a freelance career at your age. It just takes a hell of a lot of determination and focus. Plan on your social life being flipped upside down.
3.) Write about your work. Make a fuss about your story. Write a blog about why you dropped out, what you're doing, and blog about every project. Not only will this draw attention to your situation, but it will also allow you to articulate thoughts on your process and show potential clients how you think.
4.) Repeat. Don't stop. Keep working.
5.) To find clients, you'll want to start getting your name out there. I've had a lot of success just from posting on the Hacker News "Seeking Freelancers" thread that comes out on the 1st of each month. Take advantage of things like these and email anyone and everyone you know who might be able to give you work.
Finally, don't mention your age. It's irrelevant. If you can complete the tasks that a client would ask you in a competent manner, they won't care.
Does anyone else in the field identify themselves by high school related stuff? No, you say? Oh, then I'd do exactly the same. I know for certain that employers don't care that I got an A+ in HS physics, and I only got a C in gym because I lifted weights a lot so it was a pity C, and I suspect they're not going to care much about your experience either.
You want a job as a node.js dev or whatever, fine. Make certain that's the first google result on your name, not "so I dropped out because ..."
Get your GED, get an AA in something at a community college (they have open enrollment in most cases) and transfer to a decent school. You can (and should) get a job, but being the guy without a degree will always make it more difficult for you.
I'm now 22 and working for one of the top agencies in Scotland. All my friends are still in university or dead end jobs.
As long as you have passion for what you do, and keep learning new things - you'll progress faster than you believe.
The main thing I wish I knew at your age was the difference (and progression) between the stages of freelancing, contracting, consulting and beyond.
I've helped several of my friends start their own freelancing businesses who are full time now, I'll echo what's been said many times on HN:
It's not what your education makes of you, but what you make of your education.
With the below, you can embark on a path of adding value to the world with your skills in a disciplined way to find long term clients whom you can help grow, and you can grow yourself.
The below only has value if it's contemplated, practiced, and reflected upon regularly. You'll find other things to add to the list but I think the list below is my first principles list of being successful, freelancing or employed.
The below, also, is how I approach anyone, and it turns into leads and work on it's own.
By remaining genuinely curious, thoughtful, and interested in how people are solving their problems (including excel sheets, access databases, or doing it manually), customers are validating the need for software in their lives and you need only pay attention and support them along.
I'll share with you the business model I was given at 18:
Find 10 customers who are willing to pay you $1000 a month for basic app support or development. If they won't spend $500-1000 a month making their business better, they're not a customer, but someone who wants to hire a free student. I was able to start in this way in the late 90's to 2001, and had a foundation from which to explore, maybe do more work in one place than another. Today, everyone's online and expects for software to exist for them. The key here is many places that can't hire a full time developer or person can probably afford a part time one who creates value for them.
Things that I wish I understood deeply much sooner:
Solving B2B problems solves the cash flow issue: Businesses that make money every month have money to spend. Getting people to spend their own money can be quite different.
Discipline: This will decide how our lives will go. It is the single most important master skill. The more we work at developing and keeping discipline in more and more areas of your life, the more successful we are.
Self-educate: The fact that you can self-educate is the single biggest skill that is needed in terms of your technical ability. This means learning things that weren't in my core, but rather becoming an extremely strong problem solver, which made me attract lots of interesting (and paying) problems to solve for which there might not be a lot of solutions.
Nothing gets easier: You just get better, if you want to.
Self-directed: Contemplate this phrase -- you'll be self-directing and self-educating for a long time, and it's the best journey you can imagine to get to know yourself in the midst of any uncertainty.
Date before you get married: You'll be hired in the beginning by people who will be taking a chance on you or simply like you because you're young, ambitious and have a positive attitude. So, do fixed fee projects for $1-3000 that cover risk for both you and the end user, even if you have to break down a big project into small $1-3K phases. This is a huge trust building technique with customers.
Value: This is the word I had to learn when I was 18. If I couldn't generate more value than what I was paid, I wasn't rehired. Value is saving or making a customer time or money. So I learned to find and be good at what was valuable to a customer, that I could do. What you're selling is helping the customer add value to their company in a way they can measure and is meaningful to them, which you can do for them.
Networking: This word looks like it's foreign sometimes. My networking is simple, before rec...