Categories
Life at Resolver

A peek into the world of Resolver Engineering

Welcome to the blog for the Resolver Engineering team. We spend our time building and maintaining the applications that power Resolver.co.uk as well as both SaaS and bespoke products for regulators, ombudsmen and alternative dispute resolution providers. Over the course of building these products, we have developed our ways of working, found tips and tricks […]

Categories
Life at Resolver Technical

Hack week 2023: OpenAI for dispute resolution

This post was partially written by and edited using ChatGPT. Last month the Resolver development team had their first official hack week, which was dedicated to checking out the potential to improve our software with the help of OpenAI. What is OpenAI? You’ve probably heard of OpenAI since their ChatGPT program has made headlines frequently […]

Categories
Technical

Talking robots! Let’s talk about APIs

What is an API? API stands for Application Programming Interface, let’s break that down: Interface – Every device we use has some kind of interface. Your TV has a remote with buttons on it, while a light switch has an even more straightforward interface- on or off. We use these interfaces to get the device […]

Categories
Technical

AWS S3 UTF-8 Content Disposition

Have you ever tried to make the download filename of an AWS S3 object be in Korean? No…? Being a developer who, until recently, had only written in English, I hadn’t either. However, it turns out using some UTF-8 characters in S3 object request parameters can lead to some interesting errors. How to Change the […]

Categories
Technical

Rolling back AWS Elastic Container Service (ECS) Deployments

What is ECS? AWS Elastic Container Service (ECS) is a fast and popular way to orchestrate containerised applications in AWS’s cloud computing platform. ECS comes with autoscaling baked in and natively runs containers on AWS’s Fargate serverless compute engine. What makes ECS particularly nice to use is that it abstracts away much of the operations […]

Categories
Technical

Upgrading to Rails 6.0

Introduction Whenever a Ruby on Rails developer hears the phrase “New Rails update!” they will no doubt experience a mixture of excitement and fear. It’s always very exciting to see the new tools that come with a new Rails version and all the new possibilities that go with it. But at the same time, you […]

Categories
Life at Resolver

A developer team’s approach to not having a Product Manager

Back in July of this year, our Product Manager here in the Consumer Team at Resolver moved on to a new job. This was a great loss both for us and the wider company and we knew that it would take several months to find and recruit the right person for the job. During the […]

Categories
Technical

Creating a Gem in Ruby: a Jewelcrafting guide for Developers

What is a Gem? Gems are small chunks of code used to perform specific duties without interfering with, or becoming a direct part of our code. The code required for a gem will still be a part of our project’s ecosystem, but we will ultimately remove some overhead, and avoid unnecessary duplication by using a […]

Categories
Technical

Using Awesomplete for auto-complete inputs

Awesomplete is a front-end autocomplete tool that compares a user’s input to a defined data list, and if it recognises the input will make suggestions for the user to choose from. We chose to use the Awesomplete tool in the Accord team while building the journey to enable users to create and submit their dispute. […]

Categories
Technical

Setting up VPC peering

VPCs are a way of partitioning infrastructure in AWS to isolate them from communication with other infrastructure. They operate at the network level similar to VLANs and block all external communication by default. However, sometimes it is necessary to allow some inter-VPC communication. For example, if you have multiple AWS accounts that need to access […]

Categories
Technical

Cross-region deployments with CodePipeline

Last time, we looked at building a deployment pipeline using CodePipeline. Given the increasing number of countries that are implementing data residency policies, we now need to be able to deploy a copy of our application in a different region along with its database and connected services at the same time as in the main region […]