The Student Room Group

computer science/ software engineering help

I am currently a yr11 student and my grades are in the 8-9s. For sixth form, I would like to do Maths, Physics and Computer science. Also, I want to study Computer science at UoB.

When I’m older I want to get into the computer science job sector; etc software engineering, data science however the process seems a bit daunting .

While I am in sixth form, what can I do to increase my knowledge in the field? What is an intership, and how do I get one? What do platforms such as GitHub do? What is leetcode and do I learn it? Finally, what programming languages should I learn (Currently doing python).
Original post by fallxcy
I am currently a yr11 student and my grades are in the 8-9s. For sixth form, I would like to do Maths, Physics and Computer science. Also, I want to study Computer science at UoB.

When I’m older I want to get into the computer science job sector; etc software engineering, data science however the process seems a bit daunting .

While I am in sixth form, what can I do to increase my knowledge in the field? What is an intership, and how do I get one? What do platforms such as GitHub do? What is leetcode and do I learn it? Finally, what programming languages should I learn (Currently doing python).

I'm not a computer science student, but I know a bit about the sector and subject.

I am currently a yr11 student and my grades are in the 8-9s. For sixth form, I would like to do Maths, Physics and Computer science. Also, I want to study Computer science at UoB.
Correct A Level subjects for the degree (Further Maths would be a bonus, but not strictly necessary). I would also consider looking at other unis as well.

When I’m older I want to get into the computer science job sector; etc software engineering, data science however the process seems a bit daunting .
Consider looking to professional certifications. Whilst a degree in computer science is beneficial to help you to get into these areas, it's not the only way in.
Data analyst roles for example won't require you to have prior qualifications, even if a degree is available. Professional certifications like Power BI (Microsoft), SQL qualification (Oracle) tend to help. You can also get individual certifications from specific platforms such as Snowflake, Tableau (I think), etc. Knowing R and Python would also help.
Apprenticeships would also be a nice way in. Should you want to take this route, you can do it after your degree, even though it won't make as much sense as going straight into a grad scheme.

One of the things that you need to be aware of when applying to work in the sector is that the employer can expect you to be the expert jack of all trades and do the equivalent work of say 5 programmers and IT specialists for the one salary. A lot of the job postings are posted by people who might have little to no expertise about the work you do (e.g. you can sometimes be rejected for a role in a programming language that requires you to have 5 years' experience even though the language just came out for 3 years and you're the person who invented the language - seen it before), so you want to suss them out and scroll right pass them.
You need to know your worth, what you bring to the table, and when to say no. However, you also need to be good at what you do.
Do also note that specialists usually get paid a lot more than generalists, even though there are fewer job openings. Just don't specialise too early without knowing what you want to do, overspecialise such that you can't find another similar job, or cut off all of your options.

The people who I follow for such updates include:
https://www.youtube.com/watch?v=DBxgZa6J79I - Mike West
https://www.youtube.com/watch?v=dzemtL1Q1Fc - Joshua Fluke
https://www.youtube.com/watch?v=2dmh4e-px2s - Patrick Shyu
https://www.youtube.com/watch?v=UPO-9iMjBpc - YK Sugi
https://www.youtube.com/watch?v=IMF4S7AV7Uc - Clément Mihailescu
https://www.youtube.com/watch?v=T_XE910ikbw - Rafeh Qazi
https://www.youtube.com/watch?v=XFe10IEg3Qk - Mayuko Inoue
https://www.youtube.com/watch?v=kTz1Odz4q78 - Harnoor Singh
https://www.youtube.com/watch?v=tutguTOhRpE - Andy Sterkowitz
https://www.youtube.com/watch?v=65yjBKfefj8 - Jonathan Ma
https://www.youtube.com/watch?v=-VDXBHLU8q4 - Tuomas Kivioja
There are others, but it might take some time to find them.

While I am in sixth form, what can I do to increase my knowledge in the field?
Do a lot of programming projects. Keep up to date with the sector, which keeps changing all of the time. Attend coding challenges/coding jams (or something equivalent to some computer science olympiad).
The MOOC by Harvard tend to be good. It's called CS50 Introduction to Computer Science (https://pll.harvard.edu/course/cs50-introduction-computer-science)

What is an intership, and how do I get one?
An internship is like a work experience, but it lasts a lot longer than 2 weeks. It's a good way into the industry, assuming the employer likes you, want to employ you, and/or would love to give you a raving reference.
2 ways to get an internship:

1.

