Devised as an easy-to-use and universal tool for business, Golang programming language combines the advantages of its predecessors, such as C, PHP, and Python. So how good is it in fact?
At Surf we have been developing applications for fintech, banks, retailers, and streaming services since 2011. DesingRush has put us among the top software development companies in 2023. We are confident that for a successful development team, it’s important to be aware of the best solutions and practices available, so we’re always on the lookout for new technologies and success stories. In this article, we share an overview of Golang use cases in various industries and on different platforms.
Looking for a reputable Golang developer?
Go with SurfGolang use cases in fintech
Monzo
uses Go to develop microservices
Monzo is a digital banking platform and marketplace launched in 2015. Simplicity, customer focus, innovation, and effective marketing strategy helped the fintech company to attract 7.5 million customers, as of 2023.
Instead of starting with a monolith application, as most companies do, Monzo went with the microservice approach from the very beginning. Currently, Monzo uses over 1600 microservices to run its banking system. Since Golang is a microservice-friendly, performant, and resource-effective programming language, the bank used it for several of its projects. The result was optimized computing resource usage and minimized delays.
Solarisbank
widely employs Go in back-end development
Launched in 2016, German-based Solarisbank became a tech company that supplies other financial companies with digital solutions in the field of customer identification, payments, and cards. If we look at what Go is used for in the bank, it turns out that the language is highly popular among the company’s teams, including those responsible for Data platform, Core banking, and Authorisation. Solarisbank employs Go for building infrastructure pipelines, protocol-level banking systems, and reverse proxy authentication.
The Surf team is familiar with various challenges of fintech development. From fast processing of thousands of simultaneous requests to high-security requirements, fintech is arguably one of the most demanding industries for software development. Our team was behind the launch of the first Flutter-powered banking app in Europe that received several awards.
Learn more about the first Flutter banking app and the solutions our team used >>
Golang best use cases in payments processing systems
PayPal
sped up development with Golang
PayPal is a global American provider of convenient and secure online payments. The company’s global audience boasts over 430 million active accounts. When the company experienced fast growth several years ago, PayPal decided to try a new programming language instead of C++, which often slowed down the scaling process. Among the key objectives was to maintain fast transactions and high availability and avoid slumps in developers’ productivity. All of these required a programming language that was easy to use, maintainable, and secure at the same time.
In this specific use case, Golang turned out to be the appropriate solution for building, testing, and releasing operational pipelines. After PayPal started implementing it, the engineers noticed a CPU usage reduction of 10%. Within 6 months, the development process has been optimized: now programmers solve tasks more efficiently because they don’t have to concentrate on “code fighting” anymore.
American Express
modernized payment processing and achieved better performance, thanks to Go
American Express is another company that answers the question ‘Where is Golang used?’. The global leader in payment card services faces the constantly growing number of online payments per second, which requires it to regularly modernize architecture to maintain high availability and speed of transactions.
Go was chosen by American Express after an internal evaluation of four languages, including C++, Java, and Node.js. The results were impressive: Go achieved the second-best performance at 140,000 requests per second. The technology showed great results in the development of payment and rewards networks, which are essential for the scalability and reliability of the company’s services.
Having an open-source toolchain, extensive libraries, and a large online community, Go helped American Express modernize its systems, improving speed and productivity. It also became the main language for the backend of the company’s microservices.
Learn more about building microservices with Go
Read moreMusic and video streaming platforms with Golang
Twitch
prefers Go for its high load systems
Twitch is an American-based video streaming platform popular among gamers and entertainers. Every day, the platform processes simultaneous requests from over 30 thousand users, streams over 2 million concurrent videos, and delivers over 10 billion messages in chat.
When it comes to the Go use case, high availability and reliability are vital for Twitch. To provide its users with a smooth streaming experience, the company has chosen Golang to build a significant part of its high load systems:
- transcode system is implemented with both C++ and Go;
- distribution and EDGE, providing the highest quality of video, is mostly written in Go;
- chat as a scalable distributed system is written in Go.
Go advantages, such as scalability, simplicity, good concurrency, and a convenient multithreading system were wholly appreciated by Twitch. Also, the company developed its own RPC (Remote Procedure Call) framework, which allows effective communication between back-end services built with Golang.
At Surf we have our own story of custom YouTube-like video streaming platform development. Partnering with a producer of top-rated digital content, we created web and mobile apps. The platform’s back end’s ability to handle 50 thousand requests per second, a convenient video player, a powerful admin panel, and analytics service helped the platform to become the App Store’s Top Entertainment App.
Learn more about the streaming platform by Surf >>
SoundCloud
improved development process with Go
Established in 2007, SoundCloud, an online audio distribution platform, has grown to become one of the most popular and largest platforms of its kind, reaching 190 countries. With over 76 million active users per month and approximately 300 million tracks, it boasts a collection three times larger than similar services.
SoundCloud has adopted Go, a simple yet powerful language that facilitates rapid development, deployment, testing, and rollout processes for apps. Programmers working at SoundCloud note that with Go they concentrate on problem-solving, not on language itself. There is usually only one way to do the thing, so they don’t need to spend extra time choosing a way of code writing.
As Go is a statically typed and compiled language, it is also utilized by the company for unit testing during development and near-real-time static analysis. Today, Golang apps represent a significant share of services and repositories used by SounCloud. The programmers working at the company increasingly turn to Go when spinning up new projects.
Golang use cases in retail
Allegro
implemented fast cache service using Go
Founded in Poland in 1999, Allegro is one of the largest online marketplaces in the countries of Central and Eastern Europe. Every month, it is used by over 135 thousand vendors who offer various goods to more than 22 million online customers every month.
To support the system’s reliability under high loads, Allegro decided to develop a fast cache service that can handle numerous entries and delete them after some time. Before the company tried Go, they used Python, Java, and PHP—more complicated languages with lower performance. Go, an easy language with high compilation speed and effective memory management, turned out to be the solution that the company was looking for. Using Golang’s FreeCache library, the company decreases the longest request time from 2.5 seconds to 250 ms.
MercadoLibre
modernized software and reduced resource consumption with Go
MercadoLibre, a leading e-commerce company based in Argentina, operates online marketplaces and online auctions across Latin America. As the number of users and transactions continued to grow, with new features being regularly developed, the company faced significant scalability challenges.
Previously, MercadoLibre used a stack and API framework that made scaling difficult. To address this, the company turned to Go, a programming language known for the benefits of simplicity, scalability, and modern tools. This helped MercadoLibre to modernize its software and achieve impressive scalability results.
Using Golang in its projects allowed MercadoLibre to speed up the processing of 10 million requests from one minute to 10 milliseconds. This efficiency has led to a significant reduction in resource consumption. For example, having halved CPU usage, the company now requires eight times fewer servers than before.
To sum up
- Golang is widely used in various industries, including fintech, retail, video streaming, and banking.
- In fintech, Golang apps and microservices allow speed up request processing and make the development more efficient.
- In payment processing, Golang is used to solve tasks like modernizing payments and rewards, increasing performance, and improving the overall development process.
- In retail, Golang use cases include the development of fast cache services for a dramatic reduction of request time.
- In media, Go is a good fit for high-load systems, helping developers to build scalable and fast digital products
As we see, Go benefits are numerous. The language is a perfect fit for building back ends of large-scale projects, while a substantial development cost might make it not the best option for small apps, middleware, or a PoC (Proof of Concept) for investors.
At Surf we have 12 years’ experience in back-end development. Over time, we have mastered and implemented the best software development practices and launched many successful projects. We are always glad to share our expertise and advice relevant to your new project or business idea.