Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Can a self-taught programmer find a job?  (Read 14025 times)

Imperfect

  • Bay Watcher
    • View Profile
Can a self-taught programmer find a job?
« on: June 15, 2013, 02:07:41 pm »

Long version
IT industry people here, HRs, company owners, anyone else with experience in this field, I seek your counsel! For about a year, I have been teaching myself high school math for an entrance exam to a Computer Science Bc. program. I have studied some programming on my own, I found it quite enjoyable; I got some ideas for a few projects of my own, I overall like the industry and the people in it, so I decided that I want to work in it. At the same time, I was finishing a Bc. in marketing, into which I enrolled earlier mostly out of fear of not getting a job. I had no plans of working in IT then. Today, I found out that all my effort was pretty much in vain, since I failed the entrance exam miserably(38/100). I'm still accepted in another CS program, geared more towards theory, which is undesirable for me, but I need to study in order to have parental support, and thus more time for learning. Thing is, this other program is much more difficult, which is why they let anybody in. Nobody wants to go there. And, well, if I overestimated my capabilities once, chances are I actually did it twice, I just don't know it yet. After today's fiasco, I'm collecting advice from everywhere I can and looking for options. I'd still like to work in IT, and I'll still have parental support for a while, so I can devote more time to studying. After they kick me out of the college, I'll have to start working, presumably in marketing, which I guess is a decent living, but it's just not my calling. So I want to ask you, veterans and professionals who have been there:

Short version
1. Can you even hope to learn to program on a professional level(Maybe I thought I can learn programming reasonably well only because the courses were not advanced enough...) without being able to solve quadratic, logarithmic, and whatnot equations in a blink of an eye using just pen and paper(no internet or some software like they use for these things in the real world), which as basically what the exam was about?

2. Can a programmer without a degree in the field even find a job? If so, how exactly? Most ads just say that they want this or that language or software tool, but what is used to back that up on a resume, excluding work experience which I obviously won't have for the first job?
Logged

Darkmere

  • Bay Watcher
  • Exploding me won't bring back your honey.
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #1 on: June 15, 2013, 03:00:20 pm »

I was in CSC for a year and a half before I changed majors, so you can have the benefit of what little knowledge I gleaned. First off, you need the theory courses like algorithm analysis and discrete math. Writing a program to quick-sort a 25-item list is one thing... managing a business database that needs quick, simple access to thousands of database entries while making sure nothing goes Horribly Wrong is something completely different.

The simple answer is, you're going to need certification in something like Oracle, and the easiest path to that is training sponsored by a company you're working for. The way to do that is... unfortunate, but you're going to need a degree in CSC and hopefully some internship credentials to get a job like that, and be willing to work as a code monkey for low pay for as long as it takes to work your way up. You're competing for jobs against everyone else like you, and if those other people have degrees or certification and you don't, that's a HUGE hole to dig yourself out of.

And for the love of Eris, do some serious checking about the department's credentials BEFORE you enroll. Make sure they're board accredited if applicable. Part of the reason I left was my department wasn't accredited and my degree would have been toilet paper.
Logged
And then, they will be weaponized. Like everything in this game, from kittens to babies, everything is a potential device of murder.
So if baseless speculation is all we have, we might as well treat it like fact.

Vector

  • Bay Watcher
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #2 on: June 15, 2013, 04:57:53 pm »

. . . Not to hijack the OP, but how about if you're a self-taught programmer with a recent degree in pure math?  Basically, what I want to know is, is it the same situation as Darkmere just described?
Logged
"The question of the usefulness of poetry arises only in periods of its decline, while in periods of its flowering, no one doubts its total uselessness." - Boris Pasternak

nonbinary/genderfluid/genderqueer renegade mathematician and mafia subforum limpet. please avoid quoting me.

pronouns: prefer neutral ones, others are fine. height: 5'3".

Darkmere

  • Bay Watcher
  • Exploding me won't bring back your honey.
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #3 on: June 15, 2013, 07:06:44 pm »

