---
title: Ruth Farrell | Software Engineer
description: Software engineer specialising in performance, accessibility, and scalable UI systems.
---

[View projects](https://www.ruthfarrell.com#projects) [Get in touch](https://www.ruthfarrell.com#contact)

** Next project loading

![Photograph of Ruth](https://www.ruthfarrell.com/hubfs/new-port/ruth-cine.jpg)

## About

I'm a senior software engineer that specialises in performance, architecture, and scalable UI systems. I most recently worked at HubSpot, a high-traffic web application, improving Core Web Vitals and delivering fast, well-crafted user experiences.

I collaborate closely with design and product to build interfaces that are both polished and maintainable. Outside of engineering, I teach piano, which has shaped how I communicate, mentor and adapt to different ways of thinking.

- ![](https://www.ruthfarrell.com/hs-fs/hubfs/new-port/orange-stopwatch.png?width=225&height=225&name=orange-stopwatch.png) **Performance-first engineering  
  (with measurable impact)**
- ![](https://www.ruthfarrell.com/hs-fs/hubfs/new-port/orange-planner.png?width=225&height=225&name=orange-planner.png) **Strong UI engineering  
  + design collaboration**
- ![](https://www.ruthfarrell.com/hs-fs/hubfs/new-port/orange-coding.png?width=225&height=225&name=orange-coding.png) **Turning messy systems into scalable, maintainable solutions**

### Skills & tools

#### Languages

- JavaScript
- TypeScript
- Python

#### Frontend

- React
- CSS / SCSS
- GSAP

#### Full-stack

- Node.js
- Django
- Next.js
- REST APIs

#### Testing

- Jest / Vitest
- RTL
- Cypress

#### Tools & workflow

- Git / GitHub
- Webpack / Vite
- CMS templating
- CI/CD

#### Product & collaboration

- Figma
- Agile methodologies

#### Observability & performance

- Core Web Vitals
- Performance optimisation
- Error Monitoring (Sentry)

#### AI

- Cursor
- GitHub Copilot

## I thought I understood...

A blog series where I take on technical concepts I thought I understood, break them down and learn how they play out in real code.

![](https://www.ruthfarrell.com/hs-fs/hubfs/new-port/confused.png?width=225&height=225&name=confused.png)

### I thought I understood memoization

As React starts to handle more optimisation for us, it feels less about using useMemo, useCallback and React.memo correctly and more about knowing when not to use them at all.

- Performance
- JavaScript
- React

[** Read post](https://www.ruthfarrell.com/i-thought-i-understood-memoization)

### I thought I understood API contracts

I used to build my UI around whatever the API returned, until small backend changes started breaking everything.

- Node.js / Express
- BFF
- REST APIs

[** Read post](https://www.ruthfarrell.com/i-thought-i-understood-api-contracts)

### I thought I understood React Rendering

Your React component rerendered. Should you panic yet?

- React
- JavaScript
- Performance

[** Read post](https://www.ruthfarrell.com/i-thought-i-understood-react-renders)

## Projects

Selected work from development roles at HubSpot and Aladdin, plus a few personal builds.

[![Aladdin marketing site: hero with headline The software supporting great schools and feature highlights.](https://www.ruthfarrell.com/hubfs/new-port/aladdin.png)

** Image placeholder 

](https://www.aladdin.ie/)

### Aladdin's Public Web Interfaces

Public-facing web interfaces for Aladdin—implementation, UX polish, and delivery for internal and external users.

- Django
- JavaScript
- UI/UX

[** Live](https://www.aladdin.ie/)

[![HubSpot homepage: global navigation and hero section Where go-to-market teams go to grow.](https://www.ruthfarrell.com/hubfs/new-port/homepage.png)

** Image placeholder 

](https://www.hubspot.com/)

### HubSpot's Homepage

Improved Core Web Vitals and performance on the marketing homepage. HubL, JavaScript, and CSS.

- HubL
- TypeScript
- CSS
- Core Web Vitals

[** Live](https://www.hubspot.com/)

[![HubSpot mobile navigation overlay with search, primary links, and CTAs.](https://www.ruthfarrell.com/hubfs/new-port/navigation.png)

** Image placeholder 

](https://www.hubspot.com/)

### HubSpot's Global Navigation Refactor

Large-scale navigation rebuild with React, HubL, HubDB, and Node.js.

- React
- Backend for Frontend
- HubDB
- Node.js

[** Live](https://www.hubspot.com/)

[![Ruth's Travel Journal: map hero with sticky note and polaroid photo.](https://www.ruthfarrell.com/hubfs/new-port/travel.png)

** Image placeholder 

](https://travel.ruthfarrell.com/)

### Travel Journal

Personal travel journal with React, Sass, and GitHub Pages.

- React
- TypeScript
- Sass
- GitHub Pages

[** Live](https://travel.ruthfarrell.com/)

[![Free CV Creator: template preview with experience timeline and edit controls.](https://www.ruthfarrell.com/hubfs/new-port/cvcreator.png)

** Image placeholder 

](https://cv.ruthfarrell.com/creator)

### CV Creator

Free CV builder in the browser—editable templates, themes, and PDF export. JavaScript, HTML, and CSS.

- JavaScript
- HTML
- CSS

[** Live](https://cv.ruthfarrell.com/creator)

## Contact

- [** Email ](mailto:ruthcafarrell@gmail.com)
- [** LinkedIn ](https://www.linkedin.com/in/ruth-farrell/)
- [** GitHub ](https://github.com/ruth-farrell)