Going back to school for computer programming
March 19, 2014 5:39 AM   Subscribe

Barring any unexpected dream jobs arising in the meantime, I will be heading back to school in September for a 2 year college diploma program in 'computer programming'. What are the job prospects for this qualification? I am in Canada.

I live in Southwestern Ontario near what is more or less the Canadian version of Silicon Valley. This is the program I will be enrolled in. My partner is in software development, but he has a degree from a prestigious Canadian university in the field, so his experience will likely be very different from mine.

I fully accept that I won't be working for Google or anything like that, but how attractive is a 2 year diploma to smaller tech companies? Or, how common is the attitude of 'If we can't hire the best in the field with the sexiest qualifications, we will hire no one at all.'?
posted by torisaur to Work & Money (22 answers total) 15 users marked this as a favorite
How common is the attitude of 'If we can't hire the best in the field with the sexiest qualifications, we will hire no one at all.'?

Not at all common. If there's an opening, they'll hire the person who can best fill it.

Your program sounds comprehensive enough, but you'll need to work your TAIL off in getting internships and working on projects so that you have real-world experience on your resume.

Programming is one of those things, if you can do it, you can do it. If you can't, you can't. Money talks, bullshit walks.

So do the program, learn as much as possible and take as many opportunities as you can to get that real world experience.

If your area is full of programmers, and lots of jobs, you should be fine. Start networking NOW, I worked in the Silicon Valley in California and jobs are usually filled with recommendations from folks already working there. Hang out at User Groups, join Women in Programming clubs. Be friendly with your classmates. Make connections!

Good Luck!
posted by Ruthless Bunny at 5:53 AM on March 19, 2014 [1 favorite]

No matter what they throw at you in school, make sure you learn one or more of the programming languages most in demand in the area you want to work. It wouldn't hurt for you to dive into something like C# or Java right now rather than wait until levels 3 and 4 in your curriculum. You could do that with self-study or sign up for a summer course or online course.
posted by pracowity at 6:11 AM on March 19, 2014 [4 favorites]

I work for a small and growing tech company. We just hired two people into full-time junior positions after a six-month stint as interns. Both of these people had gone through a vocational training program, and I think neither has an undergraduate degree. Yesterday we brought on two more interns with the same qualifications, and the expectation is that in six months, after a lot of hard work and learning on the job, they will be full-timers.

YMMV, but there are lots of non-traditional routes into the software industry aside from the typical four-year degree with a CS major. It is one of the few professional white-collar fields today that are fairly welcoming of competent amateurs looking for a full-time position.

However, in many companies, especially the larger, more successful ones (Microsoft, Google Amazon, etc.), you will find that there is a glass ceiling. Without a masters in CS/software engineer it may be difficult to rise beyond a certain level, to become a senior architect or some other position of technical leadership. This is mostly true in giant companies that have their pick of the best people in the biz, though. Smaller companies, especially outside of industry hubs (SF, Seattle, NYC) are much more accessible.
posted by deathpanels at 6:16 AM on March 19, 2014 [1 favorite]

I think you should focus less on how attractive the DIPLOMA will be and more on how attractive the SKILLS you learn will be. If you can acquire programming skills, you'll likely be employable. (And you know what? You almost certainly can. It's not all rocket science.)

Do you have a previous degree? Are you going to be able to test out/place out of any of those classes like "College Reading and Writing"? Because some of those classes seem like a waste of time, to me, for someone who's looking to become a software developer (unless they're coming straight out of high school). I don't know that the value of the diploma (as opposed to just taking some of the classes) is going to outweigh the time and money you'll spend on them.

As for the glass ceiling (which is absolutely a thing) there's nothing stopping you from going back for a masters in CS later, if you decide it's worth it to you.

(I'm a new working software developer with no CS degree. There's a lot I still don't know. I'm learning a lot of it as I go.)
posted by mskyle at 6:19 AM on March 19, 2014 [4 favorites]

