Jamie Burton, a front-end software engineer at Modulr
Every day, most of us interact with the front end of software applications, which display useful information on our computer screens by pulling in data from servers. In the fintech world, however, a front end can mean the difference between success and failure.
A fintech’s success largely hinges on how its user interface differentiates it in the marketplace, especially against larger more well-established firms, which are typically unable to respond to customer needs as quickly as more fleet-of foot fintechs.
Enterprise front-end applications are now capable of handling complex user scenarios. Angular (a front-end framework developed by Google) leads the way in the development of large-scale applications, largely due to its robust architecture and ‘opinionated’ design philosophy. So, what makes Angular stand out?
Angular is an extremely scalable framework. It is based on TypeScript, which enforces static typing, a more traditional object-oriented programming style, introducing concepts such as interfaces, classes (this is ‘syntactic sugar’) and advanced object definitions.
For the front-end development team at payments-as-a-service provider Modulr, Angular allows us to design applications in a ‘modular’ way (excuse the pun), which we continue to build on by utilising the latest features of each release.
Ultimately, this modularity means we can add and remove features in a much shorter timeframe compared to other frameworks. That is not to say that Angular is perfect, far from it. But it does make it easier to manage large software applications.
Although, this can be done in other frameworks, such as Vue or React, Angular is arguably the best in this regard, due to its predisposition for enterprise-level applications.
A framework for handling complexity
Not everyone, however, is a fan of the front-end development framework. Angular is often said to be over-engineered, complex and to have a steep learning curve. However, the reasoning behind such claims requires some historical context. In the past 10 years, the landscape of front-end development has changed rapidly. Previously, client-side applications were built to meet more simplistic requirements.
As these requirements have grown in complexity, due to increased user expectations and improved browser capabilities, the development of a more complex front-end toolset seemed inevitable. Examples of more complex features that are now required include middleware (such as interceptors), route guarding and component construction algorithms, which make rendering more efficient when it is used for change detection.
Conversely, the Angular user documentation is often not up to par, which can be frustrating for engineers.
As a ‘highly opinionated’ framework, (which is certainly not to everyone’s taste), Angular enables front-end engineers to quickly establish a way of working. In practice this means that design patterns and application architecture have already been thought of by the Google team and the wider open source community, so teams like ours can simply build upon these principles.
In the case of new developers joining the company, once they gain an understanding of how Angular works, it should be relatively easy to understand our code base, at least that is the hope.
Angular has its advantages and disadvantages, but it has helped Modulr build out its customer portal in a modern, scalable and productive manner.
If you’re interested in working with Angular in a fast-growing payments fintech like Modulr, we have a number of openings in our software engineering team.
ABOUT THE AUTHOR: Jamie Burton is a front-end engineer at Modulr. He has a fundamental understanding of the modern Web Stack; namely HTML, CSS, Object Oriented Software Development, Web Service Architecture and application security. When he’s not building front-end applications, he writes articles on software development for Modulr and other publications.