With the number of online courses and coding bootcamps out there today, one might wonder how useful a computer science degree is, in an actual job. The learning definitely does not stop once you graduate, and school doesn’t teach you everything there is to learn. But when I look back at my six and a half years of undergraduate and master’s study, I can see just how much of it I still use in my role as Data Scientist and Software Developer!
Studying undergraduate level computer science imparted many technical skills that I use on a daily basis. Some of the skills included, coding and algorithms fundamentals, software best practices, good database design, understanding of IT infrastructure, and technical communication.
One of the most overlooked, yet extremely useful tips I learned was using Google to find the answers you need. I remember the professor of an intro-level course in my very first semester, telling us that if there’s one thing to take away from the course, it is: how to phrase (and rephrase) your problem so you can find solutions to it online. In software development, we always stress not re-inventing the wheel and learning from and building upon what already exists. We can’t remember the syntax of every programming language we learn, nor the methods contained in every library. But we learn the core concepts, and then research the rest.
Besides technical skills, studying teaches you about dealing with uncertainty, employing a systematic problem-solving approach when the answer is not always obvious, as well as the importance of continually learning new skills, which is key to advancing your career, especially in a fast-moving field such as tech.
I also dabbled a little bit in research, going into it in more depth during grad school. That was extremely useful as well! Research is about innovation, about coming up with something new – it can be a new algorithm, a new application, a new approach to an old problem, or even novel analysis. But here too, you always build upon what already exists. To be truly innovative, you need to first understand what’s already out there, and why that doesn’t sufficiently address the problem. As a data scientist, this means reading research papers or technical reports to try to understand the problem, see what approaches have been tried by others, and how we can build on that. At Clir, there are lots of interesting problems to solve, and the solutions are not always obvious. In fact, if it seems easy at first, it’s probably because we haven’t fully understood the problem yet!
Ultimately, school teaches you how to learn. It teaches you the fundamentals of the subject area and provides you with the skills you need to keep building on it. Beyond that, school also gives you exposure, opportunities, and a safe space to explore your interests: perhaps I would not have considered this career path, if not for the people I met and the interesting topics I studied through the course of my journey!