I'd take a very serious look at the kinds of places you might work after graduation, and make sure to spend plenty of your own time working on projects geared that way, in languages that will be in demand. C#/Java are big and important for larger companies; on the other hand, most of the people I know who broke into programming through 'non-traditional' paths (ie, not a CS/Comp Engineering 4-year degree) in the last few years have come in through some flavor of web development. Regardless of the coursework in question, I'd definitely make sure you pick up some Ruby or Python, some HTML & CSS, and as much javascript as you can. I write Java professionally, but it's not "hot and cool" any more, and the kinds of companies working with it extensively are a lot more likely to be huge traditional companies that would be more put-off by your lack of a 4-year degree. But small companies that'd be more open to non-traditional routes are also going to value hard skills over formal education and diplomas.

This isn't about getting a diploma in Computer Programming, it's about building your skills as a new developer. Obviously your classes are going to be a big element of that, but don't lose sight of the goal here; it's not to get a piece of paper, but to make yourself an attractive employee to actual companies by showing them what you can do.

Caveat: I'm an American, and not sure how different things might be where you are.
posted by Tomorrowful at 6:21 AM on March 19, 2014

Forgot one thing in my response:
Or, how common is the attitude of 'If we can't hire the best in the field with the sexiest qualifications, we will hire no one at all.'?
Programmers tend to be pretty pragmatic people. Personally, I don't care where somebody went to school. If they can't answer my questions in an interview, or if I wouldn't want to work with them for some other reason (ego, general douchiness, irrational hatred of some language/technology that they will have to use in their position) then I will tell my employer not to hire them. I know for a fact that we have turned away people with fancy backgrounds in math and science from prestigious universities who couldn't answer a basic data modeling question. Qualifications don't mean shit.
posted by deathpanels at 6:23 AM on March 19, 2014 [2 favorites]

I'm a hiring manager at a successful multinational software company. I do hiring in the US and the UK.

Your qualification is nothing more than a way to make it through a recruiter's filter, and most recruiters have lousy filters. You'll get much better job offers through professional and personal contacts.

What others have said about skills is *key*.

The number of programmers who can't program is a never-ending shock to hiring managers. In my experience, self trained people who've worked hard to learn a lot and build a lot of experience are vastly more qualified for programming jobs than people with masters degrees in CS.

You'll want to get a github page for yourself, and get a few projects up on it. Find a few open source projects you could contribute to.

Learn the whole stack. Get really good at SQL. If you're interested in web, get really good with javascript, and learn HTML and CSS well enough that you can talk about them like an informed engineer, and not a designer who's had to pick them up.

And as others have said - network, network, network. Do you have friends who program? Ask them to invite you and some of their workmates to lunch, ask lots of questions, and then add them to your LinkedIn.

Good luck!
posted by colin_l at 6:28 AM on March 19, 2014 [7 favorites]

If you want, memail me and I'll send you my script for a technical phone screen with entry-level candidates.
posted by colin_l at 6:29 AM on March 19, 2014 [1 favorite]

Public sector IT here. In contrast to private sector, public sector IT hiring (in Canada) does seem to be more and more about the actual piece of paper, and I'm seeing more and more ads that say 'have CS degree' to even get in the door to get an interview. Private is probably your best bet, therefore, with the pragmatic approach recommended above.
posted by Mogur at 6:30 AM on March 19, 2014

I recently posted an ad for a programmer position and I was inundated with applications, many from people with 4-year CS degrees from University of Toronto, Guelph, or Waterloo. Like most programming hiring mangers, I would rather have someone who actually has the right skills, as determined in interviews. But interviews are time-consuming and I'm going to start with the people who look best on paper first.
posted by grouse at 6:35 AM on March 19, 2014

Apropos of what grouse says about starting with the people who look best on paper first - that's what makes networking EXTRA important for non-CS-degreed developers.
posted by mskyle at 6:57 AM on March 19, 2014

Response by poster: There is a similar program which is 3 years + 16 month co-op option between year 2 and year 3. I'm not getting any younger (which is why I originally went for the 2 year one), but it sounds like the real world experience/networking opportunities might be valuable enough to make up for the extra year of study.

