Skip to content
Portfolio by Simon Gilbert
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md

README.md

Portfolio | Simon Gilbert

Table of Contents

Pessimistic Concurrency for Azure NoSQL Table Storage (C# ASP.Net Core)

Categories

  • Back-end.
  • Azure Cloud.
  • DevOps (Continuous Integration).

Scenario

  • Using Azure NoSQL Table Storage due to low cost benefits.
  • Concurrent Api layer written using C# ASP.Net Core.
  • Multiple Api instances running in Microsoft Azure.

Problem

  • Azure NoSQL Table Storage uses optimistic concurrency by default.
  • Potential of race conditions and data loss due to concurrent implemetation.

Solution

  • Implementation of an advanced pessmistic concurrency lock over Azure NoSQL Table Storage.

Benefits

  • Substantial reduction of database costs.
  • Circumvention of data loss through race condition prevention.

Docker & Azure Kubernetes Service (AKS) Twilio SMS Api (C# ASP.Net Core)

Categories

  • Back-end.
  • Azure Cloud.
  • Containerised.
  • Container Orchestration.

Scenario

  • Using Twilio's SMS service due to low cost benefits.

Problem

  • Api must be portable.
  • Deployment must be streamlined.

Solution

  • Use of Docker to containerise and isolate Api.
  • Use of Kubernetes (AKS) to orchestrate containers and ensure constant up-time.

Benefits

  • Server cost reduction (OS installation's).
  • Ensure Api is portable due to container isolation.
  • Virtualise the operating system, not the physical hardware (e.g. Virtual Machine's).

ReactJS & Redux Client-Side Validation Postback SPA (C# ASP.Net Core)

Categories

  • Full Stack.

Scenario

  • Using ReactJS to encapsulate form components and efficiently validate client-side before postback.

Problem

  • SPA must validate form input data without hitting the server-side Api.

Solution

  • Use of regular expressions, executed on the client-side to validate the form data.

Benefits

  • Removed unnecessary server throughput due to only valid for submissions being posted back, server-side.
  • Provides beautifully encapsulated form components, for clean code and true separation of concerns.

You can’t perform that action at this time.