How to prepare for coding interviews

While many steps in the employment process are universal to any role you may apply to, applying for a role as a software developer, or any coding-related job for that matter, you may be expected to do a coding interview. 

This article explains what a coding interview is, what you might be expected to do in them, why you might be expected to do them, and some resources to help you prepare for them. 

What is a coding interview? 

At some point following an initial interview, you may be asked to do a coding interview. This is notorious for being one of the hardest parts of the interview process. During a coding interview, you will be given a task to do within a limited time frame. You might be observed by an interviewer as part of this and expected to explain your programming choices as you go. 

Why do I have to do a coding interview? 

While the purpose of an interview is typically to get a feel for who a potential employee is as a person and if they will fit within a team, a coding interview does the same but to get a feel for who you are as a programmer. It helps determine what your skill level and programming style is like. This is essential as they will want to know what kind of code you might be contributing to their projects. 

Coding interview resources 

There are numerous different resources to help you prepare for coding interviews, the only issue is that for many of them you must pay to use. I’ve collated some free resources that I recommend checking out to hopefully lend a hand when this stage of the interview process comes knocking 

Codewars 

Unsurprisingly, one of the best ways to practice for a coding interview is to code. But rather than working on your larger projects, it is important to try to solve lots of “bitesize” coding problems.  

An excellent resource for this is Codewars.  

Codewars is a platform that helps you learn, train and improve your coding skills by solving a range of tasks at varying difficulty levels. These challenges are called Katas and are specific to the languages and areas you want to focus on.  

You can find these challenges on the Codewars page or if you subscribe to their Weekly Coding Challenge newsletter, you will receive weekly emails with a selection of tasks to solve. 

All the challenges can be completed within the IDE provided on the Codewars website so you could complete them while on the go without your computer. Here is an example of one of their challenges: 

This is a relatively easy problem but nicely lays out how Codewars works. You see what your task is, and some examples of what solutions would be.  

You write your solution in this window before pressing Attempt to see if your solution is correct. If it is, you can then go and look at other people’s solutions to get an idea of how other people attempted the problem! 

This is a great resource to consistently practice your coding skills, and the range of challenges you may encounter will help you prepare for coding interviews. 

If this seems like something you are interested in, find more information here

InterviewBit 

Another great resource for coding interviews is InterviewBit. It works in much the same as Codewars with different challenges you can complete but also has some more supplementary content you can use if you so wish. 

There are three main categories to InterviewBit: Practice Problems, Fast Track Courses and Interview Prep.  

You can solve practice problems of varying difficulties much like with CodeWars but you also get to see what kind of companies ask these questions. 

You can also spend time learning the fundamentals of different languages, perfect for when you want to train or revise a certain skill ahead of an interview. 

Another excellent resource on InterviewBit is the Technical Interview Questions. These are guides not only on how to secure roles at large companies like Google, Amazon and Microsoft but more generalised roles that would require you to code in certain languages. 

Coding Interview University

Another excellent resource is the GitHub repository Coding Interview University This was created by Josh Masham for interview preparation. It was using these resources that he was able to get a job at Amazon. This repository is jam-packed with details, resources and links that will be sure to help anyone in their journey to employment. 

These are only three different resources you can check out to get that edge when it comes to a coding interview but there are many more out there and not everything will work for you, so just experiment! 

targetjobs Undergraduate of the Year Awards Update!

AI and Robotics with Ocado Group

The lucky winner will win a 12 week paid Summer Internship plus the chance to have a 121 career conversation with a senior member of the Technology Leadership team.

Software Engineering with Skyscanner

Students could win a paid Skyscanner 12 week internship in London or Edinburgh, plus exclusive one-to-one networking opportunities with senior colleagues and £300 to spend on travel.

ICAEW100

We also have the ICAEW100 which is open to all students, and is a 30-minute, case study based online exercise. Every student who completes it receives a bespoke feedback report outlining their strengths and weaknesses which could be helpful in their career search. If a student’s score lands them on the leaderboard and they can stay on the leaderboard until the end of the competition, they’ll also be in with the chance of winning £1500, alongside prizes from the competition partners.

Interview – CyberSoc

Newcastle University Students' Union

We interviewed two committee members of Newcastle University’s Cyber Security society, CyberSoc, to get some insight into what the society does and the different ways it can help you. 

Who are you and what are each of your roles in the society? 

Eddie: I’m the president of CyberSoc, so my role is to guide the general direction of the society as well as lead the committee and manage their work. This includes things like making sure our technical officers have events prepared with enough time to spare, chairing committee meetings, representing the society at external events and finding new and exciting opportunities for our members. 
 
Last year, I ran many of the society’s technical events as I was one of our technical officers. While I’m in a different role this year, I’m continuing to do so unofficially because it’s a part of the society that I really enjoy. I’m taking a slightly less significant role in the writing of tech events nowadays as we have so many great new technical officers (and the role of president comes with its own workload!), but it’s definitely something I want to keep doing within CyberSoc. 

 
Sophie: I’m secretary of the society so my role is more on the admin side of things. I’m in charge of taking notes at committee meetings, making sure deadlines are met, making sure our members are kept informed of news and events, and that sort of thing. 

 I do sometimes help out with other aspects of the society outside of my role. My background in cyber security has meant that I’ve been able to get involved with the planning and running of some of our technical events. I also enjoy designing posts for our Instagram page. 