network like crazy (highly recommended) and keep an ear out for internships that you can apply for

2.

apply online through as many websites as you can - these are rare though

Internships are very rare though because a lot of companies don't like to hire newbies and train them up - costs money and reduces manpower. If you are fortunate enough to get onto an internship, keep on your toes and make sure you set a good impression.

What do platforms such as GitHub do?
These platforms let you store your work and showcase it to users on the website. It's a good website to show off your portfolio as well as accessing your saved code to work on. Should you need help with anything, the website tend to be great to ask for input from other users.
GitHub is the main one that I would tend to use.

What is leetcode and do I learn it?
A quick google search shows that leetcode is a website that offers you interview practice questions. See: https://leetcode.com/
When you do manage to secure an interview for a job in tech, they would normally throw a number of coding challenges at you to see if you're really as good as you say. As with most roles in the industry, it's less about what qualifications you have and more about your experience and level of skill.
You can boast as much as you want about how good you are, but if you can't pull it off in the coding challenges then your CV goes into the bin all the same. Do note, it's not just about knowing what to do, it's also about whether you can code quickly so being able to think fast and code fast also matter.
These coding challenges are notoriously more difficut for the FAANGM companies i.e. Facebook/Meta, Apple, Amazon, Netflix, Google, Microsoft. If you do manage to secure an interview at these companies, make sure you bring your A game.
See the following video as humour on the above: https://www.youtube.com/watch?v=bn_KRzohcAo

Finally, what programming languages should I learn (Currently doing python).
The languages you learn would depend more on what you want to do.
Python is great for pretty much anything and it's my go to e.g. AI, Machine Learning, general programming, web development, data science, algoprithmic trading, etc. Academia also use this, so expect to learn this in your degree.
Javascript for front end web development, blockchain, and Android apps
C++ and Java for general programming, and they are typically used in academia stil. C++ is used in a gaming engine and algorithmic trading.
C# for gaming engine, even though the language can be used in other things
R for stats and data science
SQL for data
Swift for iOS apps
Kotlin for Android apps
Matlab for uni level math problems and research

