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 👈

throw_away_your_clutter

Can’t someone else do it? Automating Looker Housekeeping in Two Days

Posted by Rob Brown on 2 October 2020

This blog discusses how, through successful planning and design, we were able to automate some Looker housekeeping tasks in less than 2 days. Continue reading

➼ Read other posts about looker or matillion or planning or technical-debt

Return of the intern

Posted by Lea Whitelaw on 1 October 2020

A year on from my first data science internship at FreeAgent, I’m about to start my second one, and I’m getting ready for my second first day. It’s different this time though. Aside from the fact that I am now a fully fledged graduate (scary!), this internship is going to be based entirely within my living room, as the entire company is now working remotely. I have never worked remotely… Continue reading

➼ Read other posts about accountancy practice or analytics or data science or insights or internship or remote working

How we publish user events for 100,000 customers

Posted by Eva Koleli on 15 September 2020

The FreeAgent application is currently used by more than 100,000 companies. When users send their invoices, explain their bank transactions and do any other action to take care of their business, these actions are recorded automatically. We record them in different systems and for different purposes. One of the systems where we record actions like these is an event system and these records are called events. Events contain information about… Continue reading

➼ Read other posts about event system or software engineering

We're hiring! Check out our vacancies 👈

What is a Business Intelligence Analyst?

Posted by Jack Gladas on 27 August 2020

The term Business Intelligence Analyst (or BI Analyst for short) can be a confusing one. Broadly speaking, the role of a BI Analyst can overlap with lots of other job titles that you might see out in the wild, such as: Data AnalystData ScientistInsight AnalystProduct AnalystMarketing AnalystCommercial AnalystReporting AnalystMI AnalystWeb AnalystCRM/Customer Analyst In general - and especially in the data world - job titles can often be inconsistent and subjective.… Continue reading

➼ Read other posts about analytics or bi or data or job titles or looker

Transaction Taxonomy: Spending the Summer Studying SVMs

Posted by Michael Wilson on 24 August 2020

A company faces some unavoidably arduous tasks when taking control of their finances. One such task, which currently takes up a lot of time for our users, is explaining bank transactions. This is the process of assigning an accounting category to transactions, which is important both for internal reports generated by FreeAgent and for external submissions, for example to HMRC. At the end of June FreeAgent launched a suite of… Continue reading

➼ Read other posts about classification or data science or internship or machine learning

Uprooting the Binary Tree

Posted by Pat George on 19 August 2020

You’re a talented software engineer looking for your next position.  Maybe you’re eyeing the FAANGs so you start researching how they do their technical interviews and you discover they like to ask algorithm-type questions - Reverse a linked list in place, Print the kth level of Pascal’s Triangle, Does string contain substring - and have you design Dropbox, Twitter, or some other system of their choosing. Then you apply to… Continue reading

➼ Read other posts about hiring

The perils of a bad date

Posted by Lorna Noble on 13 August 2020

As you would expect from small business accounting software like FreeAgent, we deal with a lot of dates and times. Ruby on Rails has some really useful helper methods — but there are also a few unexpected quirks in the way that different date and time classes interact. One of those quirks sadly caught me out recently. Picture the scene I’ve written tests, the CI pipeline has passed and my… Continue reading

➼ Read other posts about ruby on rails

Starting from Home: Remote Data Science Internship at FreeAgent

Posted by Michael Wilson on 30 June 2020

Starting a data science internship at FreeAgent was going to be a completely new experience for me and I was super excited. It’s a lovely warm day in Edinburgh, Monday 1st of June, I’m standing in my kitchen looking out of the window and wondering what the next few months will hold for me. It’s 9.28am and my first meeting is supposed to start in 2 minutes. Am I going… Continue reading

➼ Read other posts about data science or internship or remote working

Switching to Feature Testing with Headless Chrome

Posted by Sneha Somwanshi on 26 June 2020

At FreeAgent, we run 45,000 tests on every code change to make sure that our rails monolith continues to work as expected. These include unit, integration, and acceptance tests. Recently, we switched from Capybara-webkit to Headless Chrome with Selenium for running JavaScript and acceptance tests. Why did we switch? Capybara-webkit has now been deprecated and uses an old version of webkit engine, so we had to look for alternatives. We… Continue reading

➼ Read other posts about continuous integration or testing

Personal development

How I made personal development work for me

Posted by Andy Stabler on 17 June 2020

Taking regular time out to focus on self-improvement can have concrete benefits for both you and your organisation. These benefits could include becoming more confident in your role, getting that promotion, or helping you become a more collaborative and communicative team member. It surprises me that lots of people I speak to aren’t nearly as excited about personal developments as I am. If you feel guilty about taking time out… Continue reading

➼ Read other posts about career progression or personal development or software engineering

Posts navigation

« Older posts
Newer posts »

We're totally hiring!

See our current engineering vacancies

Built with ❤️ by the FreeAgent team.