What is your society in 10 words or less? 

Eddie: A great way to have fun learning to hack safely! 
Sophie: The society for all things cyber security 

What do you do in your society? 

Eddie: In short, we teach people how to hack. Even if you’re a complete beginner to cyber security or even computer science and programming in general. Of course, when we say hacking, we really mean ethical hacking – all our tech events such as workshops, demos and talks take place in safe, isolated environments where you won’t be causing any damage to the outside world. It could be attacking a server we’ve set up with specific vulnerabilities, attacking each other’s code or taking part in dedicated hacking competitions (often called Capture the Flag competitions), and our Technical Officers are there to teach and help you at every stage. We also run occasional socials for those who want to take a break from the tech side of things! 
 
Sophie: We run technical events that aim to teach people about cyber security and ethical hacking in a fun and safe environment. These events include workshops, talks, demonstrations, competitions and more! We aim for all of our technical events to be suitable for all skill levels so there’s something for everyone. We also run social events from time to time to allow our members to get to know each other and make new friends. 

What do you want to do when you finish university? 

Eddie: I’m interested in the security of embedded systems, things like smart appliances, industrial control systems, network equipment, entertainment devices and many other devices that aren’t just general-purpose computers. I could see myself working in something relating to IoT device security, perhaps. 
 
Sophie: I don’t have anything specific in mind just yet, but I definitely want to work somewhere within the field of cyber security as that’s the area of computer science that I’m most interested in. 

What makes your society different from something like NUCATS? 

Eddie: At least in my opinion, CyberSoc runs mostly technical events with occasional socials, whereas at NUCATS it’s probably more the other way around. NUCATS is the general computer science and tech society. While we at CyberSoc do focus mostly on cyber security in our tech events, there’s often overlap with general computer science and programming since we teach everything from the absolute basics with no prior tech or programming experience required. 

If you’re mainly looking for socials in a society then you might be best suited to NUCATS, whereas if you’re keener to explore the tech side of things then CyberSoc is probably the society for you! That being said, there’s no reason you can’t join both – in fact, we do share a lot of members and occasionally run joint tech or social events together. Neither one is objectively better than the other, so it just depends on what you enjoy! I’d recommend anyone thinking of joining either society to check out both our Instagram pages (@newcastlecybersoc and @nucats_) to see what kind of events we’ve each run in the past. 
 
Sophie: NUCATS is more about general computer science and technology, whereas we are specifically focused on cyber security and ethical hacking. In practice, NUCATS tends to be more of a social society for computer science students, whereas we tend to attract members from a wider range of courses who are interested in cyber security and want the opportunity to learn and gain hands-on experience in the field. There is some cross-over between us and NUCATS and we do sometimes work with them and run joint events, but in general, we tend to fall more on the technical side of things whereas they are more on the social side.  

Do you have any Corporate Sponsors, and if so, what do they help you do? 

Eddie: We do! Our corporate sponsors vary from semester to semester, but they always have great opportunities for our members like industrial placement schemes, graduate schemes, careers events and mentoring opportunities to name just a few. We’re always careful to ensure our sponsors are relevant to our members’ needs and interests so that there’s always something great to engage with! 

Membership to CyberSoc is only £5 per year, but it’s our additional funding from sources like sponsors who really help us provide so much more value than that to every member. Our society wouldn’t be what it is today without having the funding for the tools and equipment at many of our workshops, so it’s something we really value. 
 
You can find specific details of our current sponsor(s) and the opportunities they’re currently offering on our Instagram page (@newcastlecybersoc). 

How do you think CyberSoc will help you get a job? 

Sophie: Being on the CyberSoc committee has allowed me to improve my employability skills such as teamwork, communication, and leadership. Furthermore, it gives me the opportunity to attend (as well as help at) events on a wide range of cybersecurity topics which helps me to gain a broad understanding of the field. 

Eddie: In terms of running the events, my public speaking skills have really improved. When I first started, I was really nervous any time I had to speak in front of everyone, basically just sticking to a pre-written script. But now it comes naturally to me! 

Committee work has also been a great experience for me in project and time management. Ideally, we usually have around 4-6 weeks between the idea for an event and the day it runs, so we’re always working to a deadline and re-evaluating different parts of the event if they become unreasonable to complete in time. Since we’re all students, this is especially important as we’ve got to plan around our studies too. There are many different elements that go into planning an event and delays (often beyond our control) are to be expected – it’s down to us to handle these without having to reschedule or cancel events wherever possible.  

What three things do you think your society brings to help improve employability? 

Sophie: Our society allows members to learn about a wide range of cybersecurity topics, which they may not have otherwise encountered. Many of our events provide the opportunity for members to try out various ethical hacking techniques in a safe environment, allowing them to gain hands-on experience with tools and methods that are used in industry. Furthermore, we have also run events that allow members to create their own artefacts that could be used in a programming portfolio. For example, our OWASP (Open Web Application Security Project) top 10 hackathon taster event gave members the opportunity to find and fix security issues within a website that we created. We then gave participants detailed feedback on their submissions, as well as presented them with a certificate to show their achievements.  