Alright, I just had a long talk with a friend of mine who was involved with his company's hiring procedure for a while. He started out as a business major and now works in "business programming" which basically means he works with a team that handles databases for a multinational manufacturing company (no pressure, huh?). For good measure I also dug through some of my old stuff and found a few things I should have mentioned in the first post. So, let's get started.

Imperfect:
Him: Get a degree. The application process is something like 100+ resumes being filtered through a database before a person ever glances at them. There are multiple pages of auto-fail criteria, and #1 on the list is no degree = reject. He also said that the "kind" of degree isn't as important, the degree means you have proven you can be trained and learn things. This ties into Vector's question, below, so bear with me.

Vector:
Him: Math shouldn't be an obstacle. It's "in the right ballpark" and the top-tiered coders he works with tend to have MIS, CSC, or math degrees. You have a great start, the rest is motivation, and picking a path.

Everyone:
Him: There are 3 basic "coder" archetypes that he (and I) could think of.
1) Web design - This is more art than science, and the one least likely to mandate a degree. Instead of a degree, build a portfolio. I have seen someone start up with this, but I don't think that's the intention for this thread. I can expound if needed, just ask.

2) Code Monkey - You sit in a cubicle and write C++ all day. This was my path before I left it, and the one that most closely matches what I described above. The CSC degree will be most important in this, as will the grades you make and your department's credentials. This is mostly applicable to dedicated software houses and software contractors.

3) Business Programming/Corporate applications - Data management for a company. Here is the great emphasis on familiarity with corporate software suites (Oracle, SQL, etc.), as well as having *a* degree (more below), and an added requirement of being able to communicate in business lingo and function in corporate politics. I'm assuming from context that this is what Imperfect is asking about. Vector, if you are interested in one of the other fields let me know and I'll clarify in a separate post.

Corporate IT doesn't mandate a particular degree ("We have an English and a Philosophy major on staff" he says), as long as you are willing to put the work into getting certifications in the software suites your company uses. This is something you need to know about the company before you commit to; different companies have different methods and hiring practices. By far your best chance of success is making a personal contact in a company (job fairs!) and trying to leverage that into an internship early.

Oh, and internships are huge. Apply early, apply often, don't get too attached to summer vacation. That was a mistake I made, don't be me.

General notes:
(Him) Everyone starts as a code monkey.

(Me) Don't limit yourself to *only* applying for what you want to be when you grow up. I was pegged for a coding job at a company where I'd applied for a technical editorship position. Don't limit your options - you can always try to shift around internally later if you like the company you wind up with.

*EDIT* Blah, I forgot the most important part. If you don't like CSC but really want to go into business IT, check to see if your university has a MIS (Management of Information Systems) degree. It's a mixture of the business lingo and schmooze and the grounding in corporate software and theory that you'll need for a big boost in the industry. Lots of CSC folks ended up there at my school, and more than a few went on to be pretty successful.
« Last Edit: June 15, 2013, 07:10:33 pm by Darkmere »
Logged
And then, they will be weaponized. Like everything in this game, from kittens to babies, everything is a potential device of murder.
So if baseless speculation is all we have, we might as well treat it like fact.

Skyrunner

  • Bay Watcher
  • ?!?!
    • View Profile
    • Portfolio
Re: Can a self-taught programmer find a job?
« Reply #4 on: June 17, 2013, 10:36:17 am »

Darn, this thread is scaring me >_>
Logged

bay12 lower boards IRC:irc.darkmyst.org @ #bay12lb
"Oh, they never lie. They dissemble, evade, prevaricate, confoud, confuse, distract, obscure, subtly misrepresent and willfully misunderstand with what often appears to be a positively gleeful relish ... but they never lie" -- Look To Windward

MorleyDev

  • Bay Watcher
  • "It is not enough for it to just work."
    • View Profile
    • MorleyDev
