<div dir="ltr"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><h1 class="gmail-title" style="font-size:1.95552em;line-height:1.2141em;margin-top:0px;margin-bottom:0.5em;max-width:100%;color:rgb(176,176,176);font-family:Palatino">Why Fintech Companies Use Haskell</h1><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><a href="https://serokell.io/fintech-development" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">Fintech</a><span class="gmail-Apple-converted-space"> </span>is one of the biggest and fastest-growing IT markets today.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">It is an emerging industry that uses technology to compete with traditional financial methods in the delivery of financial services. Mobile banking, investing services, and cryptocurrency are all solutions that make financial services more accessible to the general public.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">One significant trend that we have witnessed in fintech is the use of functional programming languages. In this blog post, we will delve deeper into the state of fintech right now, and how exactly functional programming can improve modern fintech products. In the end, we will list some companies that use FP in their trading, banking, or fintech infrastructures.</p><h2 style="font-size:1.43em;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Benefits of functional programming languages</p></h2><div style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><img alt="FP benefits" class="gmail-" style="max-width: 100%; margin: 0.5em auto; display: block; height: auto;"></div><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Banks, trading firms, and fintech projects use functional programming languages like Haskell because of the properties which imperative programming does not provide. Most of the big companies mention three main reasons:</p><ol style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><li style="max-width:100%">Strong typing helps prevent errors in the code that could lead to problems somewhere down the path. For example, Barclays lists strong typing as one of the reasons for choosing Haskell for their derivative algorithms.</li><li style="max-width:100%">The code is more readable and maintainable, and as a result, it is easier to find bugs and reduce the risk of exploits.</li><li style="max-width:100%">Functional programming handles concurrency better, so these languages excel at complex tasks that involve parallel actions.</li></ol><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Let’s look at the most popular areas in fintech right now and how functional programming can help in their specific use cases.</p><h2 style="font-size:1.43em;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">State of fintech</p></h2><div style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><img alt="State of fintech" class="gmail-" style="max-width: 100%; margin: 0.5em auto; display: block; height: auto;"></div><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Term “fintech” includes a massive amount of companies that work on a range of technologies and projects with different approaches.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Today, thousands of startups are working on unique technologies, some of which include KYC/ID with AI and telemetry, payment and lending protocols, and others. The field is a puzzle that consists of a huge amount of details.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Furthermore, all these small puzzle pieces are trying to be interoperable with each other in real-time. To achieve that speed of service, technologies that provide faster and more concurrent services need to be employed. Some of the functional programming technologies (for example, ones that support actor-like models) are well-suited for making this diverse ecosystem more effective.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">To give an overarching view, here are some of the global trends that we see in the fintech market and FP technologies that can help them in their rise.</p><h3 style="font-size:1.25em;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">AI, Big Data, IoT</p></h3><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">The technologies mentioned above are the most demanded. They are used for the development and implementation of chatbots, virtual consultants and virtual advisories, voice recognition, process automation, predictive analysis (including credit scoring and fraud monitoring). The goal of using those technologies is personalization, transaction security, an increase in time management efficiency, and client behavior analysis.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">FP can bring success to these fields. Scala is already widely used in big data for its superior concurrency and<span class="gmail-Apple-converted-space"> </span><a href="https://spark.apache.org/" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">Apache Spark</a>, while<span class="gmail-Apple-converted-space"> </span><a href="https://www.nerves-project.org/" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">Nerves</a>, an Elixir framework,<span class="gmail-Apple-converted-space"> </span><a href="https://www.cognizantsoftvision.com/blog/year-of-elixir/" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">looks very promising</a><span class="gmail-Apple-converted-space"> </span>for IoT.</p><h3 style="font-size:1.25em;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Transaction processing and infrastructure</p></h3><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">The number of card transactions grows by a CAGR of 13.6% annually, according to the<span class="gmail-Apple-converted-space"> </span><a href="https://image-src.bcg.com/Images/BCG-Global-Payments-2019-Tapping-into-Pockets-of-Growth-September-2019-rev_tcm9-231986.pdf" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">Global Payments 2019 report</a>. One reason for that is the integration of biometric analysis and contactless payments.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Functional programming languages allow for the building of stable infrastructures that are more reliable, fault-tolerant, and have fewer errors. In particular, Elixir is great for situations where you need to handle a lot of small interactions from a multitude of users.</p><h3 style="font-size:1.25em;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Credit and insurance technologies</p></h3><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Today, credits and insurance are issued not only by traditional banks but by smaller private companies and startups. There are tons of projects that provide P2P lending, and technologies in this field are developing very fast.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">If you are a startup in the field of credit or insurance, you need to move fast. A well-built FP team will be able to iterate quickly and scale your product better, since the paradigm allows for better productivity and faster large-scale changes.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Read<span class="gmail-Apple-converted-space"> </span><a href="https://serokell.io/blog/haskell-in-industry-riskbook" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">our interview</a><span class="gmail-Apple-converted-space"> </span>with a startup in the field of reinsurance, Riskbook, to learn more about the benefits of Haskell for rapidly changing fields.</p><h3 style="font-size:1.25em;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Blockchain and cryptoсurrencies</p></h3><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Businesses use blockchain technology as a fast and safe way of dealing, monitoring funds, making quick international payments, storing and sharing reports. A lot of banks unite under Ripple or HyperLedger partnership to exchange information between them. Blockchain can be used to store biometric data as well.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Functional programming (especially Haskell) is great for handling blockchains due to immutability, type safety, and the ability to manage distributed computation well. Haskell also enables one to build excellent domain-specific languages, such as<span class="gmail-Apple-converted-space"> </span><a href="https://serokell.io/blog/lorentz-implementing-smart-contract-edsl-in-haskell" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">smart contract languages</a>.</p><h2 style="font-size:1.43em;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Companies that use functional programming</p></h2><h3 style="font-size:1.25em;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Fintech</p></h3><h4 style="font-size:46px;margin:1em 0px;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Klarna</p></h4><div style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><img alt="Klarna" class="gmail-" style="max-width: 100%; margin: 0.5em auto; display: block; height: auto;"></div><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">The European payments startup<span class="gmail-Apple-converted-space"> </span><a href="https://www.klarna.com/" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">Klarna</a>uses a wide variety of functional programming languages like Scala, Erlang, Clojure, and Haskell. The core of their services is in Erlang.</p><h4 style="font-size:46px;margin:1em 0px;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Digital Asset</p></h4><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Digital Asset is a fintech company that helps companies design and run the next generation of business applications, mainly with the help of<span class="gmail-Apple-converted-space"> </span><a href="https://daml.com/" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">DAML</a>, a smart contract language written in Scala. They have a multitude of languages on their GitHub, including Haskell and Scala.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">You can read our interview with them<span class="gmail-Apple-converted-space"> </span><a href="https://serokell.io/blog/daml-interview" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">on our blog</a>.</p><h4 style="font-size:46px;margin:1em 0px;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Adjoint</p></h4><div style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><img alt="Adjoint" class="gmail-" style="max-width: 100%; margin: 0.5em auto; display: block; height: auto;"></div><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><a href="https://www.adjoint.io/" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">Adjoint</a><span class="gmail-Apple-converted-space"> </span>digitises cash and settlement processes for multinational corporates. Right now, their main product is Adjoint Treasury, a real-time payments and settlement platform for corporate treasuries.</p><h3 style="font-size:1.25em;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Banking & trading</p></h3><h4 style="font-size:46px;margin:1em 0px;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Barclays</p></h4><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><a href="https://www.barclays.co.uk/" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">Barclays</a><span class="gmail-Apple-converted-space"> </span>has an embedded domain-specific functional language (FPF) written in Haskell to specify exotic equity derivatives. We have covered it in more detail in our<span class="gmail-Apple-converted-space"> </span><a href="https://serokell.io/blog/top-software-written-in-haskell" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">Haskell stories of success</a>.</p><h4 style="font-size:46px;margin:1em 0px;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Standard Chartered Bank</p></h4><div style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><img alt="Standard Chartered" class="gmail-" style="max-width: 100%; margin: 0.5em auto; display: block; height: auto;"></div><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><a href="https://www.sc.com/" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">Standard Chartered</a><span class="gmail-Apple-converted-space"> </span>uses their own strict dialect of Haskell called Mu, and has an insanely large codebase, featuring around half a million lines of Haskell code and 4.5 million lines of Mu code.</p><h4 style="font-size:46px;margin:1em 0px;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Tinkoff Bank</p></h4><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><a href="https://www.tinkoff.ru/eng/" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">Tinkoff</a><span class="gmail-Apple-converted-space"> </span>uses Haskell for the backend of Tinkoff Travel Agency and Scala for the backend of Tinkoff Bank.</p><h4 style="font-size:46px;margin:1em 0px;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Jane Street</p></h4><div style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><img alt="Jane Street" class="gmail-" style="max-width: 100%; margin: 0.5em auto; display: block; height: auto;"></div><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Jane Street uses OCaml for almost all the backend, from low-latency trading and market risk systems to tools for managing and monitoring infrastructure, workflow tools, and data analytics.</p><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">To learn more about the reasons for this choice, you can watch a detailed talk from their tech side:<span class="gmail-Apple-converted-space"> </span><a href="https://www.youtube.com/watch?v=v1CmGbOGb2I&feature=emb_title" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">Why OCaml</a>.</p><h4 style="font-size:46px;margin:1em 0px;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">Morgan Stanley</p></h4><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">Morgan Stanley uses Scala and is home to massive large-scale Scala projects. For more information on Scala at Morgan Stanley, you can check<span class="gmail-Apple-converted-space"> </span><a href="https://vimeo.com/147697498" style="text-decoration:none;color:rgb(90,200,250);max-width:100%">this short video</a>.</p><h3 style="font-size:1.25em;max-width:100%;color:rgb(176,176,176);font-family:Palatino"><p style="max-width:100%">And many more</p></h3><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">In addition, many other financial companies have used or use Haskell or other functional programming languages:</p><ul style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px"><li style="max-width:100%">JP Morgan</li><li style="max-width:100%">BNB Paribas</li><li style="max-width:100%">Merrill Lynch Bank of America</li><li style="max-width:100%">Deutsche Bank</li><li style="max-width:100%">ABN AMRO</li><li style="max-width:100%">Credit Suisse Global</li><li style="max-width:100%">Allston Trading</li></ul><p style="max-width:100%;color:rgb(176,176,176);font-family:Palatino;font-size:46px">With a lot of heavyweight banks and startups doing functional programming, it seems to be a trend that won’t go away. Furthermore, fintech is becoming more complex and distributed every minute, with banks realizing that in the face of the COVID crisis, they are not digital enough. Functional programming, it seems, has the tools to solve the problems associated with that. Whether you are a fintech startup or a bank, perhaps it is time to start thinking about making a switch to a more future-proof technology.</p>
</blockquote></div></div>