The real cost of Angular 12 upgrade

Danylo Bilokha
2 min readAug 3, 2021

--

In Neocles we are building Pulse — a place where our brands and their customers prefer to do business.

At the very point, Angular 12 was officially released we started to plan the upgrade we gonna roll out.

Hereby I will outline the efforts and time it took our team to upgrade to Angular 12 and the level of change we had to make.

Pulse Technical metrics

The frontend part of Pulse is of huge complexity, take a look at some quick tech metrics guys have collected a couple of months ago. It’s a big, living organism that is supported by over 10 fellow Frontend Engineers as well as people from other disciplines as well.

We are embracing monorepo approach. And benefit from it.

Monorepo consists of such dependencies as Angular, ngrx, NX, rxjs, Storybook, cypress, puppeteer, nest, GQL Apollo, and many more.

So having these many dependencies, the volume of code, and complexities bring expected complications of major upgrades we do once or twice a year on Frontend. Ahh … and stopping development flow is not an option for us.

So what is the cost?

Jira Tempo says it took us over 40 hours, 3 engineers were directly engaged.

It’s however, much more of that — engineers holding up their PR so as not to bring any new merge conflicts for the last couple of hours;

80 commits, over 1300 files changed. Around half of the files were changed manually.

Major Frontend upgrade

The biggest pain points were that we relied on some internal API of one of the libraries heavily and had to move from it as it got refactored (ooops).

The upgrade process can be painful and expensive but it’s a must. Just read 9 Reasons for keeping software dependencies up to date.

I’ve been working in different companies on different projects since 2015 and Neocles is the most demanding company/project I’ve been working at. And the most rewarding. We’re building the most successful B2B platform. Go big, join the great.

--

--

Danylo Bilokha
Danylo Bilokha

Written by Danylo Bilokha

About everything, I guess. Not only Software. You define your path.

No responses yet