Does University Actually Prepare Students For The Real World?
Whilst researching last month’s Brexit article there was continuous reference to the UK’s dependence on foreign talent to support the tech industry, caused by a widening skills gap in the local workforce. It was mentioned that a potential solution to ease this dependency would be to push the training of the next generation in order to match the industry needs, the question is: can universities do any more?
Every year Zircon offers students from the surrounding universities a position within the company for a placement year, often offering them a full time position upon the completion of their course. This provides them with relevant experiences that can help them with their studies, whilst helping the company keep up to date with new technologies and ideas. In order to try and establish if university is adequately preparing its students for the reality of working in software development, we gathered together a group of our current and former graduates, alongside one of our senior engineers, to discuss their thoughts and opinions.
When asked if they felt that university had adequately prepared them for what they have experienced so far at Zircon, our two newest placement students had mixed opinions. They agreed that elements such as the software development process had been exactly as they had experienced during their studies, as was the concept of working from a set of given requirements.
Where they felt that university had not prepared them was the scale and collaborative nature of the work they were tasked with. This was echoed by our more experienced senior engineers, where it was felt that university does prepare for most aspects of the industry but time and time again students are surprised by the sheer scale of the projects they take part in. It is simply impossible to replicate the elongated timescales and project size, common to software development, in a lecture environment. It is common for students to have no practical experience with the teamworking elements of large project work, such as source control and other document control processes, as they are used to working on their own on small projects where the impact of change does not affect others. There is an acceptance that these elements exist and are used, but the understanding of their importance is often lacking.
Furthermore the understanding of other industry processes can vary greatly from graduate to graduate, and depends greatly on which modules are covered over the course of a year. For example out of our two newest graduates one had a more detailed understanding of the quality control documentation used when compared to his colleague who had never experienced a formal review process. This stems from completing a single unit specific to software development.
Another area where university fails to prepare its students is on the realities of working in a 9-5 atmosphere. Without previous working experience many of our graduates felt that the sudden time restrictions took some getting used to. But with how university is structured and the expectations of self-regulation makes it impossible for students of any subject (not just software and computing) to get a feel for the working environment.
This just shows the placements offered by companies like Zircon not only nurtures the existing skills of its graduates but puts them into a business context and gives them a wider level of understanding that university alone simply cannot provide.
From what we have discovered, our graduates are leaving university with a strong understanding of the theory behind topics such as, teamwork, documentation and defensive programming. On the downside, their ability to implement these theories often falls short of the level expected in real-life.
In order to improve these abilities, when a placement student starts at Zircon we give them a training project to work on before they start on a client project. This tests their abilities and allows us to check their understanding, whilst providing a relaxed introduction to the company and its staff.
One of our engineers, a maths graduate, did not take a software or computing course, like the majority of our staff, during their time at university. As a result they had no preparation for many of the aspects of software development or what was expected of them, and felt a little overwhelmed during the beginning of their time with Zircon. Having a low pressure project to work on helped to relieve these initial concerns, for instance they were able to learn about the Speeded Up Robust Features (SURF) method which was used in a video recognition project Zircon worked on for a client.
For differing reasons, many of our graduates feel that the training project is extremely beneficial. They found that having a senior engineer intentionally trying to identify faults in their code, increased their awareness of the concept of defensive programming. There appears to be no drive to encourage students to consider defensive programming during their university work, pieces of software can be riddled with bugs and still receive a good grading as long as it ticks all the right boxes.
Based on the experiences of our graduates it appears that university has a number of strengths. The areas that our graduates felt most prepared for were the theories that surround software development processes, and their ability to develop a solution from a series of requirements. What it fails to do is prepare students on how, and when to implement these theories. However, given the timeframe and limited resources of a university course it is unrealistic to expect a classroom based solution to this problem, which is why encouraging students to take part in a placement year is crucial in producing exceptionally prepared engineers.
Zircon will continue to encourage and educate those who wish to learn, not only so we are able to continue with our ambition to provide our clients with the high quality bespoke software they desire, but to give others the opportunity to grow and have a brighter future.