
Mission jQuery Zero: How FreeAgent removed jQuery from our application
Just over 3 years ago FreeAgent was running with 4 front-end frameworks, Stimulus, React with Redux, Rails UJS and jQuery and we were about to start adding Turbo to the stack. Running all these different frameworks was not sustainable and we chose to reduce our number of dependencies and first up was jQuery. We called this our legendary jQuery code, code that had helped us grow a business and provide… Continue reading

Introducing Analytics Engineering
Over the last few years weāve evolved the way our analytics team works to enable easy access to accurate and reliable data for faster, better decision-making. Recently we made one more changeāour Business Intelligence Analysts are now Analytics Engineers! Continue reading

A case of missing validation messages
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
We're hiring! Check out our vacancies š
The five stages of AI tool adoption: a developer’s journey
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

From QA Engineer to Software Engineer: my journey
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
Blasting away with Jetpack Compose: Android development at FreeAgent
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

Hybrid working: finding balance in flexibility
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

It takes a village to raise an intern
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

Breaking the coding doom loop: lessons from my intern project
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

Thinking on paper the software engineering way
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