Re: Can a self-taught programmer find a job?
« Reply #5 on: June 18, 2013, 01:30:45 pm »

Your best bet without a degree are newer places with more modern attitudes. Especially places that follow agile practices and use pair programming, since it makes it easy to learn on the job whilst also encouraging everyone to know a bit of everything so starting knowledge is less important than capacity and willingness to build up the knowledge. Techniques are more important than tools.

You get the widest range of experience the fastest, but you have to be able to pair. It is a lot more social a coding experience, since it's using two people's brains and encouraging them to disagree and debate their way to the best solution. If you can show you know how to program, that you can pair, and that have a good head for it, those places are more likely to look your way.

Where I'm working at the moment I'm technically a mixture of 2 and 3. I code, and I occasionally have to break out the SQL knowledge for talking to the database. But without the cubicles  since it's an open plan office where the programmers pair program. There's no formal training, instead you get paired with someone who knows more than you about the system and technologies and pulled up by your bootstraps until you learn enough to be considered an equal (which happens surprisingly quickly).

A lot of people with degrees are entitled idiots who can't program for shit, don't have a good understanding of how to program, aren't actually interesting in learn or the crafts and just want the money, and think you should give them a job just because they drank their way through three years of university.

 A lot of companies that care about employing the passionate and talented are sick of the endless such graduates, and so tend to stop using degrees as an entry criteria. It's sad but pretty true that a degree's only value is to make employees look at your CV, everything else you learn on your own time and on the job. Odds are good you will be sat down and given some kind of coding challenge as part of an interview, two kinds of those:
1) They observe and discuss with you as you do the challenge.
2) They leave you alone and tell you to make X happen.
Guess which place is going to be the better company to work at?

The added benefit of this is I'm of the opinion that the "stick you alone in a cubicle in a dungeon on a boat on the other side of the city" companies are worse places to work. When the software product is the backbone of the company, the programmers should be centre stage.
« Last Edit: June 18, 2013, 01:52:34 pm by MorleyDev »
Logged

Tellemurius

  • Bay Watcher
  • Positively insane Tech Thaumaturgist
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #6 on: June 18, 2013, 01:49:53 pm »

Certification is the only few ways out from getting a degree in the CS world. Experience is still largely looked for but they still would want some type of paper that proves you know the basics. Since im borderlining between IT and CS heres things to help you. If you want to continue into IT and programming without a degree look into database programming certifications. PHP, Oracle and SQL are all needed in the field whether for business or webhosting and they are certified from CompTIA, Oracle and Microsoft respectively. All of them certify for most of the programming languages but its going to be a long road also. You would need A+ and Network+ certifications as requisites to get into them since all of them deals with server work. As of right now im currently on the bottom of the tech pool doing support for a software company, i only do bug testing as a side for a hobby. I don't want to do main programming but i would want to get into database as theres alot more stretching room.

nenjin

  • Bay Watcher
  • Inscrubtable Exhortations of the Soul
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #7 on: June 18, 2013, 02:33:14 pm »

I'd just echo the sentiment to try smaller software companies. The culture here at my company is very informal, degrees and experience highly appreciated but not necessarily required. (It really depends on how busy we are and whether we feel we have the time to bring a new/nascent programmer up to speed.)

At smaller companies, the fact you were motivated enough to teach yourself may get your foot in the door. Small companies LOVE self-motivated employees. Many live or die by them.

Larger software companies and corporations, without a degree or at least certification, good luck. Not only is it a filtering process, in a sense it's also about legal liability.
Logged
Cautivo del Milagro seamos, Penitente.
Quote from: Viktor Frankl
When we are no longer able to change a situation, we are challenged to change ourselves.
Quote from: Sindain
Its kinda silly to complain that a friendly NPC isn't a well designed boss fight.
Quote from: Eric Blank
How will I cheese now assholes?
Quote from: MrRoboto75
Always spaghetti, never forghetti

