Skip to content

Grinding Gears

Tales of code crunching from the FreeAgent Engineering team

  • Development
  • Data & ML
  • Infrastructure
  • Mobile
  • Tooling
  • Security
  • Culture
  • Careers

We're hiring! Check out our vacancies 👈

A case of missing validation messages

Posted by James Shadwell on 13 March 2025

I’ve recently worked on two very similar issues within the FreeAgent app, which is a Rails web application. The problem that was reported in both cases was that when a user tried to submit invalid data they didn’t get any kind of message indicating what went wrong. In case it helps someone else (and let’s be honest to remind myself when I undoubtedly come across it again) I thought I’d… Continue reading

➼ Read other posts about ruby on rails

The five stages of AI tool adoption: a developer’s journey

Posted by John Fredrickson on 19 December 2024

Do you remember the first time you opened Excel and discovered pivot tables? Or perhaps that moment when you first held a digital camera after years of developing 35mm film? Maybe it was when you wrote your first SQL query and watched data magically arrange itself exactly as you needed it. These technological transitions in our lives often follow a strikingly similar emotional pattern. The initial rush of discovering something… Continue reading

➼ Read other posts about AI or general

From QA Engineer to Software Engineer: my journey

Posted by Kieran Donnelly on 22 August 2024

At the start of the year, I was a Student Quality Assurance Engineer, testing educational games at an educational technology company. Fast forward to now, and I’m navigating the complexities of accounting software as an engineering intern. How did I make this change? Why did I choose this path? And what insights can I share with others considering a similar leap? The starting point During my third year studying computer… Continue reading

➼ Read other posts about career progression or internship or software engineering or software testing

We're hiring! Check out our vacancies 👈

Blasting away with Jetpack Compose: Android development at FreeAgent

Posted by Reuben Lynch on 19 August 2024

FreeAgent’s talented mobile app engineers work within their own specialised technology stack. Unlike the developers for the desktop version of FreeAgent, we don’t use HTML, JavaScript, or Ruby. Instead, we work with Kotlin for Android development, and Swift for iOS. The FreeAgent mobile app developers work to keep feature parity with the desktop version, whilst juggling unique mobile-specific considerations. These considerations are vital to empowering mobile customers and their businesses.… Continue reading

➼ Read other posts about android or internship or kotlin or mobile or software engineering

Hybrid working: finding balance in flexibility

Posted by Theo Michell on 8 August 2024

Recent years have shown that we no longer have to be chained to our offices. Particularly for those who do everything on a computer, remote working has brought welcome changes, and many people have adapted well to this new environment. Adopting hybrid arrangements, people can get the best of both worlds, and FreeAgent is an excellent showcase of workplace flexibility. Coming into my FreeAgent internship as a student accustomed to… Continue reading

➼ Read other posts about career progression or internship or remote working or work life

It takes a village to raise an intern

Posted by Jamie Kirk on 8 August 2024

Let me tell you about my worst day at FreeAgent. At the start of June, I was eager to get started as the newest workflow intern, the team responsible for user-facing admin features. The first couple of weeks were spent bouncing between inductions and tech issues, but I finally found my feet at the beginning of week 3. Ruby was starting to make sense, my tech was up and running,… Continue reading

➼ Read other posts about career progression or confidence or experience or internship

Breaking the coding doom loop: lessons from my intern project

Posted by Fiona McLaren on 6 August 2024

Tell me if this sounds familiar. You get a project idea that you’re excited about, create a new GitHub repository, and dive headfirst into coding. Instead of coming away with your new pride and joy, you end up with just another repo in your archive. Well, this has happened to me too, too many times!  With my university projects, I could always produce a good piece of work. But university… Continue reading

➼ Read other posts about career progression or experience or internship or planning or project management or software engineering

Thinking on paper the software engineering way

Posted by Jamie Kirk on 30 July 2024

Starting your first engineering job feels like a race against time. Handle coding, survive testing, run through a slew of inductions and find time somewhere in there to meet your teammates. Organisation tools are everywhere. But with a schedule spread across Google Calendar, Notion, and the odd Slack notification, nailing the daily admin can become a chore in its own right. The purpose of a planner is to break down… Continue reading

➼ Read other posts about career progression or internship or planning

Combining text with numerical and categorical features for classification

Posted by Delphine Rabiller on 17 May 2024

Classification with transformer models A common approach for classification tasks with text data is to fine-tune a pre-trained transformer model on domain-specific data. At FreeAgent we apply this approach to automatically categorise bank transactions, using raw inputs that are a mixture of text, numerical and categorical data types.    The current approach is to concatenate the input features for each transaction into a single string before passing to the model.  For… Continue reading

➼ Read other posts about AWS or BERT or data science or fine-tuning or hugging face or machine learning or NLP

How the Ruby Interpreter Creates Methods on the Fly

Posted by Matthew O'Donnell on 28 February 2024

(And why it matters!) I was lucky enough to attend last year's EuRuKo, the travelling European Ruby conference. A theme of the conference (for me) was Ruby's infamous embrace of metaprogramming, which I've had little exposure to in my day-to-day as a Rails dev. The approach to this discussion was inspired by this great talk by Masafumi Okura on Code Reading, and much of the detail comes from the book… Continue reading

➼ Read other posts about deep dive or ruby

Posts navigation

« Older posts
Newer posts »

We're totally hiring!

See our current engineering vacancies

Built with ❤️ by the FreeAgent team.