By May 21, 2019

Why I Dropped Out Of College As A Programmer (And Made Millions)

When I first started out my career as a software developer, I didn’t have a degree.

I took my first real job when I was on summer break from my first year of college. By the time the summer was up and it was time to enroll back in school, I found that the salary I was making from that summer job was about what I had expected to make when I graduated college—only I didn’t have any debt at this point—so, I dropped out and kept the job.

But, did I make the right choice?

Do you really need a university degree to be a computer programmer?

If you don’t have a degree, you are probably more inclined to believe that degrees are worthless and completely unnecessary—even though you may secretly wish you had one.

So, whatever side you fall on, I am going to ask you to momentarily suspend your beliefs—well, biases really—and consider that both views are not exactly correct, that there is a middle-ground somewhere in between the two viewpoints where a degree isn’t necessarily worthless and it isn’t necessarily valuable either.

You see, the issue is not really whether or not a particular degree has any value. The degree itself represents nothing but a cost paid and time committed. A degree can be acquired by many different methods, none of which guarantee any real learning has taken place. If you’ve ever taken a college course, you know that it is more than possible to pass that course without actually learning much at all.

In today's video, I'm going to talk about why I dropeed out of my computer science major and if you should do the same, as a software developer

Transcript Of The Video

John Sonmez: 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.

About the author

John Sonmez

John Sonmez is the founder of Simple Programmer and a life coach for software developers. He is the best selling author of the book "Soft Skills: The Software Developer's Life Manual."