alway

  • Bay Watcher
  • 🏳️‍⚧️
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #8 on: June 18, 2013, 02:56:48 pm »

Degree hardly matters. Our department advises us to list the 'education' section of our resume at the very bottom. Employers want to know your skills; they want to know what you are good for and whether they could put you to use. Skills go at the top; where you got them doesn't matter. It's a plus to see a degree, as it shows you have your head screwed on straight enough to at least stick with long-term goals, rather than wandering off.

Quite frankly, the real value of a degree is industry contacts. Coming out of RIT, I graduated with people who work at Microsoft, Sledgehammer Games, Zynga, and a variety of other big name companies; along with dozens of small ones. As a direct result of those contacts, I've had interviews with all three of those. Then there's faculty. My first internship was handed to me, literally without a technical interview, simply on the word of a professor. I've had another several interviews for internships through similar industry contacts. As one student was talking about, a professor made a comment on facebook, and suddenly he watched in amazement as several big names in the industry responded; pretty much a full list of his childhood game designer icons. As he put it, it was like walking down the street, looking down an alleyway, and seeing a meeting of The Justice League. That said, RIT does much better than most universities in career services. We have a 3/4 year work experience requirement to graduate, so the university is financially invested in helping us find jobs (poor graduation rate = low rankings = less revenue).


Now to build on what was said before: Portfolios. Our major, Game Development, all but requires them. You may not think them all that relevant, but let me guarantee you this: Employers do. If you do any sort of graphics programming, UI, ect, it is absolutely required if you want to be hired. For non-graphical work, make one anyway. If an employer gets 2 resumes of about equal quality, and one has a URL for a portfolio website with detailed descriptions of what they've done in the past and their role in projects, that resume is instantly more valuable. Make sure it's well designed and engaging, showcasing your expertise and areas of interest without time-wasting, overly adjective-ridden, redundant, and simply hard to read fluff distractions. Make it shiny, because HR people are even less willing to spend time on your web page than most people.
Some portfolio examples:
http://mculek.blogspot.com/  <--- guy who, last I heard, worked on MS's DirectX team
http://people.rit.edu/jja2535/ <--- some random dude
When it comes down to it, a resume alone simply can not stand up to those without outclassing them entirely through experience. A lot of employers won't look at them immediately; as early stages of hiring are often up to HR people, but for the latter stages, make sure you point them to your portfolio; particularly when they ask for details about projects mentioned on the resume. Explain the details, but also let them know there are more details and such on the portfolio website if they want detailed info about a variety of projects.

As for a resume, skills at the top, work experience or projects next (order of these 2 depends on which is more relevant/impressive), education at the bottom.

Another thing which can help a lot is going to professional conferences. For graphics programming, that means SIGGRAPH. For game development, it's GDC. Just be sure to treat people there like people and like colleagues. Begging someone for a job just annoys/pisses them off; asking about their work and the technologies and such they work on will get you contacts/friends in the industry who you can later follow up on for job leads; either for their company or those they know of. Find conferences like those, and if you can, go to them.
Logged

GlyphGryph

  • Bay Watcher
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #9 on: June 19, 2013, 12:17:38 am »

Certification is the only few ways out from getting a degree in the CS world. Experience is still largely looked for but they still would want some type of paper that proves you know the basics.

They'll know you know the basics because you'll submit code samples, include references to past works, and pass the employment test.

A degree is a wonderful thing to have for CS... if you have nothing else. It will get your foot in the door. But it's a head start, nothing more for the majority of jobs you'd actually want to work ever. And it is nothing, absolutely nothing, compared to having specialized knowledge in a useful subfield, which is almost always something they don't actually teach at University anyway. (The low quality of CS degree holders in the US and how little they know of value is a big reason why so few places care, in my experience)

