Placement Insights from Newcastle Strategic Solutions Limited 

Returning from a year in industry to complete their final year at Newcastle University, we interviewed Zach Smith about their time with Newcastle Strategic Solutions Limited. This is what they had to say:

Find Out More About Newcastle Strategic Solutions

Who did you do your industrial placement with?  

Newcastle Strategic Solutions Limited 

What was your role?  

Software QA Tester 

Why did you do a placement?  

I did a placement in order to gain some concrete work experience in the software development industry, this is so I could hopefully gain an advantage over my competition when applying for jobs upon graduation 

When did you start applying and how many places did you apply for?  

I started applying around February/March time and applied for at most 20 people 

How was the application experience?  

Relatively straightforward, mostly just making sure my CV was up to date. I wrote a cover letter for each company I applied for and tweaked my CV in scenarios where different experiences might’ve been more useful 

What, if any, help did you get from the university when applying?  

The help I received from the university was mostly to do with their careers site, where companies could post placement opportunities. It was a huge help and ultimately lead me to get this placement 

What work did you do over the course of your placement year?  

I got the opportunity to do a range of things: 

  • Programming automated tests for builds of NSSLs websites which introduced new features. 
  • Testing on live servers of clients to ensure that everything was working as expected before deploying for the public to see and use.  
  • I also had the opportunity to manually test features on the website to ensure that they met the accessibility criteria required. 
  •  I was working alongside teammates in a scrum team and would test whatever the developers would work on before giving it the seal of approval. 

How was the overall experience of doing a placement?  

Fantastic, I was treated really well during my time at NSSL, except for the odd stressful moment, I enjoyed it. One key value that I really appreciated working there was that my input was important and was truly taken into consideration when working on different projects even when it wasn’t about testing. I made a lot of new friends there during the early talent program that they ran too.  

My experience here helped dictate what portion of computer science I would like to specialize in for my final year. Thanks to my time testing the accessibility of the website and new software developed, it has made me want to work in accessibility and hopefully work to improve how accessible software is to the general public. 

Would you like to go back to that company after your final year?  

Based on my experience? Yes.  

With my current circumstances? No, I only say this because following graduation I’d prefer to be employed somewhere where I can live with my family whilst working for a while before I go settle in somewhere like Newcastle. To be honest though, if I was offered a high enough wage to cover the expenses of living alone easily then I probably would take something from NSSL. 

How to set up your portfolio

Whether you are a stage one student hoping for a summer placement, a stage two student thinking about a year in industry or someone in stage three applying for roles after university, your portfolio is an essential part of your career as a computer scientist. But how do you make a good one? 

Your portfolio is the best impression employers can get an idea of not just what you’ve done, but what you can do. Showing your different projects, the coding practices and how you have applied your knowledge will be much more beneficial than your CV when it comes to applying, hence why showing your work in the best way possible is so important. 

Here are some recommendations on how to best show off your work in a portfolio as well as some tips to make the projects you show really stand out for employers. 

GitHub 

Chances are you have heard of GitHub, certainly so if you are in your second year or above. The version control titan is the bread and butter for every programmer, allowing you to make use of git to store multiple versions of your projects and access them wherever you may be. But if used correctly, GitHub can be an excellent place to host your portfolio. 

On your GitHub profile you can see all your projects in something like this: 

It likely won’t be too exciting and certainly will not stand out against a slew of other GitHub profiles. But it is a suitable place to start from, you can show off some of your best projects and talk a little bit about yourself in a personalised ReadMe. And it turns out that going that extra step is a lot easier than you would think, all thanks to something called GitHub Pages. 

Making your own website has its advantages (something we will get into later) but some aspects like hosting can be difficult, expensive and time consuming. GitHub Pages solves those issues by letting you use GitHub to host your own portfolio website. And it only takes a few steps! 

GitHub Pages allows you to transform your existing repositories into websites to show off things like your portfolio, projects, or documentation. This is a great next step as it allows you to add your own unique spin to your projects that will make your applications stand out.  

You don’t need to worry about databases or servers; however, you will need a bit of HTML knowledge. But even if you aren’t confident with web development, this is a fantastic way to get some experience and really show off to employers. GitHub pages can be used with Jekyll to ease this process and make use of templates (look here for more details). 

The official documentation for GitHub Pages has a great video breaking down how it works and there is an abundance of content to help support you as you build up your very own portfolio. 

https://youtu.be/2MsN8gpT6jY

It is worth noting that while GitHub Pages does allow you to host your own website, this is limited to one per GitHub account. But you can have unlimited project sites. 

Making your projects “Portfolio Ready” 

Making your portfolio look nice is great, but you want to make sure it isn’t all style and no substance. Here are some tips on making the content of your portfolio really stand out. 

Tidy up your existing projects 

Good, readable code is an essential part of programming, and even more important for employers. When looking at your portfolio, employers won’t spend much time trying to understand your code, so making it as clear and efficient as possible is a great way to start things on the right foot. It will show employers your coding style and make it easier for you to understand your own work when you come back to it down the line!  

