I am the Mitie technical lead for our React and Node web applications. I lead the development, oversee the web architecture, communicate with the product owners, and provide technical support and assistance to the development teams.
Our team works mainly on the Connected Workspace, Mitie's strategy to digitally transform Facilities Management. We develop a web portal which allows customers to visualise data captured from sensors and gain insight into their employees' wellbeing (through temperature, light levels and CO2 concentration), utilisation of rooms and spaces, and the health of their building infrastructure.
The portal is built using TypeScript React and MobX on the front-end, with a TypeScript Node.js and Express back-end utilising a microservices architecture. Single sign-on is provided by Azure Active Directory. I led the design and development of a Node.js REST API service to manage user authorisation across Mitie applications. The service allows for permissions to be stored for any object in an external database. Each time a user attempts to access data or complete an action, the API will check their permissions. This is a core part of Mitie's Connected Workspace infrastructure and therefore we ensured it had excellent performance and was thoroughly tested.
We worked in an agile team of 8 developers using Azure DevOps to manage our code, work items and build and release process. I introduced improvements to our workflow such as automatic code formatting, linting, code review policies and automated build and releases. I also designed and configured PaaS infrastructure in Azure.
I improved Mite's developer recruitment process by creating interview questions and a technical test. I interviewed candidates and we hired several excellent people including a graduate for whom I created and executed a learning plan. He came with very little web experience and it was great seeing how quickly he picked up React and began making useful contributions to the project.
Last year Mitie outsourced development to a partner in India. This transitioned my role to managing an external development team, providing technical governance, support and assisting development. I have ensured that architectural decisions follow best practices and are consistent with Mite's approach. I've also researched new web technologies for Mitie such as Docker, GraphQL, WebAssembly and Svelte.
More recently, I have written serverless Node APIs hosted in Azure and AWS. These APIs connect to a mobile application built in Xamarin enabling Mitie's cleaners to sign in and out of shifts and read news articles. I've also created a proof of concept for migrating this Xamarin application to React Native.