How to gain computer science experience?
May 17, 2007 8:36 AM   Subscribe

What should a recent computer science graduate, who is currently job hunting, do to gain the experience almost every potential employer is seeking?

Today I have officially graduated with a B.S. in Computer Science from Temple University. I can't say my degree has prepared me for any specific field, but instead has left me with a broad foundation with which to build upon. My grades have always been good and my professors have confidence in my ability; however, I feel that my lack of experience is going to make it difficult to land a job.

Stress is starting to take its toll because I don't have a stable source of income and am hesitant to apply for a "regular" summer job in case I do get hired. Perhaps I underestimated how difficult this process was going to be.
posted by hcastro to Work & Money (29 answers total) 9 users marked this as a favorite
 
Your very first stop should like be the career development department of your alumni association. Googling turned up this.

Personally I've always found it a little difficult to get hired during the summer months, which is traditionally a slow time in the IT industry. You may want to take a summer job just to get through to the fall when it may be easier to get hired. Keep your ears opens and use your network of contacts over the summer to see who's looking for people (and what they're looking for).

In terms of gaining experience, that really depends on what you want to do. Working with and eventually contributing to a related open-source project would be an excellent entry on anyone's resume.
posted by flipper at 8:45 AM on May 17, 2007


Look at very large companies in your field--IBM, EDS, CGI, etc--they'll all have entry level programs for new graduates where they won't expect you to have experience. The fact that you've already graduated and apparently haven't been looking is a bit problematic, since a lot of them hire for graduation during the last few months of the school year.
posted by jacquilynne at 8:46 AM on May 17, 2007


Did you do any internships during your time at Temple?
posted by dr_dank at 8:51 AM on May 17, 2007


To get experience you need experience. welcome to the working world :(

I graduated from college last year and was floored by how difficult it was to get a job. Admittedly, I had a much less useful degree. You may have no trouble at all. But I would count on at least six to eight weeks of unemployment and be prepared for a lot more.

Do not use Craiglist. Do not email your resume to people. It is like dropping your resume into an electronic trashcan. You have to pick up the phone, buy stamps, pay visits. A badly advertised job is going to get dozens and dozens of emailed responses from people more experienced than you are. I'd say I got one bored or apologetic response for every fifty emails I sent.

Do investigate temp agencies. I know it sounds crappy, and it is, but a temp agencies will get you work much more quickly than you can get it yourself, and you will learn a lot bouncing around from place to place every week about the sorts of environments you want to work in and the sorts of places you don't. Oftentimes, temp agencies have temp-to-hire arrangements with companies. That is how I got my current job and believe me it's much better than anything I was going to get myself (even if I am still your sad-faced bureaucrat). You may want to get contracted with two temp agencies because they occasionally treat you like crap and will leave you without work for weeks. So when one is being cranky, call up the other. This way you can still be relatively busy until you do find something more exciting.

You may also want to think sooner rather than later about going back to school. I think it will be difficult to get a really satisfying job without more education. A good old BS does not really cut it anymore.
posted by bluenausea at 8:53 AM on May 17, 2007


I would ask your professors - or any other contacts you can muster - for places which might take you on as an intern - find an organisation you think you would enjoy working with and call them up. Be cautious about wasting too much time talking with vapid HR departments, responding to over-subscribed adverts in print or submitting your resume to online job agencies. Dig up a copy of "What Color is Your Parachute" and look over its job hunting advice.
posted by rongorongo at 8:53 AM on May 17, 2007


My first questions when interviewing people are: What programming languages have you learned on your own? What do you like about LanguageSelfFoo, versus LanguageSchoolBar? Suppose you have to write a program to do [complex task], what language do you know that is worst suited to the task, yet is still capable? Here are some computers with varying OSes and environments, which you can choose from; now write it.

So, my answer is: Show that you're interested in programming. If it's not your hobby, I'm going to wonder why. How many times can I search the open source world and find your name in credits for bug finding, fixing, and et c.? Show that your knowledge transcends the specifics that your classes insisted you know. Be able to point to something and say "I made that because I love to program."
posted by cmiller at 8:57 AM on May 17, 2007


Congratulations!

Be willing to take contract and temp work - it is a slow time right now, many companies have fiscal years ending at the end of June and don't have budget left to buy anything or hire anyone. Or they have budget to burn and are going to blow through a last project before they lose what's left but aren't going to hire anyone permanently. Get your face in a company, make a good impression when you get in the door, and that can either lead to a permanent position or good references.

I don't know anything about your area, in this market (DFW) there are plenty of junior admin and it/support specialist positions that you could probably get. If you got certs while you were in school - CCNA, MCP or MSCE for example - play it up. If you didn't, now might be a good time if you can swing the cash, even if you're a barista for the duration. If you are a geeky geek rather than a theoretical geek, you should be able to at least read an A+ book and take that test. That particular certification doesn't mean much once you have experience, but fresh out of school it can't hurt. It'll show you willing to get more, too.
posted by Lyn Never at 9:05 AM on May 17, 2007


Even though I find his advice aimed above the entry-level/recent grad arena, Nick Corcodillos' book Ask the Headhunter has some solid ideas.
posted by dr_dank at 9:07 AM on May 17, 2007


Oh, and I've found that in our industry (on both the hiring and seeking sides), you have to use Monster, Dice, Careerbuilder, etc. Stamps and mail will get you nowhere. You will be found by keyword searches, so make sure you get every applicable term on your resume.
posted by Lyn Never at 9:07 AM on May 17, 2007


Be prepared for a bit of harshness:

The technology job market right now heavily favors applicants over employers. Your CS degree immediately gives you a bit of leverage in any entry-level job. Honestly, you missed the boat by waiting until now to look for work, and that's the plain simple truth of it.

however, I feel that my lack of experience is going to make it difficult to land a job

Do you know this empirically, or is this just your "hunch"? It sounds to me ("I feel... is going to...") like a broad excuse you're applying to feel better about your situation.

A summer job is better than no job. Have you gone to a headhunter?
posted by mkultra at 9:08 AM on May 17, 2007


You may also want to think sooner rather than later about going back to school.

But I don't know if I'd recommend CS grad school (I'm about to defend my thesis and I'm starting to think I should have gone to law school). This is 5 years old, but I think it's still pretty accurate (here's a more recent WSJ story on the topic.)
posted by transona5 at 9:11 AM on May 17, 2007


You may still be able to qualify for internships even after you graduated. For the most part you will need to start at the very bottom of any career path and that includes temp work and contract work. Searching job postings for entry-level jobs and being patient is all you can do now. Your school probably has some kind of job bulletin board system too.

Like someone else posted above, many of your peers have probably already had 1 or 2 internships under their belts and began the job search last semester. Not having an internship on your resume hurts, but its not something that you can't get over with a little persistence.
posted by damn dirty ape at 9:20 AM on May 17, 2007


jacquilynne has it spot on. These companies do not expect college hires to have experience. They know you just got out of college and are very unlikely to have any experience. I work for one of the companies she mentioned, and got hired right out of college (along with ...well... all of my classmates) with no experience, so I should know :)
You should definitely be looking for jobs through your college. That is where the entry level jobs will be listed. Additionally, if your college has strategic partnerships with any companies, try to use that connection to get an in.

