I'm currently in a 4-year degree program at the University in British Columbia in Canada, about 2.5~ years in. I'm unable to do the Co-op program there at the moment, but I'd still like to get some kind of CS job related experience this summer, but I'm unsure what kind of jobs there might be like that (even if there's any at all).

If not, is there anything else that I might be able to do that would help give me more related experience? I've recently started a hobby project and intend on starting another one this summer as a means of fleshing my resume out, but I have no previous workplace experience in a CS setting.

I realize this question is slightly specific to my location, but I'd appreciate any kind of advice about the matter.

-- Edit --

The reason I'm unable to do co-op this summer is because of my relatively poor grades during first year an part of second year. I pulled my grades up and now I'm getting average grades or better, but the folks at the Co-op office want me to complete this term with the same grades, which is completely understandable.

  • 1
    The reason for being unable to do a co-op internship might be useful. Are there just no positions available? Do you lack funds or transportation? Are you required to stay at home for some reason? Doesn't need to be too specific, but the gist of it might help people avoid suggesting other things that you'd be unable to do for the same reason(s).
    – Caleb
    Apr 13 '17 at 1:42
  • Why not just ask some local software or IT companies if you can work there for free over the summer for experience? Apr 13 '17 at 10:14
  • 2
    @ayrtonclark I wouldn't start off with the "for free" part. See if you can get paid first. But yes. Also, talk to your professors about potential opportunities (either in research or through contracts in industry).
    – user45590
    Apr 13 '17 at 13:47
  • @ayrtonclark - I'm no expert in labor laws, but I think there are plenty of states or countries that don't allow unpaid internships. Apr 13 '17 at 21:18

I would start by checking with your university to see if there is any on campus job opportunities. There might be some technical jobs that you can incorporate programming into.

I would also like to second dan1111's comment to your original post. Professors might know of opportunities with other faculty that isn't posted online. For example, perhaps a biology researcher needs help analyzing data using perl/python/R scripts. Perhaps a professor wants to update a grading website or online class material. Obviously, they probably won't pay as well as formal co-op's, but it does provide experience and additional professor references in the future.


1) Find companies hiring for positions that work near your career job.

When I was still in school, I searched for companies that offered positions I'd be interested in after graduation (web developer in my case) and applied for lower, part-time positions that I was qualified for.

My hope was that I could perform well while I was there, learn a few things by osmosis that would help with my career, and then apply for career jobs within the company if/when they came available.

In my situation, I was able to find a computer repair company that also did web development and was able to secure a part-time job fixing computers. I expressed enough interest in development that management allowed me to take some menial, tedious tasks off of the Web Coordinator's plate. A little staff turnover, a little earned respect, a little luck, and one whole year later I was running their web design department.

My point is that it's possible to find companies - especially smaller ones - that are looking for a jack of more than one trade. If you apply for a lesser position that works near the position you'll want after graduation and express interest in making their lives easier, you'd be surprised how much experience you'll walk away with.

2) Start your own projects

One of the awesome things about CS is the fact that there's a TON you can do from home with limited equipment and experience.

Depending on what your eventual career goals are, you could do something like learn how to write mobile apps and build a few apps that meet some imaginary business needs. You could pretend your favorite fast food chain has asked you to redesign their website and build something you think would really look good. You could get a group of school friends together and work on building a simple video game. Getting friends involved is actually a great way to stay accountable and keep from procrastinating.

What you'll end up doing is gaining a crap-ton (that's measurable, look it up) of experience with different technologies and building out a portfolio you can show a potential employer.

Not the answer you're looking for? Browse other questions tagged .