All posts tagged with 'software engineering'

Fixing my first bug – the experience
As a computer science student, I obviously fixed bugs in code before. However, the first one I had to fix at FreeAgent felt significantly different from the corrections I had to make in my university assignments and other small projects. I think that was because whenever I worked on a project, I either wrote the whole code or the project contained just a few files. That meant I could skim… Continue reading

What is a tech spec and why do I need one?
For the past three months, I’ve been a Software Engineering Intern in the Connections & Add-ons team here at FreeAgent. We look after a number of features that allow FreeAgent to work with third-party services: if a business owner wants to get paid faster, they can add a PayPal, Stripe, GoCardless or Tyl payment link to their invoices; if they need to get their business insured, they can sign up… Continue reading

So you’re going to be an intern
After months of nerves, interviews and one too many LeetCode questions, you’ve done it. You’ve landed an internship, you’re free from the dread of a long, empty summer and your brain is filled with vague notions of what your internship might be like. I’m here to gather up your brain clay and sculpt it into solid ideas of what things will be like. Before we start, it needs to be… Continue reading

Engineering lessons from my SaaS startup
I’m now almost two months into my software engineering summer internship at FreeAgent. When I was 18, I chose to delay the start of my university course for 18 months to have a go at building a ‘Software as a Service’ (or ‘SaaS’) startup with two others. Our software, ‘trackio’, was a bring-your-own data platform that allowed sales teams to collect, connect and reconcile their disjointed data sources. It was… Continue reading

How to boost your confidence as a beginner software engineer
Every engineer has questioned at least once in their life whether they are skilled enough for their chosen field. I experienced these doubts when I started my computer science degree at university, and despite the fact that I got through the first three years successfully, I still wasn’t fully confident in my abilities when I started my internship at FreeAgent. However, this is entirely normal. Every engineer faces challenges on… Continue reading

An introduction to object-oriented programming
Object-oriented programming, or OOP, is a programming paradigm centred around the concept of objects. This article will aim to provide a basic understanding of objects, classes, OOP principles and various other concepts within the paradigm. Code examples will be mediated in the Ruby programming language, which is an example of an object-oriented language. In Ruby, any value is an object, even data types like String and Integer, which are often… Continue reading

What a data science degree doesn’t teach you
When I enrolled on my data science master’s degree I had limited statistical and coding knowledge. This course was designed to teach these skills from the bottom up. Having now worked as a software engineering intern, I have come to realise a lot of things were missed. Moving beyond ‘if it works… it works!’ Learning to code can seem very daunting. There are so many resources and even languages. Where… Continue reading

Software engineering: 5 things they don’t teach you at university
Introduction Over the past couple of months, I’ve been working as an intern software engineer in the Banking Integrations team here at FreeAgent. Before I started, I had just finished the second year of my Computer Science degree at the University of Birmingham. Whilst university taught me a multitude of skills, there are many that can only be truly gained from working in a company. I’d like to share some… Continue reading

Lessons from my first software engineering internship
I started university two years ago with minimal programming knowledge and only a few lessons making Pong in Scratch under my belt. So in the beginning of my Computer Science degree, I spent a lot of time playing catch-up. My experience here at FreeAgent is what has finally caught me up. Unlike in most internships, it was business as usual from day one for me, rather than one big project.… Continue reading

How we publish user events for 100,000 customers
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