And, some unsolicited advice for when you do get a job, as well: the hardest part of the real world is sitting at your desk for 8 hours and not complaining about it (much). 2 years and counting, and I'm still having trouble with that!

To sum it up, you should not have too much difficulty getting an entry-level college hire position, unless you interview poorly (so, get interviews and practice!)
posted by odi.et.amo at 9:35 AM on May 17, 2007


Job hunting is very hard. Prepare to deal.

To sharpen your chops, pick an Open Source project that piques your interest. It's not only a good way to raise name recognition, but it'll sharpen your skills to a razor point.
posted by unixrat at 9:41 AM on May 17, 2007


I used to interview engineering applicants at Google. When I was interviewing someone relatively new with little work experience, I'd ask them about other projects they've worked on. Did you do any interesting large programming projects in a class? Did you take a "practical programming" course as opposed to a math course? Have any open source things you like to hack on?

I like to hire people who are passionate about computers, who got a CS degree because it was the obvious thing to do since they were going to be computer nerds anyway. If you're like that you have done some interesting things on the side. Emphasize those.
posted by Nelson at 9:48 AM on May 17, 2007


Hmm... six months ago my company would have killed for a smart CS grad with no experience. Couldn't find one, but we did fill the position. I'd caution against immediately jumping into the suffocating embrace of a large corporation. I did, and consider those three years after college wasted, as far as my progress in software programming goes. Somehow it's just assumed that big corps are what CS grads should go to (because they easily can I guess), even though those jobs are utterly boring, will not use most of what you learned, or give you any opportunity to be creative.