Eddie: We think in the 21st century, cyber security awareness is a critical skill to have in any role, but especially those within large organisations or national infrastructure.  

For the computing students among us, it’s great to know about security risks, attacks, and defences to help protect the software you’re developing. CyberSoc allows you to work with these fundamentals even if you aren’t on a security module or degree specialism, as we feel it’s important that all developers understand the basics of cybersecurity. 

For those not on computer science degrees we think participating in CyberSoc events still greatly improves employability, as these days detailed knowledge of cyber risks and defences can be critical in any role in any industry. They say humans are the least secure part of any system, so it’s no good for the developers to secure their applications if the end users can be phished or use insecure passwords! Therefore, participating in CyberSoc events can help anyone stand out to employers. 

Have you got any events coming up? 

Eddie: We do! On Tuesday the 22nd of November we’re running an “Introduction to Cyber Security Tools and Concepts” workshop, and the Tuesday after on the 29th we’ll be hosting a reverse engineering/buffer overflow workshop (both beginner-friendly!). At the time of writing, we’re yet to have the exact times and venues of these events confirmed, but they’ll likely be from around 6:30 PM in a computer lab in the Urban Sciences Building, as is the case with most of our tech events if they’re running in person. Additionally, some of our events are run online so there’s something for everyone. 
 
We have even more events planned that we’ve yet to announce, so be sure to take a look at our Instagram page (@newcastlecybersoc) or the events tab on our Discord server (cybersoc.org.uk/discord) to learn more! 

Interview: Dr Gary Ushaw

We interviewed senior games lecturer, and former Director of Business and Engagement for the School of Computing, Dr Gary Ushaw, about what you can do to improve your employability.

Sum up your role in 10 words or less 

 Career opportunities for Computing students (especially games) 

What are your official job responsibilities? 

As part of my role as Director of Business and Engagement for the School of Computing, I had an overview of all career, employability and placement activities for our students. 

What are your unofficial job responsibilities? 

As a part of Game Lab, I have a lot of successful links with the game development industry. My term as Director of Business has recently come to an end, so I am reverting to focusing on the games industry. However, I remain more than happy to talk to students about careers and placements across the digital sector. 

Why do you have strong links to industry? 

I worked in the video game industry for many years (lead programmer and engineering manager with Ubisoft, BBC, Sony, Rockstar, Atari) so I have an extensive network of contacts in that industry, which has widened across the entire UK game development sector due to the success of our graduates from the MSc and MComp in Game Engineering. 

What companies do you work with? 

We work with every major game development studio in the UK (Activision, Rebellion, Ubisoft, Epic, Nvidia, Sony, Rockstar, Warner Bros, Microsoft, Sega, Sumo, etc, etc) as well as the independent game developers around the northeast and further afield, and international developers around the world. They all employ graduates from our MSc/MComp, provide industry talks, and advise on the course content, because they know the high quality of our graduates. 

How would you say you help students improve their employability? 

The key word here is “opportunity”.  As a school, we provide a lot of opportunities for students to meet potential employers from across the digital sector and beyond. We also provide opportunity for improving your interview skills, CV feedback, etc. We are currently ranked third equal in the country for employability of our undergraduates in Computer Science, which is due to our fantastic students seizing opportunities. 

What areas do you think students need to improve on when it comes to employability, and how can they improve those areas? 

Different companies focus on different areas, many will be interested in technical skills, but all are interested in the ability to communicate and work well with others. If there is one area I would highlight, it is the team project. Employers do not want to hire so-called hero programmers, who do all of the work themselves. They want to hire team players who can forge meaningful and productive relationships with their peers. Our team project in Stage 2 is designed to provide that experience and opportunity. 

In what order would you rank the following things in terms of importance from an applicant (first most important, last least important) 

CV, Cover Letter, Portfolio, Interview, Code Interview 

They are all equally important, with some sectors focusing more on some stages (portfolio for example). The key is to remember that each of those elements listed is a mechanism to get you to the next stage of the process. CV and portfolio get you to the interview and technical test stage. The other thing to remember is that interviews are a two-way process – you are finding out about the company, and whether you want to work with them. 

If there was one piece of advice you want students to take away from this interview, what would it be? 

Seize the opportunities. 

Can students contact you for advice, and if so, what is the best way to contact you? 

Yes, absolutely. Email me, or just come to my office. 

Tell us how we should be helping your employability

Please fill out one of the following forms, the one relevant to your current stage, to give us some insight as to what areas of employability we should be improving to help you.

Stage 1

https://forms.office.com/r/WjRGbbdw1n

Stage 2

https://forms.office.com/r/ijaQG9LSyx

Stage 3

https://forms.office.com/r/34dayVgatM

By filling out one of these surveys, we can get a better idea of what content and resources we should be creating to help you as students.

Your help is much appreciated!