There are lots of different ways you can add subtle improvements to your code either as you do it, or in retrospect when working on your portfolio. Making sure your code is consistent with things like sensible names for variables, methods and files is a great place to start. 

One mistake many people make is to comment every single line of code to explain what is happening. This can almost double the size of your files and make them a lot messier than they need to be. If you think you need to explain each line, then you may need to go back and refactor your code with better variable names and simplify it as it is likely too complicated.  

But that doesn’t mean removing all comments in your files. Giving brief descriptions of methods and their return types is a fantastic way of reducing the amount of time you read, as it gives a quick understanding of what something does without having to go line by line to understand it. Just make sure to use comments only when you feel they are needed. 

Here is a simple example below for calculating a factorial: 

Bad factorial function
Good factorial function

Both functions work in the same way, but one is clearly more understandable than the other. The first only uses generic variable and function names whereas the second uses sensible names for both. This makes it a lot clearer even without the excessive commenting that the first method. 

Now that your code looks good, there are some things you can do portfolio side to make your projects stand out before employers even start looking at them. 

Give a brief description of what your project is, indicating the key features that you want to show off, what your contribution is (especially if it’s a team project) and what languages are used. This tells people looking at your portfolio what you can do straight away and make them more likely to look at your work more closely. Here is a good example: 

Work on projects outside of your degree 

One of the great things about your degree is that you get the opportunity to work on several different projects that can help you build up the solid foundations of a portfolio. The only issue is that every other student in your year, ~300, will have similar projects, hence why it is important to work on projects outside of your degree. 

This allows you to explore your interests and fine-tune your skills for the field you want to go into, and it also looks great for employers as you are showing them how you work independently and what your interests are. Also, having more projects is always beneficial as it allows you to be more flexible with what you want to show to different companies. 

When building new projects, it can be quite daunting to figure out exactly what to work on, especially with other commitments, including your degree. But don’t worry, you don’t need to be making some cutting-edge development with every project you have. Practicing new features and developing your programming skills is a great way of showing your personality through your portfolio.  

A great type of project to work on to help build up your portfolio is to recreate existing projects. Be it something as simple as the Instagram home page, it is great practice to try to build something from the ground up and try to understand how it works. It helps give insight into how companies develop software and there is always the opportunity to iterate and improve, something especially good when you end up applying for the same company! 

Tailor the projects you are showing off to the companies you are applying for 

Now that you have tons of professional-looking projects on your portfolio, you need to choose what to spotlight, so be sure to tailor it to the company you are applying for.  

You may have projects covering a wide range of things, but chances are you will be more confident in some than others and each will highlight different skills. Aim to show the breadth of skills you feel are most beneficial for your employability, but make sure not to focus on only one or two. Highlighting six projects that are all the same only gives no real indication of everything you can do.  

Be sure to show a mix of work that highlights your strengths and weaknesses. Team projects and solo projects, different languages and different topics show not just your range of abilities to employers, but who you are as a person – something which should be a focus of every portfolio. 

Remember, Rome wasn’t built in a day, and neither will your portfolio. Take your time and do it in iterations. Be sure to make use of University resources both in and out of the School of Computing to help you as you develop your portfolio and always ask people to check it over.  

Junior Software Developer – AIS Neutron VRT

We are looking to hire a full-time junior developer to bolster our product development team. As a junior developer you will be joining a small, dedicated development team where you will develop across a wide range of advanced training and competency products designed for the Oil and Gas Industry. This is a great opportunity to progress into a massively growing sector, working in a professional development environment using agile development methodologies, and source control. As well as this, you’ll be working with internal and external stakeholders to make a real contribution to the business.

To be considered for this role, you will need the following:

  • To be a recent graduate in the related field (Computer Science, Software Development, etc.) or a junior developer with commercial coding experience.
  • A strong knowledge of Object Orientated Programming.
  • Experience with C#, .NET Framework (Core/Standard), ASP.NET MVC
  • Knowledge of SQL and relational database design patterns.

Desirably, you will have experience in the following:

  • JavaScript.
  • Cross-platform native technologies (Xamarin, Mono, Web Assembly, Platform Uno).
  • Native mobile development experience.
  • Cloud Computing Services (Azure, AWS).
  • MS SQL Server 2016.
  • Business Intelligence and big data.
  • IIS management.

For more information or enquiries please email: tyrone.spence@neutronvr.com.

JBA Consulting: Graduate programme

If you have technical expertise, combined with a collaborative approach and overall ‘can do’ spirit, we want you to join us for your next challenge!

Exciting career opportunities in:

  • Environmental Management
  • Software Development
  • Engineering
  • Water Management
  • and Geoscience

Visit https://www.jbaconsulting.com/graduate-recruitment/

With over 20 offices across the UK and Ireland and staff seconded around the world, we are engineers, environmental consultants, scientists and designers, managing weather and environmental risks and opportunities for our clients.