Thanks for all the great answers so far!
posted by torisaur at 8:16 AM on March 19, 2014

Is there any chance you could do something like the co-op outside of the program? Could you just do the 2-year program and then get an internship? You really, really don't need three years of school to become a developer.
posted by mskyle at 8:18 AM on March 19, 2014

seconding the github account. there are many facets to working as a programmer that you will (probably) not experience much in class. one of those is using version control for your source code. git is a very popular tool for this, and github is where all the cool kids hang out and share their projects.

set up an account and get used to the workflow. if you aren't comfortable having your initial work public, use a pseudonymous name, or pay for private repos.

having an active github profile will mitigate not having a four year degree.
posted by lescour at 8:20 AM on March 19, 2014

Every company I've worked for or interviewed with* hasn't given a flying crap about where I went to school. Furthermore I haven't given a flying crap about where anyone I interviewed went to school. All that matters is can you code, and can you do it in a way that gels with the company.

Write lots of code. Thats gives you the best advantage you can get. Write stupid little games, contribute to open source projects, definitely get a github account and post what you make. Get and give help on StackOverflow.

When you finish school and start interviewing, you want to have something to talk about. If all you've done is classwork, you're not going to have a lot to talk about.

* Google was the exception; they used to have a major thing about graduate degrees and high rated schools. I feel like that's changed in the last few years.
posted by jeffamaphone at 8:25 AM on March 19, 2014 [1 favorite]

Here in Silicon Valley I can think of lots of other programmers that I've worked with who have either:

1) Not finished a four-year Computer Science program (typically leaving early to go work in the field).

2) Graduated with a completely different degree (I worked with a programmer with a philosophy degree from Princeton).

I can't think of a single other programmer I've worked with with a two-year degree. I'm not sure the credential itself will do you any good whatsoever. If it helps you learn new skills, great, but I sort of doubt anyone's going to be real impressed by the degree.
posted by tylerkaraszewski at 9:34 AM on March 19, 2014 [1 favorite]

Even at a place like Google, your degree will help you stand out among other applicants for technician positions. A skilled and knowledgeable technician is appreciated by engineers and that type of job may be a way to get experience while you develop a broader career path.
posted by pantufla_milagrosa at 9:43 AM on March 19, 2014

Github is fine and all, but it also suffers from being a resume-padding dumping ground for half-baked projects. If you're going to start a Github project, make it something actually useful, like a testing tool or a Chrome plugin to enhance a forum like Metafilter.

As others have said, being able to actually write a program to solve a problem – and to reason about that program while you are writing it, and to eloquently explain that reasoning to another human being – is the key skill.
posted by deathpanels at 10:38 AM on March 19, 2014

Response by poster: To clarify: I have a BA and an MA. This is a 'second career' sort of thing.
posted by torisaur at 10:50 AM on March 19, 2014

Nthing that your 2 year program is only a start. You won't get hired based on that alone. You're going to have to do a lot of work outside the program, build up some level of real work you can refer to and be able to answer on the spot interview questions.
posted by cnc at 11:32 AM on March 19, 2014

You sound pretty unexcited and you have some time until school starts. Look at what other programmers are doing, talk to programmers, and you may find that it's a large field, with lots of different types of things to work on. There's probably some stuff going on that will get you a bit more energized.
posted by theora55 at 12:17 PM on March 19, 2014

Based on where this school is, are you willing to move after graduation? The K-W area is over saturated with programmers and tech workers do to the death of RIM. Many people have left the area (myself included) but there are so many people with ties to the community that they are taking lower level positions at local tech companies. I suggest two things. One, do the co op option. Real world experience is everything. Two, take a look at the employers around you and make sure your skills will suit the positions available.
posted by saradarlin at 7:47 PM on March 19, 2014 [1 favorite]

« Older need to find reasonable pricing for Business...   |   Deleted scene featuring the characters playing... Newer »
This thread is closed to new comments.