3 ms·
I have 2 years of a BA in Economics. I started teaching myself programming when I was 18, starting the summer before undergrad. I got an internship at a startup
by heynk 12y ago
I have 2 years of a BA in Economics. I started teaching myself programming when I was 18, starting the summer before undergrad. I got an internship at a startup as a "Biz Dev/Marketing intern" and mostly produced content, but I did a lot of data-driven blog posts (like pricenomics posts), which allowed me to get into their codebase and database and sort of integrate myself at a very slow pace. I would 'fill in' for baby programming tasks like adding Google Analytics event tracking to a button. I kept creeping away from Marketing and towards Code and after 6 months I was 100% a "programming intern". At that point I was still a beginner but I definitely provided value to the team. After another 4 months my boss once said "If you want to work here full time, you can". 2 weeks later I was bored and annoyed in class so I dropped out and took him up on the offer.
After that, it's smooth sailing. Once you have just one job as a "software engineer" people don't pay much attention to the education part of your resume. At this point, your perceived quality is based pretty much entirely on past projects - this means both open source projects and your past employment history.
During interviews, employers will be hesitant to believe that you have strong fundamentals (which is usually true), and they may push a little more than a CS student. Even though employers readily admit that 'implement a sort function' isn't real life, they will ask you to do it because they just want to know that you have a grip on things like O Notation (this comes up pretty much every time) just so that you know how to actually 'think' about a program and give a thought to performance, as most self-taught programmers don't. I've only been rejected by one company that interviewed me, and during those coding interviews I admitted to having no idea what I was doing while writing a sort function (even though I did write a bubble sort) and had pretty much no knowledge of O Notation. They said they were 'looking for someone more senior' and they were right at the time. So basically, just know that even if you are a very pragmatic programmer who can build anything, you will still be tested on fundamentals and it is important.
I should mention that I got my first internship through HN's "Who's Hiring" thread. Those are the type of companies you should shoot for.