FinTech Software Development, a Look Inside QA (part 1 of 3)

As Marc Andreesen exclaimed “Software is Eating the World” and Financial software is no exception. The FinTech ecosystem regularly receives $10 – $20 billion dollars each year from venture capital firms to build next-generation platforms and products.

What makes FinTech more complicated than building traditional software?

Financial software, in general, requires the ability for complex transactions at scale, while maintaining high performance, zero downtime, and uncompromising security standards. FinTech has grown on top of the existing banking industry, which often means accessing critical information from a semi-reluctant party. From an engineering perspective, this translates into having to integrate the new systems and platforms, built upon newer technology, with older legacy systems, for which there’s no desire or resources to update. It also makes it desirable to find developers that either have experience with older technologies or have the ability to adapt, interpret and work efficiently in the integration process.

How does QA come into play when building software?

Clean and elegant code that simply works is a must. QA plays a critical role in ensuring the end user is using software which does what it intends to do, when it intends to, without any security holes prior to shipping. There is a higher standard when dealing with such sensitive information.

What should Engineering teams prioritize within QA?

For manual testing, having a solid platform to manage tests and bugs is a must, and it should integrate well with items which will be used by developers and PMs. Visibility and strong traceability are critical, especially as the engineering team grows. We recommend Jira, which has wide adoption, as it’s suited for an agile development environment. In addition to Jira, we recommend test plug-ins, such as Zephyr or qTest.

For automation, we have seen a trend in using tools which allow for automation without the need for writing code, such as Ranorex and Leaptest. There are other tools which require more technical knowledge, such as JMeter or Postman for testing REST APIs. Finally, Selenium Webdriver is the industry standard for the creation of automated tests based on code.

How do these QA tools relate to the FinTech industry?

FinTech requires the most robust tools, due to the sensitivity of the industry. We recommend Selenium and TestNG, as these frameworks/libraries allow for the creation of highly customizable testing suites. With this approach, the highest standards of code development can be applied. QA Automation Architects ensure code quality, modularity, and reusability across the platform. Automation suites are treated as essential, not desirable. These automated testing suites coupled with continuous integration tools (such as Jenkins) ensure that each release undergoes strict testing and regression errors are less likely to occur. NOTE: continuous integration is used in the IT industry, but it is not a standard for all companies.

Are there other technologies QA Teams should keep in mind?

FinTech is an industry which prioritizes technologies that are proven, yet also pushes the envelope on staying modern and current, which differentiates from the traditional software world. This means technology stacks, which include (but not limited to) Java, Microservices, React, and Angular, among others.

What are some tips to consider when hiring for QA roles in a FinTech company?

The number one rule do not compromise your hiring bar. When hiring a senior engineer, it’s a must to expect the engineer to have a high attention to detail, be open to learning new technologies, and not be afraid to take a position and defend it, yet be willing to change their mind.

The best engineers are constantly reviewing the architecture and platform, performing code reviews, and spending time discussing technical decisions and what could be improved, including considering possible future integrations. Having the confidence to defend your decisions, approach, and code is key. However, openness to being challenged is essential. Vetting a candidate for their approach is just as important as their overall technical skills.

Finally, having high standards for development and not being satisfied if something is simply good enough. FinTech has to be at a different standard than most industries and pass a different level of rigor.

Co-Authors

Juan Pablo Galin is a Technical Leader for True North. He runs QA teams for our most important FinTech clients. Prior, he has been a QA leader for more than 7 years and is also a practicing musician.

Brian Samson is a CoFounder of True North, where he leads strategy, operations, and delivery. Prior, he was on the leadership team for 3X startup exits. He holds an MBA from UCLA Anderson School of Management.