This isn't to say you don't need education - you just don't need a degree. You'll still be expected to put in at LEAST two years of effort building up your skills, gaining experience, and learning something well. DON'T do this blind - spend some time getting to know the area you want to work, look at what's in demand compared to the supply, and figure out what the requirements are for those jobs, and then get them (they will almost always be skill and experience requirements, so this involves getting skills and experiences)

Joining an open source project is probably one of the best ways to get those skills and experiences, in a public venue that employers can easily see. Writing and releasing your own software, especially utility software of some sort (NOT games) is another option. Hell, write an app an you could make some money off of it in addition to building up your resume.

You don't need a degree, but you do need /something/ to convince people you're worth hiring. (and those are all things that those pursuing a degree should be doing as well!)
Logged

Tellemurius

  • Bay Watcher
  • Positively insane Tech Thaumaturgist
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #10 on: June 19, 2013, 12:32:48 am »

Certification is the only few ways out from getting a degree in the CS world. Experience is still largely looked for but they still would want some type of paper that proves you know the basics.

They'll know you know the basics because you'll submit code samples, include references to past works, and pass the employment test.

Of I never argued with experience, most of my experience was me tinkering with a router and the family computer but i was able to pull enough information to what that is and how to work that and with that i was able to pass most of my interviews well. the only one i hate was the mac interview, cause i didn't know about the command button at the time but don't care that im able to change file permissions and get into the terminal ::)

GlyphGryph

  • Bay Watcher
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #11 on: June 19, 2013, 06:16:14 pm »

I... have no idea what you are trying to say there.

Anyway,
Every decent job I've applied for will require you to write a program for them to their specifications before they will even be willing to interview you, and will likely require you to right ANOTHER program (in a short amount of time, though this will generally be implementing some straightforward algorithm) during the interview.
Logged

Tellemurius

  • Bay Watcher
  • Positively insane Tech Thaumaturgist
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #12 on: June 19, 2013, 06:19:36 pm »

I... have no idea what you are trying to say there.

i was rambling about experience at 1 am at night, i have no idea what i said :P

WHAT that should say is Experience is still alot more valuable than anything in the tech industry.

Imperfect

  • Bay Watcher
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #13 on: June 24, 2013, 04:12:38 pm »

Wow, that's lot of good info in here! Thanks you guys! About the smaller companies - This week, I went to a little conference of sorts about recruiting people, organized by a ~180 employees website building company that prides itself on generally being the exact opposite of your archetypical bureaucratic corporate meatgrinder, with people from several other companies being the guest speakers. The requirements they generally had on new people seemed pretty daunting to me,  but I guess that if I put in enough work, I'm bound to get a lucky break somewhere, given enough time.
Logged

TeleDwarf

  • Bay Watcher
    • View Profile
Re: Can a self-taught programmer find a job?
« Reply #14 on: June 27, 2013, 06:50:52 am »

Long version:

1. A programmer without a formal education CAN find a job. One of my best (in a professional, not personal sense) leads had no formal education.
2. You cannot learn *good* programming without practice. Working under an experienced lead makes you gain experience faster, but it is still possible to gain experience on your own by doing your own projects. The key here is that you need to code daily. You need to pursue a big, giant, unfathomable project to learn what not to do.
3. Exams like that target to measure your mental capacity. Of course you will rarely solve some complex stuff with just pen and paper (on the other hand it is ridiculous if you need a calculator to multiply 7 by 8). But majority of human population is incapable of memorizing/understanding even a small set of rules, by solving mathematics you can prove that you can actually think about abstract stuff, and thus you can be taught.
4. Never go where everyone else is going: when you will arrive all the cookies will be long eaten. Hard and complex stuff is good: Mind can and should be honed and trained. The more you think the bigger/stronger your brain will be.
5. Parental support is overestimated. Hunger is the best stimulus. I actually learnt programming and started working as a programmer when I fall in love and my expenses became 500% of my income (I had to impress my gal).

Short version:
Go for the harder course. Start working. Either as junior programmer or on your own project. Get rid of parental(or any other) support.
Logged