2:1 Degree Achieved
Module deep-dive -
Individual Project – Developed a task management REST API written in JavaScript accessing a NoSQL database including a HTML front end with secure login system. This was initially intended to be a Xamarin Forms application that connected to a REST service but late in the project it was decided to refocus on delivering the REST service in the most functional state possible.
Advanced Software Development – Introduction to C# having previously only used VB.NET. This module included more of a focus on Object Oriented Programming in a move away from Imperative coding practices. C# fundamentals such as string manipulation, data structure implementation and basic operators were taught using various coding exercises.
Software Design – Unified Modelling Language and Software Design Practices in the form of a log book. Learned how to model classes to most effectively represent data with Class Diagrams, analysis of possible user interactions to frame the structure of a software solution with Use Cases, and how to design processes so that all interactions within the system are considered using State Diagrams.
Network Management – Setup and Configure a multi-site network in Cisco Packet Tracer, making use of multiple communication protocols, various virtual networking devices, VLAN configurations, and management of IPv4 and v6 address allocation.
Mobile and Web Technology – Created native Swift applications for iOS using XCode that link with a JavaScript web service facilitating access to a NoSQL database. Gained fundamental knowledge of the iOS app ecosystem and mobile development, while also gaining a solid understanding of Swift syntax and fundamental principles.
Information Assurance and Security – A course in data security theory including the principles of good encryption and data security including One-Time Pad, Diffie Hellman key exchange, SSL & GPG, and public key infrastructure.
Usability Engineering – Explored the usability of a system from the users’ perspective through various methods of user testing, iterating on a core design idea based on user feedback, and making considerations for users with disabilities when designing a software system interface.
Extra-curricular Activities -
- Hackathon and Computing Society Member
- 3rd Place in the BullHacks Hackathon 2017