Things are really hopping right now in NYC silicon alley, and probably in other cities as well. Don't be chicken. Move into a city. Do use craigslist (wtf?). Write good, impassioned emails to only the jobs you really want, and you'll hear back. You will find a job, seriously. Even people without the huge asset of a CS degree and good grades from a good school manage to, so quit your whining, child! (Kidding.)
posted by Doctor Barnett at 9:50 AM on May 17, 2007


Response by poster: @flipper
I have tried to contact career development services, but they are reluctant to help students that haven't gone through their screening process. Unfortunately their screening sessions ended back in early April. Looking into contributions for open-source projects is a good idea that I hadn't considered.

@jacquilynne
Clearly I made a mistake in not jumping into the job search at the beginning of the school year. I regret it, but will make sure to learn from my mistakes.

@dr_dank
Unfortunately I haven't. I didn't feel as though I was qualified enough for an internship position until midway through my junior year. I had 2 potential internship positions then, but wasn't able to meet their hours requirements because of all the credits I was taking in order to graduate in four years.

@bluenausea
I'll look into some temp agencies, even though it seems you are relatively unhappy with your current situation.

@rongorongo
I have spoken to my professors. I have a feeling that when I do finally land a job it will be through them.

@cmiller
Thank you for the detailed advice. I can't say programming provided much enjoyment early in my college career. However, now that I've gotten a chance to apply my knowledge toward more meaningful applications, (especially web development) it has been much more enjoyable.

@Lyn Never
Certifications are something that my more respected professors have discouraged. It may not be a bad idea to look into that area further. At the least it will show initiative.

@mkultra
It may be a slight excuse, but the reason I say it is because I see some of my friends who have been messing with computers since they were little kids; I didn't have any significant programming experience until my first semester at Temple. When I apply for a job or when they ask me questions, I can't help but think to myself why they would hire me over someone with the same degree but years of experience.
posted by hcastro at 9:58 AM on May 17, 2007


while (willpower != null) {
try { everything(KitchenSink x); }
catch (StayAtHome loser) {loser.addToWelfareQueue(Ramen r);
continue;}
}
posted by East Manitoba Regional Junior Kabaddi Champion '94 at 10:07 AM on May 17, 2007 [1 favorite]


When I apply for a job or when they ask me questions, I can't help but think to myself why they would hire me over someone with the same degree but years of experience.

Well for one, you'll be cheaper. 2nd, some companies only hire at the bottom end and do promote from within. 3rd, in some people's eyes, you'll be "mold-able" into the type of employee that they want.

And for future people who find this thread earlier in their college years, I recommend Co-Oping highly. Its a great way to get experience as well as validate your career choice or at least the focus area of your career. Plus you get paid a lot better than your friends who are working food service.
posted by mmascolino at 10:09 AM on May 17, 2007


Response by poster: @transona5
My sharp friends, who I have mentioned earlier, have also suggested against graduate CS.

@damn dirty ape & odi.et.amo
Thanks for the reassurance.

@unixrat
Something that I regret not considering. Very good idea.

@Nelson
Thanks for the detailed information.

@Doctor Barnett
That is part of the why I have been so stressed. I see students who barely made it through the program get hired and wonder how it was possible. I severely underestimated the job market.
posted by hcastro at 10:10 AM on May 17, 2007


Response by poster: @East Manitoba Regional Junior Kabaddi Champion '94
What package contains KitchenSink? I can't find it in the Java API.

@mmascolino
'Mold-able' doesn't seem very promising.
posted by hcastro at 10:14 AM on May 17, 2007


The job market for CS grads is booming here on Vancouver Island (in Canada), so it must be in the US. Getting a job will take six months or so, so why not take that summer job? In the meantime, be strategic. Approach the job search with the end in mind, rather than taking the first job where someone accepts you off the internet or from a stack of resumes.

My advice is to look for smaller shops of less than 50 employees, and also look for tech companies specializing in a niche market, such as manufacturing or engineering products. There should be plenty of work. 100% of the time their products or services involve software of some sort

Choose the company you want to work for by choosing the outcomes you desire:

