I’m celebrating my first year at Grosvenor as a Senior Software Engineer. The year has gone by so quickly that you don’t often take the time to sit back and savour your accomplishments. I thought I would break this rule and do just that. So here is a (very) brief summary of just a few of the key projects I’ve been involved in during the previous year, and my first year at Grosvenor.
I introduced DevOps using Team Foundation Server (TFS). I setup and configured builds for the key applications, implementing continuous integration and continuous deployment as part of these processes. There are different endpoints for development, staging and production, each with its own TFS deployment configuration. The build processes are quite complex, involving over a dozen separate build tasks. We now have uniform and consistent builds across all products across the business. Whereas previously these applications were built and deployed manually by a developer, now this process is entirely automated. This ensures consistency between builds, not to mention simplifying the process and reducing the manual burden on the developers.
I also introduced unit-testing into the software development life-cycle. This has been a major change to the way software is developed. Unit tests are used for both development as well as the build process. All new code must have associated unit tests, and these need to be checked in as part of the build process. The build process performs a code-coverage analysis, giving detailed reporting of the areas of code that are not covered by unit tests. The minimum code coverage is 70%. At the time of writing the code coverage across the application is over 90%.
None of these processes existed until I implemented them :-)
When the decision was made to re-develop the mobile app offering, the key functionality driving the new proposition was to integrate the mobile app with the enterprise applications at the back-end. To achieve this required architecting an entire suite of ASP.NET Web API RESTful services utilising a service bus architecture. All the RESTful services consume and return data in JSON format. The architecture is highly scalable and available due in large part to the fact that it makes substantial use of many Azure services including hosting, service bus, functions, webjobs and a SQL database. As the implementer and architect of this process, I feel immensely proud.
I’ve thoroughly enjoyed the challenges, projects and the people I have worked with over the previous year and I hope the next year brings many more challenges.
If this article was helpful to you, please do hit the 💚 button below. Thanks!