What's up?
John Somnez here from simpleprogrammer.com.
Why I dropped out of college as a programmer and yet I still ended up making millions of
dollars.
So stay tuned and get ready to ask your questions in the comments, because I know there's going
to be a lot of them.
I'm John from simpleprogrammer.com, and welcome to the place on the web to learn how to be
a better software developer, more specifically, how to un-nerd yourself, be a cool software
developer, and learn those social skills that you need to really succeed in your career.
So today what I'm talking about is dropping out of college.
So, I dropped out of college.
I went to college only for a year, and I'm going to tell you kind of my story, I'm going
to tell you how I did that, and why, you know, it might make sense for you as well.
I went to college, and I went to a university called Boise State University in Boise, Idaho,
okay, and I went there pretty much right out high school.
I stayed in the dorms there.
It was a good time.
It was fun.
I got into a little bit of trouble.
But I went in as a CS major, okay, and before then I had been doing a lot of programming
on my own, right?
I think I started off, the very first programming ever I did was... ever I did, was [inaudible
00:01:20] computer like in grade school.
I remember making the classic 10 go-to... you know, write, hello.
This never ends.
20 go to 10.
Run.
And it just goes and goes and goes, and that was, you know, that was when I was hooked
on programming, when I realized I could just make all the computers say random shit in
an infinite loop.
And so that's how I got started.
Later on I ended up creating my own mod, taking the source code from a mod and learning C,
just kind of teaching myself C and C++ by looking at C code.
It was not the best way to do that, but there was no internet back then, not really.
There was very little.
There was no real world wide web, okay?
This is going to date me a bit, but I had, like, Telnet, all right?
There was like, Mosaic was just kind of coming on to the scene, but there was nowhere you
could find, like, C++ resources, okay?
Even the library was pretty light on that, okay?
But I taught myself some C. I finally got some C books and some C++ books.
So I went to college, went to university, first year, enroll in a Java course, and I
know some Java.
And it is just boring as shit, okay?
It is like, we're using iterators.
I still remember.
And we're, like, learning how to write enumerations and use iterators to go through loops, and
then we're doing like a fucking sorting algorithm.
And it's just really, really complicated, really tedious shit, and I'm like, where's
the fun here?
I want to make some games.
I want to build some applications.
I want to, like, do all of the shit on just trying iterate through a damn loop in Java,
okay?
And so that was my kind of first experience with the school and with university.
And then I had all these other classes.
I had a mathematics class, and then I had all these other classes I had to take.
And all I wanted to do was code.
I didn't want to do all of this bullshit.
I just wanted to code.
I only had one class that was coding, really.
Another one was, like, Operating System Theory and things like that, and that was kind of
interesting, but really I wanted to become a better programmer.
That's what I came there for.
And so I went through the first year, and honestly my grades were not that great, especially
in the CS course.
I just wasn't motivated, didn't want to do the work.
Eventually I ended up just saying, okay, well, fuck, I'm just gonna do the best I can, and
did a good job on it, of course, and passed through.
But I ended up going to a summer job, okay?
And so when the semester was over...
I needed to get a job for the summer.
So I actually interviewed at HP as a contractor for this contractor position, and it's kind
of funny how I got the job, is, one of the, it was a testing/programming job.
And the two guys that were like the leads for that, they interviewed me and they started
asking me questions about testing, a little bit about programming and whatnot, even though
they didn't really have much programming knowledge, but then they started asking me if I ever
heard of a game called EverQuest.
I was like, yeah, I've heard of that.
They're like, well, do you play it?
And I said, well, you know, no, but I'd like to.
Like, would you play it?
And I'm like, yeah.
I'd play it.
They're like, okay.
You're hired.
They wanted just another EverQuest buddy.
So I got into that job.
I mean, obviously I was qualified for the job, but that ended up becoming really the
deciding factor, was, could I get along?
And it's kind of a lesson for you guys that are looking for a job, is that it's not all
about just having the technical skills and being qualified for the job.
A lot of it is, like, you're gonna be working with these people every day.
A lot of your coworkers you're gonna see more than anyone else in your life, and so a lot
of it is a good fit, right?
So when you're going for an interview, think about really getting the interviewer to like
you, right?
You're going to have to be friends, because you're going to be working with that person,
and that's a lot of what they're going to consider.
We have this bias, right, where we will basically view someone in a more positive light if we
like them, right?
It's, the halo effect kind of, you know, is people that we find attractive, but it's still
the same type of concept, right?
If an interviewer likes you, even if you bomb the interview, like if you're not as good
technically, right, they're gonna find reasons why, oh, you know, why you really did answer
that question, even though it wasn't quite right, or, they're basically going to come
up with reasons why you're better than you are, and if they dislike you, they're gonna
do the opposite.
You could ace an interview, and if an interviewer dislikes you, they're going to come up with
all kinds of reasons why you're not a good fit.
What ended up happening was, I got this job, okay, and I ended up getting promoted up to
a programming test position where I was writing test cases, like programming tests in, what
was it, like, PCL and PostScript, right?
And then a little bit of C, like, batch scripts, that I was writing these batch scripts, like
corn shell scripts and whatnot.
And so I ended up getting a better job there right during the summer that was paying pretty
well.
And I think it was paying at the time, it was like, you know, 25 bucks an hour, which
was, like, what, 50K a year or something like that.
And at that time, that was what I expected to get out of college, right?
Basically I was left with this choice.
I was like, okay.
I can go back.
I can go to school.
In fact, when I was in that CS class, I was seriously thinking about switching my major
to IT Systems because I did not want to go through more computer science if this was
what computer science was going to be, was this boring fucking shit, doing algorithms
and creating sort algorithms and all of this shit, right?
Instead I wanted to write games.
I wanted to write software.
I wanted to do something interesting.
I was making about as much money as I expected to make out of college, right?
At that time, you could kind of expect to make 40 or $50,000 a year out of college.
That was, like, a pretty good salary, maybe $60,000, right, if you're lucky, and that's
it, all right?
And so I had this dilemma.
I said, okay.
Well, I'm already making this money, and I'm climbing up, I'm getting experience, and I'm
actually coding!
Every day I'm going to my desk, and I'm writing fucking code, whereas when I go to school,
what am I doing?
I'm doing stupid classes and I'm doing stuff that is not really, like, it's more theoretical,
right?
It's not actually writing code.
I was writing production code that was going into printers and that was testing printers
at HP.
To me that was a no-brainer.
So, I ended up basically saying, okay.
I'm going to drop out of school, and I'm just going to go down this road.
I could have gone to school, right?
Maybe I could have learned some more and become a better developer and had some stronger roots,
but I would have then got out of college and then I would have been looking for a job,
and I would have probably been taking a very similar job to what I had then, right?
Because if you're fresh out of college, you're not going to get a senior developer job.
You're going to get a basic junior or an entry-level or an internship type of job, okay?
So that was my choice.
Otherwise, I could continue what I was doing, and for the next three years, instead of work
my way up at the company that I was working for and continue to gain experience, and by
the time that my peers that were going through the CS major got out of college, I would already
have three years of actual solid work experience, and I'd probably be in a much better position.
What ended up happening as that I think about a year later, not even a year, I got an offer
for a job to work at Xerox, because I had now some printer experience and I understood
printer languages, which was a rare specialty, rare thing that most developers didn't have,
so they offered this job making $75 an hour in southern California.
So I packed up my shit.
I moved to southern California.
And now I was making, like, $150,000 a year at, like, 19, 20 years old, okay?
And so it just went on and on from there.
So that was a much, much better choice.
So, again, I'm not saying that necessarily you have to drop out of college, okay?
But I'm telling you why I did.
I didn't just listen to people that said, oh, you need to go to school.
You need to get a college degree, all right?
And I'll tell you, when I did that, my parents were not too happy about that, all right?
A lot of people thought I was an idiot, but I ran the numbers.
I did the math myself.
I realized that I didn't need this degree.
Now just to wrap up the story, I did end up going back to college.
I went back to college but I did night school.
I did like a remote correspondence school, and I got my degree from a university called
ACCIS.
I think they merged with, like, Sentinel University.
They're not accredited, okay, so it wasn't even an accredited degree, but, you know,
I figured, hey, I might as well get a CS degree, and I went through and I did all the courses,
and it was super easy, because I already was, you know, a C++, I was already like a senior
software engineer and expert in C++ at the time, and so I probably knew more than the
professors did, because I had a lot more applicable work experience than the professors, so it
was a breeze to get the degree after that, but, you know, it never, it was just a paper.
It never really served me.
It didn't really help me in my career.
What did help me was actually being good, being a good programmer and having the knowledge.
That's my story.
If you haven't already, click that Subscribe button down below and join Simple Programmer
if you're interested to hear more about my satyr and my career and stuff and how I made
millions of dollars as a software developer, definitely click the Subscribe button, because
there's a lot more stories coming.
I've got a really good book that you should read called The Complete Software Developer
Career Guide.
It is the most comprehensive book there is on a software developer career.
I guarantee that I specifically wrote the book to be that, and it's an 800-page book.
Hope you enjoyed that story.
I'll talk to you next time.
Take care.