1) work in software
2) gain experience
3) make more money than at a summer job
4) work on technolgy X

You should probably work hard to master the Agile development process, and develop your skills as a leader and possible manager.
posted by KokuRyu at 10:22 AM on May 17, 2007


I should actually say that I would recommend CS grad school, if you're funded, as a way to be paid to work on exciting problems with an unbelievable amount of freedom. But not as a means to getting a job.
posted by transona5 at 10:29 AM on May 17, 2007


Keep in mind that there are few entry-level jobs in the computer field that will give you computer science experience. The best you are likely to get is programming experience.
posted by kindall at 11:51 AM on May 17, 2007


Best answer: A lot of what's involved is pure luck. Contrary to what a lot of people are saying, I used craigslist and dice.com (dice is awesome) and got an perfect job at a startup, doing exactly what I want to do, and getting paid a ridiculous amount of money (I just got a 20% raise after less than a year). However, I believe I am the exception to the rule. The most important thing is networking. Make lots of friends, hook up with your old CS classmates that you still talk to. NYC is super-hot right now, and our company is looking to fill at least 8 positions and not finding anyone, because there just aren't many people out there looking for jobs. Have you been coding in your spare time? If you aren't, you should be. Learn a niche language, like Python or Ruby. Everyone knows Java or C++, and those people are boring. Don't bother with grad school, unless you want to eventually be part of the academia. As far as your immediate monetary means, go ahead and get the summer job in the meantime. Rent ain't gonna pay itself, and you can always quit if you find something better. With your resume, make it ONE PAGE, and emphasize the things you've learned and any leadership skills you have. Keep it concise. I also sent out all my resumes with a customized cover page, explaining why you want the job, what you have to offer, and who you are and what you enjoy. I applied for at least 50 jobs before I started getting any sort of bite. Thats all I got. Send me off an email if you have any further questions, or if you want to see what my resume/cover page looked like.
posted by Mach5 at 1:40 PM on May 17, 2007 [1 favorite]


'Mold-able' doesn't seem very promising.

Well, that could have negative overtones but spinning it positively, they want to teach you good habits from the get go.
posted by mmascolino at 2:17 PM on May 17, 2007


There was a time when a grad could walk out the door with a handful of offers to choose from. Today's grads apparently have to actually search for work. Breaks my heart.

Listen, even small companies hire grads for a number of reasons, not the least of which is that even decent programmers are hard to find. Anybody who is sharp and can learn fast is welcome at most places. I've been at several start-ups and have had very good results with rookies.

I agree that you should do some home projects to show that you can get stuff done, by which I mean ship it and not just fiddle with it.
posted by trinity8-director at 5:25 PM on May 17, 2007


I'd say if you're really having trouble getting interviews, I'd take a job that gives you a lot of spare time, and implement a feature for an open source project. Doesn't have to be big or fancy but get it in there and you'll have something to talk about on your resume and in your interviews.

It's too late for you to get a summer internship, but I know there are companies out there that have fall internships. That might be an option if you want to get your foot in the door, although I assume a lot of them are for continuing students.
posted by crinklebat at 5:53 PM on May 17, 2007


I've worked with too many kids out of college who think they're brilliant, have unrealistic opinions, question every damn requirement, and challenge every decision because they know some C++ and scraped a CS degree. I'm not suggesting you're such, just saying. Ask around a few project managers and technical leads in the real world and you'll find 'mold'ability, flexibility, willingness to learn and take direction, and knowing when to keep one's mouth shut are very positive attributes for new junior hires.

In my experience of hiring, technical ability, although always important, has always come after passion and attitude. Do something to prove yours. It doesn't have to be huge, brilliant, original, or even finished, just something that demonstrates your commitment to growing as a developer. Just do something to show you are what you say you are and be able to talk about it.

Why did you choose that project? How did you solve that problem? Why did you choose those tools? If you were starting again, what would you do differently? How would you improve the design? How would you measure the success of the solution? What resources did you turn to when you hit a block? What could you have done to make the implementation process more efficient? How did you track bugs and control changes? If you had to hand it all off to another developer, how would you document it? What did you learn from it all?

You don't have to be paid to get experience.
posted by normy at 8:14 PM on May 17, 2007 [1 favorite]


« Older Smart mailboxes with only unreplied messages?   |   When, if ever, do I try to repair this... Newer »
This thread is closed to new comments.