Whilst studying I have undertaken several roles in software development and teaching. These roles have been invaluable in providing me with a wealth of practical experience and shaping my attitudes and abilities to make me a valuable addition to a variety of teams.

Research Assistant

2018 — present

My current role involves working with the team at the CCSE to formulate a new degree programme with a strong focus on work based learning. The goal is to produce a course which allows students to work in industry while they study and complete the four year programme with a degree at the same level as the standard Computer Science students as well as a wealth of industry experience, making them highly employable and well specialised.

The role involves constant team communication, extended consultation with multiple industry partners and regular check ins with Skills Development Scotland.

First Year Tutor

2017 — 2018

During my Master's year I demonstrated as an Undergraduate Demonstrator in second year Java labs rather than level one Python labs (though the concept remains the same - see my Undergraduate Demonstrator experience below) was also offered the role of level one tutor. Tutoring is more involved, requiring teaching in classes rather than just lab guidance, as well as marking student work and providing written and verbal feedback to the students. The role is considerably more demanding, and requires very good knowledge of the source material in order to teach it effectively and answer any follow up questions.

Undergraduate Demonstrator

2016 — 2018

While studying at Glasgow, I have spent my last two years working with the Department of Computing Science as a demonstrator. For this role I attended scheduled programming lab sessions for first year students who have set Python exercises to complete and try and help with any problems they have. These range from helping them identify bugs to suggesting code improvements or best coding practices and any other general computing questions they may have. The role requires a very good understanding of the fundamentals of programming, coupled with the communication and interpersonal skills required to thoroughly explain these concepts to beginners and determine whether or not they're on the right track.

Both the demonstrating and tutoring roles have been incredibly rewarding and given me valuable insight into how people learn and their computing skills. Both roles have contributed to my curiosity about skills development and pedagogy and have been instrumental in int lead up to deciding upon an area of research for my Master's project.

TBR Global

Summer 2017

At TBR Global I was part of a small team of developers responsible for the creation and maintenance of the organisation's multifaceted, international suite of software tools and applications. TBR Global places a lot of worth on their software platform and as a result the development team is highly valued - it was a great experience to be part of a small group of specialists making use of cutting edge technology to act as the the powerhouse of a global enterprise.

In addition to being involved with the general upkeep and maintenance of the main systems (requiring good communication and debugging skills, as well as an understanding of version control software, multiple programming languages, full stack software development and excellent self-time management skills) I was allocated a larger software development task. TBR Global required a simple web application for drivers to actively record their location in real time - a native app existed, though due to certain network carrier restrictions overseas it did not function properly in some regions. Once the driver application was completed, a companion web app was built for clients to track the location of their driver on a map in real time.


Summer 2016

My role at Traveltek consisted of full stack Python web development with a team of three other interns. We developed two new systems for the company from scratch, the first being a complex customer data visualisation system, and the second being an intelligent recommendation platform which would attempt to learn customer buying habits and predict future purchases.

My time at Traveltek introduced me to many key aspects of professional software development in a working environment. The internship provided me with many experiences and tools that have been very helpful in my future development.