Why is Work Experience Important to Computer Science Students?

By 10th February 2014 4 Comments

Following on from last months “Why is blogging important to computer science students“, I thought it would be right to discuss some of the other important factors of gaining a job after you have finished studying.

While industrial experience can come in many forms, one that I undertook last year was a full year in industry meaning I was working Monday to Friday (9 to 5) from June 2012 to June 2013. Unfortunately, not all students can take a year out from university to do an internship placement between their second and third year, but there are always opportunities for students to do summer placements, contractual work or even self-publishing (which if done correctly is definitely something you should put down on your CV).

Black Marble

Black Marble

Robert Hogg (@RobertHogg) and Steve Spencer (@sdspencer) from Black Marble came down to the university to chat about their experiences with developers and project management, something that most students won’t experience until they get into the industry.

This is where some industrial experience comes in handy. I was lucky enough to work at Seed Software, a company internal to the computer science department at the University of Hull, which not only gave me the skills as a developer to code in a working environment but provided me with an in-depth knowledge of project management and methodologies to use thanks to Chris Preece, Seed’s manager.

One thing that Robert said in his presentation when talking about development methodologies was it doesn’t matter which one you pick, just pick one and use it, and this is true. If you do it now, you’ll be ready when it comes to managing your final year project in your third year.

Another skill that comes out of any industrial experience will be testing in some form. At Seed Software, we were taught to add unit tests into the software we were developing. This is one thing that in Robert and Steve’s presentation was touched on. The worst part about it was, when they asked who in the audience actually implemented unit tests into their projects, it was only a group of masters students and I who actually put our hands up.

Unit testing

Unit testing isn’t all that bad.

While testing isn’t really covered by any module in our department (as far as I know), it is something that a student will need to know when they get into the industry. Black Marble even put their graduate/junior employees through a year of testing to give them the experience of doing it and to also improve them as a developer by learning from mistakes made by yourself and others. It is a team effort after all.

Which then brings me to the last point which again, Robert kept bringing up in the presentation. It is a team effort. Students feel that pairing up with their buddies to work on a project is great team work because you all know each other but in the real world, you’ll be entering a job in a company that has at least 20 or more other members of staff (not necessarily all developers) that you don’t know.

What doesn’t come naturally to most computer scientists is our ability to socialise with other people. Yes, you may be able to chat about computers and your development projects with your other computer science buddies, but when it comes to you talking to anyone else… We won’t go there.

Famous Seed Away Day

Famous Seed Away Day

A year in industry at Seed definitely put me in a zone of discomfort but it was for a good purpose, Chris assured me. When I came out of the year though, a lot of people started telling me how much more lively I was and chatty. Being able to talk to people who aren’t technical is a skill that every computer science student needs because when you get into that dream job, you’re going to have to meet and talk with clients. No awkward silence allowed.

To finish up, really all I can say is if there is an opportunity, whether it be an internship for a summer, a whole year or even someone offering you a chance to do some work for them, take it while you can. Some people can go on and get a job without doing any personal or professional projects but I bet you anything, they will struggle when they start working.

Trust me, you’ll enjoy the experience now and it will pay off when you start applying for jobs!

Join the discussion 4 Comments

  • Joshua Moon says:

    As far as modules that cover Unit Testing go, the concept and theory is covered in the third year module, Advanced Software Engineering, along with various other testing mechanisms; although this section is assessed by paper test, so no real practice comes into play here.

    It is however part of the ACW marking scheme and module for Component Based Architectures in fourth year, where it is put into practice alongside the use of mocks, and fakes for proper coverage.

    It’s a shame that it’s not introduced earlier and more prominently in the course though.

    • James Croft says:

      One problem with this is that Advanced Software Engineering is only available for students on the CSE course meaning that anyone on straight CS or games cannot take this module. It should be taught to students in their second year which is a real shame.

  • josh says:

    I just love the fact mike has long hair

  • jamie g says:

    great read

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.