Projects

Payment Gateway

Framework

Functions

As part of my BCS L4 Software Developer Apprenticeship I was tasked with undertaking the design and creation of a business project to cover a selection of Knowledge, Skills and Behaviours (KSBs) contributing to the progression of the apprenticeship.

The project in question, was based around a task to design a software application capable of syncing user credits from ParentPay, a school-focused financial management system to MyQ X, an on-premise print-management solution designed to revolutionise printing in the workplace and school environment.

The development of the project lasted 2 years, with many revisions and amendments over time. The project was designed in Microsoft .NET Framework using the C# programming language. Implementing various in-house and third-party libraries, the application focuses on a self-service approach and uses a password protected SQL Compact v4 database, which is handled entirely by the application code. 

The application uses a global approach for the HTTP Client with any and all API calls, integrating a HTTP Wrapper and providing bespoke validation methods for each API endpoint used within the system.

Due to customer security requirements the application was configured to default to TLS 1.2 or 1.3 for any and all external API calls, throwing an error if a call is not secure. Should a customer wish to overwrite this and use older protocols such as TLS 1.1, 1.0, an option was provided in the configuration file provided. 

The system would also use a multi-option user-sync system to search for a user in MyQ X by either username, through their Active Directory user or by syncing with Azure Active Directory, also known as Microsoft Graph.

Study Central

Framework

Functions

A recent inspiration lead to the birth of a personal project called 'Study Central'. Study Central is an ASP.NET Razor Page Web App.

The app in question brings together a series of tools, focused to help Christians in their everyday walk with God and includes features such as the dynamic generation of Bible studies, daily Bible Verses, a user management system through ASP.NET Identity and much more. 

Forest Churches

Framework

Functions (To Be Built)

I have also recently taken up the endeavour of a new project, known as Forest Churches. Still in very early stages, forest churches is an idea to create a place for visitors and locals within the Forest Of Dean to be able to locate churches and activities around them.

The project aims to deliver a web application, capable of providing information, locations and links to churches and their activities within a specified radios throughout the Forest Of Dean and Wye Valley. Additionally, the project also aims to provide single church-wide accounts for each church within an organization, to help provide a central location for events within the Forest Of Dean. Users

While the project is still in early stages, the intension is to develop this project in the form of a .NET Core ASP.NET  Web App using the MVC architecture and several third-party systems, including Google Maps and database integrations.

Microservice API

Framework

Functions

In order to complete my software developer apprentiship, I have undertaken the task of developing an API that performs resources heavy tasks. The intension with this is to provide a second application that usilises this application through API requests.  

The .NET 7 microservice is stuctures simular to the ASP.NET webapps, using an instance of the WebApplication.CreateBuilder to add and setup all the required services.

Windows Service Restart

Framework

Functions

A project that I undertook a little while ago focused on an immediate issue. 

In my day to day job, a customer was experiencing an issue where a windows service would crash every morning at the same time. The software in question was a print management solution running on a fully supported Windows Server.  Early hours of each morning, at the same time, the system would perform maintenance, causing the service to crash. This crash would lock the printers offline, removing the privilege for anyone to be able to print. 

As a result of this, the IT Administrator was required to be in super early every morning, restarting the system and bringing the services back online.

The issue was quickly diagnised and reported. However, an immediate fix was still unclear. Therefore the development of a solution to immediately solve the problem was left to me. 

For this immediate task, I was a few hours. Within this time, I was able to research and learn of ServiceController, a class that when instanced, will allow the manipulation of Windows Services. 

I instanced the class and created a fairly simple program, simply checking if the program was stopped or running. If the service was running, it was restarted. However, if the service was found to be offline then it was simply started again.

Once the design was complete, it was compiled and implemented into action through a Windows Scheduled Task. 

Note: This project has since been reformed to use an Object-Oriented design pattern.