Programming languages come in and out of popularity all of the time (usually annually), so you would need to keep on your toes which ones are becoming obsolete and which ones you should learn. Also, a lot of languages keep updating or come out with new versions, so you would never really stop learning in the sector (which is one of the reasons why qualifications don't matter that much or why you need to renew your qualifications periodically).
Not all languages are equally demanded by employers, and some languages are more important than others for specific roles. Typical job postings don't ask for more than 5 languages, so don't go crazy.
Having said that, languages come in 3 types and follow similar structures in their syntax - kind of like how grammar can be similar in foreign languages e.g. Spanish and French vs English and German. This makes learning the languages somewhat easier, but you still need to be aware of the nuances.

See the following sites for example (there are others):
https://mikkegoes.com/14-programming-languages-explained/
https://www.kdnuggets.com/2021/05/top-programming-languages.html - a good website to go to
https://bootcamp.berkeley.edu/blog/most-in-demand-programming-languages/
https://www.simplilearn.com/best-programming-languages-start-learning-today-article
https://www.computerscience.org/resources/computer-programming-languages/
https://www.futurelearn.com/info/blog/what-are-different-programming-languages-used-for

If you want some recommendations for courses and websites for the above languages, let me know
(edited 1 year ago)

Reply 2

Original post by MindMax2000
Original post by fallxcy
I am currently a yr11 student and my grades are in the 8-9s. For sixth form, I would like to do Maths, Physics and Computer science. Also, I want to study Computer science at UoB.

When I’m older I want to get into the computer science job sector; etc software engineering, data science however the process seems a bit daunting .

While I am in sixth form, what can I do to increase my knowledge in the field? What is an intership, and how do I get one? What do platforms such as GitHub do? What is leetcode and do I learn it? Finally, what programming languages should I learn (Currently doing python).

I'm not a computer science student, but I know a bit about the sector and subject.

I am currently a yr11 student and my grades are in the 8-9s. For sixth form, I would like to do Maths, Physics and Computer science. Also, I want to study Computer science at UoB.
Correct A Level subjects for the degree (Further Maths would be a bonus, but not strictly necessary). I would also consider looking at other unis as well.

When I’m older I want to get into the computer science job sector; etc software engineering, data science however the process seems a bit daunting .
Consider looking to professional certifications. Whilst a degree in computer science is beneficial to help you to get into these areas, it's not the only way in.
Data analyst roles for example won't require you to have prior qualifications, even if a degree is available. Professional certifications like Power BI (Microsoft), SQL qualification (Oracle) tend to help. You can also get individual certifications from specific platforms such as Snowflake, Tableau (I think), etc. Knowing R and Python would also help.
Apprenticeships would also be a nice way in. Should you want to take this route, you can do it after your degree, even though it won't make as much sense as going straight into a grad scheme.

One of the things that you need to be aware of when applying to work in the sector is that the employer can expect you to be the expert jack of all trades and do the equivalent work of say 5 programmers and IT specialists for the one salary. A lot of the job postings are posted by people who might have little to no expertise about the work you do (e.g. you can sometimes be rejected for a role in a programming language that requires you to have 5 years' experience even though the language just came out for 3 years and you're the person who invented the language - seen it before), so you want to suss them out and scroll right pass them.
You need to know your worth, what you bring to the table, and when to say no. However, you also need to be good at what you do.
Do also note that specialists usually get paid a lot more than generalists, even though there are fewer job openings. Just don't specialise too early without knowing what you want to do, overspecialise such that you can't find another similar job, or cut off all of your options.

The people who I follow for such updates include:
https://www.youtube.com/watch?v=DBxgZa6J79I - Mike West
https://www.youtube.com/watch?v=dzemtL1Q1Fc - Joshua Fluke
https://www.youtube.com/watch?v=2dmh4e-px2s - Patrick Shyu
https://www.youtube.com/watch?v=UPO-9iMjBpc - YK Sugi
https://www.youtube.com/watch?v=IMF4S7AV7Uc - Clément Mihailescu
https://www.youtube.com/watch?v=T_XE910ikbw - Rafeh Qazi
https://www.youtube.com/watch?v=XFe10IEg3Qk - Mayuko Inoue
https://www.youtube.com/watch?v=kTz1Odz4q78 - Harnoor Singh
https://www.youtube.com/watch?v=tutguTOhRpE - Andy Sterkowitz
https://www.youtube.com/watch?v=65yjBKfefj8 - Jonathan Ma
https://www.youtube.com/watch?v=-VDXBHLU8q4 - Tuomas Kivioja
There are others, but it might take some time to find them.

While I am in sixth form, what can I do to increase my knowledge in the field?
Do a lot of programming projects. Keep up to date with the sector, which keeps changing all of the time. Attend coding challenges/coding jams (or something equivalent to some computer science olympiad).
The MOOC by Harvard tend to be good. It's called CS50 Introduction to Computer Science (https://pll.harvard.edu/course/cs50-introduction-computer-science)

What is an intership, and how do I get one?
An internship is like a work experience, but it lasts a lot longer than 2 weeks. It's a good way into the industry, assuming the employer likes you, want to employ you, and/or would love to give you a raving reference.
2 ways to get an internship:

1.

network like crazy (highly recommended) and keep an ear out for internships that you can apply for

2.

apply online through as many websites as you can - these are rare though

Internships are very rare though because a lot of companies don't like to hire newbies and train them up - costs money and reduces manpower. If you are fortunate enough to get onto an internship, keep on your toes and make sure you set a good impression.

What do platforms such as GitHub do?
These platforms let you store your work and showcase it to users on the website. It's a good website to show off your portfolio as well as accessing your saved code to work on. Should you need help with anything, the website tend to be great to ask for input from other users.
GitHub is the main one that I would tend to use.

What is leetcode and do I learn it?
A quick google search shows that leetcode is a website that offers you interview practice questions. See: https://leetcode.com/
When you do manage to secure an interview for a job in tech, they would normally throw a number of coding challenges at you to see if you're really as good as you say. As with most roles in the industry, it's less about what qualifications you have and more about your experience and level of skill.
You can boast as much as you want about how good you are, but if you can't pull it off in the coding challenges then your CV goes into the bin all the same. Do note, it's not just about knowing what to do, it's also about whether you can code quickly so being able to think fast and code fast also matter.
These coding challenges are notoriously more difficut for the FAANGM companies i.e. Facebook/Meta, Apple, Amazon, Netflix, Google, Microsoft. If you do manage to secure an interview at these companies, make sure you bring your A game.
See the following video as humour on the above: https://www.youtube.com/watch?v=bn_KRzohcAo

Finally, what programming languages should I learn (Currently doing python).
The languages you learn would depend more on what you want to do.
Python is great for pretty much anything and it's my go to e.g. AI, Machine Learning, general programming, web development, data science, algoprithmic trading, etc. Academia also use this, so expect to learn this in your degree.
Javascript for front end web development, blockchain, and Android apps
C++ and Java for general programming, and they are typically used in academia stil. C++ is used in a gaming engine and algorithmic trading.
C# for gaming engine, even though the language can be used in other things
R for stats and data science
SQL for data
Swift for iOS apps
Kotlin for Android apps
Matlab for uni level math problems and research

Programming languages come in and out of popularity all of the time (usually annually), so you would need to keep on your toes which ones are becoming obsolete and which ones you should learn. Also, a lot of languages keep updating or come out with new versions, so you would never really stop learning in the sector (which is one of the reasons why qualifications don't matter that much or why you need to renew your qualifications periodically).
Not all languages are equally demanded by employers, and some languages are more important than others for specific roles. Typical job postings don't ask for more than 5 languages, so don't go crazy.
Having said that, languages come in 3 types and follow similar structures in their syntax - kind of like how grammar can be similar in foreign languages e.g. Spanish and French vs English and German. This makes learning the languages somewhat easier, but you still need to be aware of the nuances.

See the following sites for example (there are others):
https://mikkegoes.com/14-programming-languages-explained/
https://www.kdnuggets.com/2021/05/top-programming-languages.html - a good website to go to
https://bootcamp.berkeley.edu/blog/most-in-demand-programming-languages/
https://www.simplilearn.com/best-programming-languages-start-learning-today-article
https://www.computerscience.org/resources/computer-programming-languages/
https://www.futurelearn.com/info/blog/what-are-different-programming-languages-used-for

If you want some recommendations for courses and websites for the above languages, let me know


Thank you so much for the advice! I will definitely be taking it on-board.

Also with regards to my studies in Yr12, Is it worth doing an enrichment option (etc an AS level, or an EPQ) for the extra ucas points or should i not do one so i have time to work on my programming skills. The UCAS points would help me get into my preferred uni.
Original post by fallxcy
I'm not a computer science student, but I know a bit about the sector and subject.

I am currently a yr11 student and my grades are in the 8-9s. For sixth form, I would like to do Maths, Physics and Computer science. Also, I want to study Computer science at UoB.
Correct A Level subjects for the degree (Further Maths would be a bonus, but not strictly necessary). I would also consider looking at other unis as well.

When I’m older I want to get into the computer science job sector; etc software engineering, data science however the process seems a bit daunting .
Consider looking to professional certifications. Whilst a degree in computer science is beneficial to help you to get into these areas, it's not the only way in.
Data analyst roles for example won't require you to have prior qualifications, even if a degree is available. Professional certifications like Power BI (Microsoft), SQL qualification (Oracle) tend to help. You can also get individual certifications from specific platforms such as Snowflake, Tableau (I think), etc. Knowing R and Python would also help.
Apprenticeships would also be a nice way in. Should you want to take this route, you can do it after your degree, even though it won't make as much sense as going straight into a grad scheme.

One of the things that you need to be aware of when applying to work in the sector is that the employer can expect you to be the expert jack of all trades and do the equivalent work of say 5 programmers and IT specialists for the one salary. A lot of the job postings are posted by people who might have little to no expertise about the work you do (e.g. you can sometimes be rejected for a role in a programming language that requires you to have 5 years' experience even though the language just came out for 3 years and you're the person who invented the language - seen it before), so you want to suss them out and scroll right pass them.
You need to know your worth, what you bring to the table, and when to say no. However, you also need to be good at what you do.
Do also note that specialists usually get paid a lot more than generalists, even though there are fewer job openings. Just don't specialise too early without knowing what you want to do, overspecialise such that you can't find another similar job, or cut off all of your options.

The people who I follow for such updates include:
https://www.youtube.com/watch?v=DBxgZa6J79I - Mike West
https://www.youtube.com/watch?v=dzemtL1Q1Fc - Joshua Fluke
https://www.youtube.com/watch?v=2dmh4e-px2s - Patrick Shyu
https://www.youtube.com/watch?v=UPO-9iMjBpc - YK Sugi
https://www.youtube.com/watch?v=IMF4S7AV7Uc - Clément Mihailescu
https://www.youtube.com/watch?v=T_XE910ikbw - Rafeh Qazi
https://www.youtube.com/watch?v=XFe10IEg3Qk - Mayuko Inoue
https://www.youtube.com/watch?v=kTz1Odz4q78 - Harnoor Singh
https://www.youtube.com/watch?v=tutguTOhRpE - Andy Sterkowitz
https://www.youtube.com/watch?v=65yjBKfefj8 - Jonathan Ma
https://www.youtube.com/watch?v=-VDXBHLU8q4 - Tuomas Kivioja
There are others, but it might take some time to find them.

While I am in sixth form, what can I do to increase my knowledge in the field?
Do a lot of programming projects. Keep up to date with the sector, which keeps changing all of the time. Attend coding challenges/coding jams (or something equivalent to some computer science olympiad).
The MOOC by Harvard tend to be good. It's called CS50 Introduction to Computer Science (https://pll.harvard.edu/course/cs50-introduction-computer-science)

What is an intership, and how do I get one?
An internship is like a work experience, but it lasts a lot longer than 2 weeks. It's a good way into the industry, assuming the employer likes you, want to employ you, and/or would love to give you a raving reference.
2 ways to get an internship:

1.

network like crazy (highly recommended) and keep an ear out for internships that you can apply for

2.

apply online through as many websites as you can - these are rare though

Internships are very rare though because a lot of companies don't like to hire newbies and train them up - costs money and reduces manpower. If you are fortunate enough to get onto an internship, keep on your toes and make sure you set a good impression.

What do platforms such as GitHub do?
These platforms let you store your work and showcase it to users on the website. It's a good website to show off your portfolio as well as accessing your saved code to work on. Should you need help with anything, the website tend to be great to ask for input from other users.
GitHub is the main one that I would tend to use.

What is leetcode and do I learn it?
A quick google search shows that leetcode is a website that offers you interview practice questions. See: https://leetcode.com/
When you do manage to secure an interview for a job in tech, they would normally throw a number of coding challenges at you to see if you're really as good as you say. As with most roles in the industry, it's less about what qualifications you have and more about your experience and level of skill.
You can boast as much as you want about how good you are, but if you can't pull it off in the coding challenges then your CV goes into the bin all the same. Do note, it's not just about knowing what to do, it's also about whether you can code quickly so being able to think fast and code fast also matter.
These coding challenges are notoriously more difficut for the FAANGM companies i.e. Facebook/Meta, Apple, Amazon, Netflix, Google, Microsoft. If you do manage to secure an interview at these companies, make sure you bring your A game.
See the following video as humour on the above: https://www.youtube.com/watch?v=bn_KRzohcAo

Finally, what programming languages should I learn (Currently doing python).
The languages you learn would depend more on what you want to do.
Python is great for pretty much anything and it's my go to e.g. AI, Machine Learning, general programming, web development, data science, algoprithmic trading, etc. Academia also use this, so expect to learn this in your degree.
Javascript for front end web development, blockchain, and Android apps
C++ and Java for general programming, and they are typically used in academia stil. C++ is used in a gaming engine and algorithmic trading.
C# for gaming engine, even though the language can be used in other things
R for stats and data science
SQL for data
Swift for iOS apps
Kotlin for Android apps
Matlab for uni level math problems and research

Programming languages come in and out of popularity all of the time (usually annually), so you would need to keep on your toes which ones are becoming obsolete and which ones you should learn. Also, a lot of languages keep updating or come out with new versions, so you would never really stop learning in the sector (which is one of the reasons why qualifications don't matter that much or why you need to renew your qualifications periodically).
Not all languages are equally demanded by employers, and some languages are more important than others for specific roles. Typical job postings don't ask for more than 5 languages, so don't go crazy.
Having said that, languages come in 3 types and follow similar structures in their syntax - kind of like how grammar can be similar in foreign languages e.g. Spanish and French vs English and German. This makes learning the languages somewhat easier, but you still need to be aware of the nuances.

See the following sites for example (there are others):
https://mikkegoes.com/14-programming-languages-explained/
https://www.kdnuggets.com/2021/05/top-programming-languages.html - a good website to go to
https://bootcamp.berkeley.edu/blog/most-in-demand-programming-languages/
https://www.simplilearn.com/best-programming-languages-start-learning-today-article
https://www.computerscience.org/resources/computer-programming-languages/
https://www.futurelearn.com/info/blog/what-are-different-programming-languages-used-for

If you want some recommendations for courses and websites for the above languages, let me know


Thank you so much for the advice! I will definitely be taking it on-board.

Also with regards to my studies in Yr12, Is it worth doing an enrichment option (etc an AS level, or an EPQ) for the extra ucas points or should i not do one so i have time to work on my programming skills. The UCAS points would help me get into my preferred uni.
Again, I am not a computer science student, so you're better off getting a second opinion from someone who is.

Having said that, I would check the entry requirements of the specific degrees that you want to do. They would tell you whether the extra AS or EPQ would help your application.
If you are going to do the AS, then I would opt for Further Maths.
You can do an EPQ in a computer science subject pretty easily. There's also no end to what sort of computer science project that you can theoretically do

Personally, I would focus more on the grades and the coding projects.

It would all really come down to the amount of time that you have on your hands. Whilst I know maths and physics don't really take up that much time if you study them properly, computer science is something I am not familiar with.
My experience in coding is that it's not usually something straightforward and can take up quite a bit of time if you are not crystal clear about what you should be doing or if you make quite a few mistakes. However, that's only my take.

Reply 4

Original post by MindMax2000
I'm not a computer science student, but I know a bit about the sector and subject.
I am currently a yr11 student and my grades are in the 8-9s. For sixth form, I would like to do Maths, Physics and Computer science. Also, I want to study Computer science at UoB.
Correct A Level subjects for the degree (Further Maths would be a bonus, but not strictly necessary). I would also consider looking at other unis as well.
When I’m older I want to get into the computer science job sector; etc software engineering, data science however the process seems a bit daunting .
Consider looking to professional certifications. Whilst a degree in computer science is beneficial to help you to get into these areas, it's not the only way in.
Data analyst roles for example won't require you to have prior qualifications, even if a degree is available. Professional certifications like Power BI (Microsoft), SQL qualification (Oracle) tend to help. You can also get individual certifications from specific platforms such as Snowflake, Tableau (I think), etc. Knowing R and Python would also help.
Apprenticeships would also be a nice way in. Should you want to take this route, you can do it after your degree, even though it won't make as much sense as going straight into a grad scheme.
One of the things that you need to be aware of when applying to work in the sector is that the employer can expect you to be the expert jack of all trades and do the equivalent work of say 5 programmers and IT specialists for the one salary. A lot of the job postings are posted by people who might have little to no expertise about the work you do (e.g. you can sometimes be rejected for a role in a programming language that requires you to have 5 years' experience even though the language just came out for 3 years and you're the person who invented the language - seen it before), so you want to suss them out and scroll right pass them.
You need to know your worth, what you bring to the table, and when to say no. However, you also need to be good at what you do.
Do also note that specialists usually get paid a lot more than generalists, even though there are fewer job openings. Just don't specialise too early without knowing what you want to do, overspecialise such that you can't find another similar job, or cut off all of your options.
The people who I follow for such updates include:
https://www.youtube.com/watch?v=DBxgZa6J79I - Mike West
https://www.youtube.com/watch?v=dzemtL1Q1Fc - Joshua Fluke
https://www.youtube.com/watch?v=2dmh4e-px2s - Patrick Shyu
https://www.youtube.com/watch?v=UPO-9iMjBpc - YK Sugi
https://www.youtube.com/watch?v=IMF4S7AV7Uc - Clément Mihailescu
https://www.youtube.com/watch?v=T_XE910ikbw - Rafeh Qazi
https://www.youtube.com/watch?v=XFe10IEg3Qk - Mayuko Inoue
https://www.youtube.com/watch?v=kTz1Odz4q78 - Harnoor Singh
https://www.youtube.com/watch?v=tutguTOhRpE - Andy Sterkowitz
https://www.youtube.com/watch?v=65yjBKfefj8 - Jonathan Ma
https://www.youtube.com/watch?v=-VDXBHLU8q4 - Tuomas Kivioja
There are others, but it might take some time to find them.
While I am in sixth form, what can I do to increase my knowledge in the field?
Do a lot of programming projects. Keep up to date with the sector, which keeps changing all of the time. Attend coding challenges/coding jams (or something equivalent to some computer science olympiad).
The MOOC by Harvard tend to be good. It's called CS50 Introduction to Computer Science (https://pll.harvard.edu/course/cs50-introduction-computer-science)
What is an intership, and how do I get one?
An internship is like a work experience, but it lasts a lot longer than 2 weeks. It's a good way into the industry, assuming the employer likes you, want to employ you, and/or would love to give you a raving reference.
2 ways to get an internship:

1.

network like crazy (highly recommended) and keep an ear out for internships that you can apply for

2.

apply online through as many websites as you can - these are rare though

Internships are very rare though because a lot of companies don't like to hire newbies and train them up - costs money and reduces manpower. If you are fortunate enough to get onto an internship, keep on your toes and make sure you set a good impression.
What do platforms such as GitHub do?
These platforms let you store your work and showcase it to users on the website. It's a good website to show off your portfolio as well as accessing your saved code to work on. Should you need help with anything, the website tend to be great to ask for input from other users.
GitHub is the main one that I would tend to use.
What is leetcode and do I learn it?
A quick google search shows that leetcode is a website that offers you interview practice questions. See: https://leetcode.com/
When you do manage to secure an interview for a job in tech, they would normally throw a number of coding challenges at you to see if you're really as good as you say. As with most roles in the industry, it's less about what qualifications you have and more about your experience and level of skill.
You can boast as much as you want about how good you are, but if you can't pull it off in the coding challenges then your CV goes into the bin all the same. Do note, it's not just about knowing what to do, it's also about whether you can code quickly so being able to think fast and code fast also matter.
These coding challenges are notoriously more difficut for the FAANGM companies i.e. Facebook/Meta, Apple, Amazon, Netflix, Google, Microsoft. If you do manage to secure an interview at these companies, make sure you bring your A game.
See the following video as humour on the above: https://www.youtube.com/watch?v=bn_KRzohcAo
Finally, what programming languages should I learn (Currently doing python).
The languages you learn would depend more on what you want to do.
Python is great for pretty much anything and it's my go to e.g. AI, Machine Learning, general programming, web development, data science, algoprithmic trading, etc. Academia also use this, so expect to learn this in your degree.
Javascript for front end web development, blockchain, and Android apps
C++ and Java for general programming, and they are typically used in academia stil. C++ is used in a gaming engine and algorithmic trading.
C# for gaming engine, even though the language can be used in other things
R for stats and data science
SQL for data
Swift for iOS apps
Kotlin for Android apps
Matlab for uni level math problems and research
Programming languages come in and out of popularity all of the time (usually annually), so you would need to keep on your toes which ones are becoming obsolete and which ones you should learn. Also, a lot of languages keep updating or come out with new versions, so you would never really stop learning in the sector (which is one of the reasons why qualifications don't matter that much or why you need to renew your qualifications periodically).
Not all languages are equally demanded by employers, and some languages are more important than others for specific roles. Typical job postings don't ask for more than 5 languages, so don't go crazy.
Having said that, languages come in 3 types and follow similar structures in their syntax - kind of like how grammar can be similar in foreign languages e.g. Spanish and French vs English and German. This makes learning the languages somewhat easier, but you still need to be aware of the nuances.
See the following sites for example (there are others):
https://mikkegoes.com/14-programming-languages-explained/
https://www.kdnuggets.com/2021/05/top-programming-languages.html - a good website to go to
https://bootcamp.berkeley.edu/blog/most-in-demand-programming-languages/
https://www.simplilearn.com/best-programming-languages-start-learning-today-article
https://www.computerscience.org/resources/computer-programming-languages/
https://www.futurelearn.com/info/blog/what-are-different-programming-languages-used-for
If you want some recommendations for courses and websites for the above languages, let me know
Thank you for all these brilliant info! Would you kindly be able to recommend me any good python/java courses to take and any projects ideas i can look at for uni application? Would be very appreciated!

Reply 5

Original post by fallxcy
I am currently a yr11 student and my grades are in the 8-9s. For sixth form, I would like to do Maths, Physics and Computer science. Also, I want to study Computer science at UoB.
When I’m older I want to get into the computer science job sector; etc software engineering, data science however the process seems a bit daunting .
While I am in sixth form, what can I do to increase my knowledge in the field? What is an intership, and how do I get one? What do platforms such as GitHub do? What is leetcode and do I learn it? Finally, what programming languages should I learn (Currently doing python).
Hello @fallxcy,

It's great to see you are thinking ahead and planning for your future!

A great place to start would be speaking with the careers advisor at your school, as they might be able to help you find things like internships. I would also like to share our computer science study guide with you, which covers topics like how to prepare for computer science degree, career prospects, and salary expectations. Based on what you have said, I think this will have a lot of information that is useful to you!

You can read the study guide here - https://bit.ly/3TrrFLd

I hope that this helps!

Thanks,

Becky

Reply 6

Original post by .Qw1Ko_.
Thank you for all these brilliant info! Would you kindly be able to recommend me any good python/java courses to take and any projects ideas i can look at for uni application? Would be very appreciated!


https://automatetheboringstuff.com/
'Automate the Boring Stuff' is a great and free Python course.

https://github.com/Mrinank-Bhowmick/python-beginner-projects
A GitHub repository with a list of beginner projects you can try

Reply 7

Original post by fallxcy
I am currently a yr11 student and my grades are in the 8-9s. For sixth form, I would like to do Maths, Physics and Computer science. Also, I want to study Computer science at UoB.
When I’m older I want to get into the computer science job sector; etc software engineering, data science however the process seems a bit daunting .
While I am in sixth form, what can I do to increase my knowledge in the field? What is an intership, and how do I get one? What do platforms such as GitHub do? What is leetcode and do I learn it? Finally, what programming languages should I learn (Currently doing python).
Here's my honest perspective and some guidance based on my experience in the field:

I graduated this year with a first-class honours in Computer Science and have over six years of experience. The software industry, however, is not as straightforward as many people might think. The job market can be highly competitive, especially for junior developers. I know people who applied to hundreds of jobs after graduating and are still searching, even after months. Many entry-level positions offer lower pay (around £30K or less), and the process of breaking into the industry can be daunting. Personally, despite my experience, I applied to over 700 jobs this year and received responses from only about 20 of them. That said, the job market might look different by the time you graduate, so don't let that discourage you—just be prepared.

To address your questions:

1. What can you do to increase your knowledge?
Start working on personal projects now. Building apps, websites, or small systems will not only deepen your understanding of programming but also give you something tangible to showcase to future employers. Platforms like GitHub are essential for this—it allows you to upload your projects, track changes to your code, and collaborate with others. It’s also a great way to demonstrate your skills to potential employers.

2. What is an internship, and how do you get one?
An internship is a short-term work placement where you gain practical experience in a specific industry. In the tech sector, internships are often paid and involve working on real-world projects. You can apply for internships through job boards, company websites, or by reaching out directly to companies. Many tech companies offer summer internships specifically aimed at students.


3. What is LeetCode, and do you need it?
Yes, LeetCode is vital for your preparation. It’s a platform for practicing coding problems, particularly those related to data structures and algorithms. Many companies use similar problems in their technical interviews. Start using it now to build a solid foundation.


4. What programming languages should you learn?
Python is a great start, but you should branch out to other languages. I recommend learning C++ next, as it teaches low-level programming concepts like memory management and is widely used in competitive programming. After that, Java and JavaScript are good to learn because they’re often used in industry. Understanding at least one strongly-typed language (e.g., C++ or Java) and one dynamically-typed language (e.g., Python) will give you a well-rounded skill set.


5. Degree Apprenticeships vs University
While university is a traditional path, I would strongly recommend considering degree apprenticeships. They allow you to gain practical experience while studying, which is highly valued in the industry. If I had the option at your stage, I would have likely chosen this path.

Finally, don’t be discouraged by the challenges—it’s a rewarding field if you’re truly passionate about it. Start small, keep learning, and build up your experience step by step. The industry is tough, but persistence and preparation go a long way.

Best of luck! Feel free to reach out if you have more questions.

Reply 8

Original post by fallxcy
I am currently a yr11 student and my grades are in the 8-9s. For sixth form, I would like to do Maths, Physics and Computer science. Also, I want to study Computer science at UoB.
When I’m older I want to get into the computer science job sector; etc software engineering, data science however the process seems a bit daunting .
While I am in sixth form, what can I do to increase my knowledge in the field? What is an intership, and how do I get one? What do platforms such as GitHub do? What is leetcode and do I learn it? Finally, what programming languages should I learn (Currently doing python).

It’s awesome that you’re thinking ahead about your future in Computer Science. Your strong grades and subject choices set a solid foundation! To deepen your knowledge in sixth form, start by expanding your coding skills beyond Python. Languages like Java, C++, and JavaScript will give you a broader perspective. Platforms like GitHub help you collaborate on projects, track your progress, and showcase your work. Think of it as a portfolio for programmers. LeetCode is a great tool for sharpening problem-solving skills, especially for coding interviews, so it’s worth diving into. Internships might seem daunting, but they’re just short-term work experiences where you gain hands-on industry exposure. Start small. Look for virtual internships, work experience programs (like those on Forage or Springpod), or even local tech-related roles. You can also explore online short courses on CS50 (Harvard’s free computer science course), LiveX, or Coursera to get a deeper grasp of algorithms, data structures, and web development. Most importantly, build projects. Whether it’s a simple game, a personal website, or a Python automation script. The more you create, the more confident you’ll feel. Try setting up your first GitHub repository today!

Quick Reply