logo

providing bespoke development services &
IT consultancy for clients

Filter for:
Admin portal for managing book content
  • The project involved developing a platform that allowed the client to define book content, and then publish them to a PWA application on user subscriptions.
  • A back-end server process was developed using node and the Hapi server package, chosen for its robust support for client security (via JWT) and clean REST endpoint framework.
  • The portal was developed using React and built with Vite. The book content was managed using complex JSON structures stored in files rather than a database, offering greater flexibility for future tooling.
React
Vite
node
Hapi
REST
Book PWA developed using a 'local-first' approach.
  • The project involved developing a PWA application in React and built with Vite, with the design objective of being able to work fully offline.
  • To deliver this, the application leveraged IndexedDB within the browser environment, along with background sync processes running in their own worker thread.
  • Within the application Zustand was used to manage internal state and provide a shared library of user and data functions that could be accessed anywhere in the app.
React
Vite
IndexedDB
Mongo
Zustand
Modified and integrated Rocket.Chat open-source project
  • This project involved significant customisation of both native client and server components of Rocket.Chat. Additional and modified meteor services were developed and integrated into the original codebase.
  • The server was also integrated with another internal service with data going in both directions, using REST and websockets.
  • The react-native client was also heavily customised to remove unnecessary features and implement new ones, such as multi-user timed polling with real-time feedback.
  • The application was built using Android Studio and XCode and then deployed to both the Google Play Store and Apple App Store.
React
MeteorJS
node
Mongo
react-native
Designed and built full client login and user maintenance UI using Auth0, react, node, AWS.
  • This project provided a full implementation of OIDC-based user registration, login and reset services around an Auth0 core.
  • Two React applications were developed for the UI, and then integrated with a combination of back-end services (Lambda's), SMTP gateway, and Auth0 itself to deliver the full end-to-end user experience.
React
Vite
node
AWS Lamdba
Auth0
OIDC
Developed a process suite utilising RabbitMQ
  • I developed a suite of processes in node, using RabbitMQ messaging as an loosely coupled integration layer.
  • One of the processes implemented complex logic for tracking user activity and applying rules to generate follow-up user interactions.
node
RabbitMQ
Developed various integrations with Salesforce Apex and LWC applications
  • A number of projects integrating with Salesforce, both direct with LWC applications and systems integration using Apex via REST.
  • The integrations involved both standard and custom objects, along with OIDC/OAuth2 authentication mechanisms.
  • These projects were then packaged for deployment on the Salesforce Partner Network.
AWS Lambda
OIDC
Salesforce (Apex)
Salesforce (LWC)
Assisted in planning a healthcare communication platform, integrating Zoom, Agora, and Vonage.
  • This project was essentially a design exercise to determine possible solutions for a video-based communication service.
  • The development work implemented a proof-of-concept for various technology options and for a technical, usability, and cost evaluations.
  • Each option was built out using React and platform-specific SDK's.
React
Zoom
Agora
Vonage
Custom manufacturing management portal
  • The project involved the design and development of a back-office platform for managing orders from creation through manufacturing stages to final order delivery.
  • The design work included a full data phase to capture a complex data model.
  • The main feature of the UI is the schedule view which provides a Kanban-style view of the whole manufacturing process, along with drag-n-drop features to allow the entire process to be tracked and managed.
  • Subsequent to the first implementation, the platform has since been extended extensively to support manufacturing changes, and to allow the client to manage multiple different order types and products.
React
react-admin
node
express
Mongo
Course Instructor: Full-stack Web Development course
  • Contracted to deliver a 9 month, part-time course for 16 students. The course was delivered online due to the Covid lockdowns.
  • The content assumed no prior technical knowledge, and I took the students through from initial understanding of web concepts, right through to full-stack development of applications using React and node.
  • The database aspect covered both SQL and document-based variants, demonstrated using Mongoose and Sequelize ORMs.
HTML
CSS
React
node
Mongo
PostgreSQL
Email automation process integrated with Bullhorn
  • The project involved designing and then developing an integration of Bullhorn with an external email platform (Huzzah).
  • The main requirement was to deliver a configurable rules-based background process which would generate various email interactions with both clients and candidates to help improve engagement with the client's recruitment services.
  • The design led to the implementation of a JSON configuration file with a schema definition that allowed the client to both manually configure the required rules, and also to use other tools to manage the JSON file in the future.
  • The resulting process supported a wide range of complex functionality, using data structures in both Bullhorn and Huzzah to track and maintain status/history that was required to fulfil various interval and delay options.
node
Bullhorn
Huzzah
Hybrid mobile PWA app for golf
  • This project was to develop a golf training app, and was initially developed as a demo (PWA) application to prove out some of the features and validate the integration of golf course data.
  • After this the app was migrated to react-native to produce a proof-of-concept for the client.
  • Unfortunately, due to lack of funding, the app was never fully developed for actual release.
node
React
Mongo
react-native
Full-stack Medical Services portal
  • This project was to implement a public website of medical practitioners providing a wide variety of elective services, and searchable using various criteria.
  • End users were then able to book appointments with their chosen practitioner or submit a query about their services.
  • The platform consisted of a public-facing website, a service provider registration/login, plus a back-office administration portal.
  • The project was built around the Meteor full stack, with all UI services implemented in React.
node
React
Meteor
Mongo
Integrated content with WordPress.
  • I was required to provide an integration of both content and user sessions between a WordPress site and an associated front-end portal.
  • This allowed WordPress to be used for content management while supporting more complex functionality provided via a React application.
WordPress
Property listing platform and search portal
  • This platform had 3 key components - a back-end batch process for handling incoming property data (e.g. rightmove), an admin portal for managing the content, and a public portal for querying the property data.
  • Batched data was received hourly and merged into existing property data, then made available to the portal via a map, detailed listings, and subscriptions for email alerts.
React
next
node
Mongo
Online shopping marketplace with a price comparison engine
  • This was a largely technical design piece, then developed as a proof-of-concept to assert the design.
  • The primary requirement was to design an engine that could - supported by product configuration - ingest multiple sources of product pricing data including variants, and store in a database (mySQL).
  • The database could then be queried to compare products and pricing against their configuration (features).
node
mySQL
XAPI JSON to Relational Data Conversion
  • This project required a decomposition of the XAPI specification into a relational data model, which I did through a logical and then physical stage to ensure consistency and traceability of the resultant data structure
  • The relational data model was then implemented as a PostgreSQL schema, and test data loaded for validation.
  • I also produced a testing deck which was designed to confirm full coverage against the supported XAPI specification.
PostgreSQL
XAPI
Other Projects / Proof Of Concepts
  • I performed a deep-dive experimentation with Kubernetes to implement a set of distributed node processes utilising messaging via RabbitMQ.
  • I used Docker to build purpose-made build images for applications for use in pipelines
Kubernetes
RabbitMQ
Docker

Please note that some projects were commercially sensitive, and in these cases detailed information is not provided.