5 Things I Wish I knew When Starting My Computer Science Degree
Tags: computerscience, tips, degree
Published: 2021-09-06 14:45:06

It's September, which means that university courses will start soon. If I could go back with a time machine, I wish I knew these 5 things:

**COMPUTER SCIENCE REQUIRES EXTRA TIME OUTSIDE OF THE LECTURES** 


![time-to-study.jpg](https://cdn.hashnode.com/res/hashnode/image/upload/v1630776048702/9zdN_5Kao.jpeg)

At uni, you are given assignments, and once lectures are finished you spend time working on them. However, I believe that spending some extra hours on top of the time spent working on coursework is extremely beneficial. If you do want to become a strong computer scientist, going the extra mile by reading and researching more is going to benefit you. During my first academic year, I remember hearing one of my lecturers saying that in order to perform well in the course you will need to spend 40 hours a week studying. When I heard that I initially laughed and cried at the same time, but now thinking about it he was right. Computer science requires a lot of effort and patience. 

**COMPUTER ALGORITHMS AND OPERATING SYSTEMS ARE IMPORTANT**


![algorithms.jpg](https://cdn.hashnode.com/res/hashnode/image/upload/v1630874285762/iEwJF7fyS.jpeg)

I've only mentioned two in the headlines, but there are more modules that deserve to be mentioned, such as programming fundamentals, introduction to compilers, computer and communication systems. However, I want to press down on computer algorithms, because you will encounter them many times, especially in job interviews. If you want to work for a FAANG company (Facebook, Apple, Amazon, Nextflix, Google) or a large organization, they do require a great knowledge of data structures and algorithms. I mentioned earlier that computer science requires a lot of time outside of your lectures. Mastering computer algorithms requires practice and dedication. You can exercise data structures and algorithms on websites such as  [HackerRank ](https://www.hackerrank.com/dashboard) and  [Leetcode](https://leetcode.com/). Operating systems, compilers, and communication systems are modules that are going to stay with you for the longest. These classes will make you a better software engineer, and it's one of those key concepts that distinguish a programmer from a software engineer.

**BEING GOOD AT MATHS ACTUALLY HELPS**

![maths.jpg](https://cdn.hashnode.com/res/hashnode/image/upload/v1630874726526/MWp3nOhXa.jpeg)

Your first and second years will involve algebra, statistics, and probability. You will get a lot of help and support on these modules even if you're not from a scientific background, but knowing some maths in advance is only going to help you. Try to quickly refresh your maths skills. This  [website ](https://www.mathsisfun.com/) can help you.

**APPLYING FOR INTERNSHIPS AND PLACEMENTS IN ADVANCE IS A GREAT CHOICE**

![job.jpg](https://cdn.hashnode.com/res/hashnode/image/upload/v1630871879728/W5nXTxpBk.jpeg)

The sooner you apply, the better. Internships normally run during the summer months, from May until August/September. Therefore you want to increase your chances of getting an internship, apply 4 to 6 months in advance. The same rule goes for placements. Try to apply every year. Make use of your university's career department to improve your CV and LinkedIn profile. Try to contact people from your uni who managed to get an internship or placement and ask them for tips and tricks.  [Here ](https://techwithmaddy.com/top-10-websites-for-internship-opportunities) I listed the best websites for internships and placements.

**WORKING PART-TIME AND STUDYING SIMULTANEOUSLY IS TOUGH**


![woking-studying.jpg](https://cdn.hashnode.com/res/hashnode/image/upload/v1630875960189/iiVdmrxIYX.jpeg)

Some people won't need to work part-time either because they live with their parents or because the maintenance loan can cover pretty much all the necessary expenses. Others have no other choice than to work part-time to support themselves. I worked throughout the three years and it's tough. Depending on how flexible the part-time job is, managing university and work requires great time management skills. It becomes particularly stressful close to deadlines, and not all employers are understanding enough to work around your university schedule. The best way to overcome this problem is to plan ahead of time. Normally deadlines for assignments and exams are known weeks in advance. Ask for days off around deadlines, and consider taking annual leave if you need it (sometimes you won't have any other choice!). Try to negotiate with your colleagues as well and help them back in the future when they will ask you for a favor. 

I would like to add some more things that I wish I knew:

- **Eating healthy and exercising can boost your academic performance**: try to eat meals made of single ingredients and avoid fast-food chains such as KFC, Burger King, etc. Try not to over-eat carbohydrates in the morning before the lecture because it will make you feel sleepy. Join a local gym or make use of your university's discounted gym. Walk whenever you can, and remember to take breaks in between lectures.
- The quote **"You are the average of the five people you spend the most time with"** is real. Surround yourself with people who actually want to get the best out of university and who are serious about their careers. 

What tips would you give to someone starting out a computer science degree? Let me know in the comments!