Hi HN, this is a long one - grab your popcorn.
[Removed some background info due to length, but the gist was that I’ve had the entrepreneurial bug for as long as I can remember]
I just graduated from the General Engineering program [1] at the University of Illinois in December, and I can tell you that my time spent at UIUC was absolutely horrible. Year after year, I was told things would get better- “These are just weed out classes, don’t worry. Things get better after this.” Year after year, things stayed the same. In four years, I never felt inspired or motivated. I tried switching majors, but was strongly advised against it due to a weak job market in the target field (industrial design). I couldn’t drop out or start over, because upwards of $100,000 was on the table for my education. I was surrounded my classmates who didn’t give a shit about engineering or learning – their priority was making it through the week so they could get trashed on the weekends. For a guy who doesn’t drink, it’s difficult to socialize with these kinds of people. I laid low and pushed forward. I studied for exams and did homework, but I never felt like I was an engineer. I always felt like I was just doing busy work and that none of it really mattered. I never felt like I was learning. Perhaps it was just my program, but you can imagine my distaste for engineering that was built up over the 4 year period. It was the worst 4 years of my life.
Now that I’ve graduated, apparently I am supposed to be looking for an engineering job. But I’m not, for two reasons. The first is that I feel as though I am severely underqualified. My final GPA is somewhat low (2.9) as the result of taking almost no GPA-boosting gen ed courses, and I have never participated in an engineering internship. Instead, I spent time helping entrepreneurial family members build their businesses and worked on building businesses of my own. Ultimately, most of my personal business endeavors failed, but the experience gained was invaluable. The second reason is that I have a strong distaste for engineering, and could not picture myself being an engineer or working in an engineering-related field.
It’s not all bad, though. About 6 weeks before graduating (Dec ’10), I had the urge to learn Ruby on Rails. I have always been computer literate and tech savvy (html + css), but computer science seemed like an elusive, mystical thing. Programming? That’s only for really, really smart kids, right? Wrong. Turns out it’s actually pretty easy. I started reading a few tutorials in late October and things finally clicked in January. Since then, I’ve been programming constantly. I code for 10-16 hours a day until I get burnt out and fall asleep, then I wake up and do it again. I love every minute of it. My desires go beyond being a code monkey for the rest of my life, but for the time being, it’s wonderful. I love the startup scene and I could see myself doing this for the next few years.
Since January, here’s what I’ve made:
www.letspocket.com – note-taking tool (my first app)
www.madebyloren.com – blog engine written from scratch, with admin and comment system
www.peak4x4.com – full-featured offroad enthusiast network, with tagging, notifications, etc
www.boxify.me – file-sharing tool for groups (quick one-day app while AWS was down)
www.snowday2011.com – one-off t-shirt website aka “4-hour profitable startup”
In addition to the personal projects, I also built an inventory/tracking system for a biomedical waste processing facility, but the project is currently on hold due to founder issues.
I am thrilled with how far I’ve come over the past few months. I have I have tons and tons of ideas and I want to bring every one of them to life. I never thought hat I could build things like these, and here I am busting them out one after another. I’ve been so focused on learning and building since January that I’ve almost completely neglected monetizing. Funds are running so low that I probably won’t even be able to make next month’s rent. I would love to keep building apps, but it doesn’t seem feasible unless something changes (aka get a job or learn to monetize). So now I’m getting desperate.
Here’s my big dilemma: I am supposed to be seeking a job related to my area of study, but I want absolutely nothing to do with that field. I’ve fallen in love with programming, but I don’t feel as though I’m qualified enough for paid work. I have a wide variety of skills (design, UI, html + css + javascript, Ruby on Rails coding), but I’m not excellent at any of them. I am also somewhat unconventional, as I have yet to learn to write good tests or follow TDD, for example.
I am not opposed to working for a startup, but who wants to hire the self-taught guy with 6 months programming experience when they can hire the guy with years of experience and a comp sci degree to prove it?
I would enjoy freelance work (programming or design) but there are better programmers and better designers out there. I would also be competing for work with international freelancers who charge next to nothing on sites like freelancer.com.
So what do I do? Do I apply for the engineering job I have a slight chance at getting hired for, but will probably hate? Do I apply for programming positions that I am underqualified for? Do I attempt to compete for freelance jobs? I feel like I’m stuck.
I’m pouring my deepest thoughts out to perfect strangers. I would sincerely appreciate any advice and input you can offer. Thanks!
[1] For those of you who are unfamiliar, the General Engineering program is a cross-breed program where students study core engineering principals, but maintain a focus in another area of study (finance, business administration, etc). I chose entrepreurship as my focus.
People become programmers with degrees in philosophy, english literature, french, physics, and any number of other subjects. Yes, you may not have the theoretical backing that a computer science degree holder does, but for 99% of the programming jobs out there, you do not need it, so in practical terms as long as you have passion for learning, it's not a great obstacle.
As far as practical steps - well, if you are just worried about paying bills and getting more experience, start doing contract work. You may not get hired by a company, but you obviously already know enough to be able to bust out simple sites very quickly - and there's always simple work to be found for small businesses, because most people skilled enough to do the work, prefer to work for a steady paycheck, and people who are skilled enough and don't want a company job, usually charge prices that small businesses cannot afford. So there's a nice little niche for students/upcoming developers that they can fit into for the first year or two.
Once you build up a resume of good work and a few references, you can start looking for full-time work, or start charging incrementally more and putting money aside so you can afford to take a couple months off from contract work and focus on monetizing your own projects.
I'd also suggest moving to San Francisco for a year or so - the market and the pay is better here than almost anywhere else in the country, and being a fresh graduate with few obligations, you're at a unique moment of freedom of movement in your life.