The technology stack that you utilize to implement a software project has a direct impact on its success. By employing certain programming languages, frameworks, and libraries, software experts can ensure higher scalability, better performance, and stronger fault tolerance. Furthermore, it is possible to improve the speed of building, testing, and deploying applications, vital for startup development under tight deadlines.
Introduced in 2009 and supported by Google, Golang, or Go, is a statically-typed language that allows for addressing various challenges, from reducing server response times to handling millions of requests per second.
Since 2011, Surf has been delivering full-cycle software engineering services, including business analysis, UI/UX design, front-end and back-end development, testing, as well as system maintenance. Our team knows when to apply each technology to meet your software requirements and end-user expectations.
If you are wondering how not only to build a tech startup but scale it further on, it is advisable to learn from the experience of successful companies. In this article, you will explore how world-famous startups using Golang managed to resolve their issues and achieve excellent results. Let’s begin.
Famous startups using Golang in their projects
1. Bitly. Improving performance and reducing server costs
Bitly is among the most well-known startups using Golang. Introduced in 2008, Bitly is a web platform for link management and URL shortening. Providing both free and paid functionality, the system allows businesses and individuals to track content links and gain meaningful insights into every click made by users.
At the moment, Bitly runs 130 queue consumer processes, nearly 15 web applications, and external APIs (application programming interfaces), 35 internal APIs, as well as 20 datastores. Serving customers from all over the world, Bitly handles millions of links and billions of redirects on a monthly basis.
The company started employing Go in 2014. Keeping pace with software development trends, Bitly decided to try out cutting-edge technology for building a simple open-source solution. Due to high performance and scalability, the organization enjoyed Go so much that it migrated all legacy services to this programming language.
Employing Go, Bitly reduced the number of servers required for workload management, resulting in significant cost savings. By migrating away from the Golang programming language to Python, the firm was able to improve response times by 50%. Additionally, Bitly revealed that it was possible to onboard software engineers who were unfamiliar with Go in just a few weeks.
2. American Express. Modernizing a payment and reward platform
Established in 1850, American Express is a global corporation that delivers payment card services to both individuals and businesses. Headquartered in New York, the organization offers a variety of products, involving solutions for expense management, corporate banking, business travel, merchant acquisition, trend analysis, as well as credit and charge cards.
Serving millions of users worldwide and processing numerous transactions per second, the company’s online payment and reward system had to provide performance and high availability despite peak loads. However, the existing platform did not align with those requirements, so American Express wanted to modernize its architecture.
To find the best programming language for addressing existing needs, the software engineers compared Java, Go, Node.js, and C++. With the exclusion of Go, American Express had already used all of these languages in their projects.
During their comprehensive research, the team evaluated aspects such as speed, tooling, and ease of software development. Concerning performance, Go was second to showcase the best result. Although Go was not the fastest in this analysis, the software experts saw the true value of its tooling, which enabled them to improve overall speed.
Furthermore, Go proved itself as a great technology for creating microservices. The web developers were impressed by benchmarking tools and profiling features, while also noting how easy it was to write tests in Go. Additionally, the engineers assured Go allows for writing less code to complete the same tasks. Employing the Golang programming language, American Express ensured performance, scalability, and high availability of its digital payment and reward system.
It is worth noting that apart from microservices development, Go is especially suited for many other use cases that you can see in the picture below. Actually, this makes Go one of the best programming languages for startups.
3. Dropbox. Enabling scalability and performance
Dropbox is the world’s leading provider of software solutions for cloud file storage, sharing, and online collaboration. By now, Dropbox has transformed from an inspiring startup into a large company serving over 700 million users. To date, Dropbox has fundraised a capital of $1.7 billion.
Founded in 2007, Dropbox is one of the famous startups using Golang. Like many other leading companies, Dropbox utilized another programming language at the beginning but later decided to migrate to other technologies for addressing business challenges. Dropbox started its journey with Python, owing to a considerable share of its success with this language.
However, since the number of users was continuously growing, it was crucial to enhance scalability and performance. In this regard, the organization decided to transfer critical parts of the system back-end from Python to Golang. Thanks to this, Dropbox managed to improve concurrency support and execution speed.
4. Allegro. Creating a performant cache service to speed up the app
Allegro is another example of a well-known startup using Golang. Founded in 1999, Allegro is among the leading e-commerce companies in Europe. Based in Poland, the organization operates an e-commerce marketplace that currently has 22 million customers on a monthly basis. The platform is also used by 135,000+ vendors, providing them with fully-fledged functionality to deliver goods via the Internet.
In the beginning, the startup was launched by a few people while the first website version fitted on a floppy disk. By now, Allegro has been transformed into the largest online retail marketplace of European origin. Even in 2011, the platform was employed by more than 11 million people. In 2017, Allegro reported having over 16 million marketplace visitors.
Serving millions of users and storing massive data volumes, Allegro needed to create a fast cache service with concurrent access. The solution was intended to handle even millions of entries and evict them after a certain amount of time. In order to build this service, the company searched for technology that would meet existing requirements.
With solid experience in Java, PHP, and Python, Allegro wanted to try something new. Since Golang is a compiled and structured language with a managed memory, it was a more secure tool than many other technologies. On top of that, external caches, such as Memcached and Couchbase, require additional time on the network.
That is why Allegro decided to utilize the FreeCache in-memory cache available in the Golang programming language. As a consequence, Allegro managed to speed up its app from over 2.5 seconds to less than 250 milliseconds for the longest request.
5. MercadoLibre. Reducing the server load and ensuring scalability
MercadoLibre is another successful startup using Go that operates in the e-commerce sector. Headquartered in Buenos Aires, MercadoLibre is an e-commerce technology company that owns digital marketplaces for online retailing and auctions. At the moment, the organization takes the leading position in nearly 18 Latin American countries.
Back in 2015, MercadoLibre witnessed a rapid surge. The number of registered users reached 126.7 million, seeing a year-on-year increase of 22.1%. What’s more, the number of payment transactions was 80.4 million, accelerating to 73.7% in comparison to 2014.
To maintain a continuously growing number of users and add new features, the startup had to ensure scalability. However, as the existing API framework was built on top of the outdated Groovy and Grails stack, it was difficult to extend the ecosystem. Employing the Golang programming language, the company managed to modernize its software solutions and enable seamless scaling.
In addition, the API team created and maintained multiple APIs that were further used by the company’s software solutions, including MercadoLibre.com (e-commerce) and MercadoPago.com (fintech) platforms. The average application programming interface had 8–10 million requests per minute, so the organization also searched for performance. With Go, the software experts were able to handle them in less than 10 milliseconds per request.
By migrating to the new technology stack, MercadoLibre improved system response times, reduced the number of servers by 8x (from 32 to 4), and cut CPU usage by 2x, leading to significant cost savings. This way, MercadoLibre found that Go is among the best programming languages for startups. The success of this experience convinced the engineers to transfer other microservices to Golang.
6. Twitter. Processing 1+ million events per second in real time
Established in 2006, Twitter is one of the most well-known startups using Golang for its projects. By now, it has transformed from a small company into the leading market player in the industry. Currently, this social networking platform has 229 million users per day.
Back in 2014, Twitter aimed to build a mobile analytics product for software developers that would generate daily summary reports—showcasing app performance—and automatically send intelligent alerts. The team needed to create a software solution that would process and archive millions of events per second, as well as include an offline mode.
The software engineers were also looking to reduce the load on batteries and networks while enabling data processing in real time or close to it. With the goal of addressing this challenge, the software experts at Twitter decided to first compress data analytics events while sending them in batches.
In order to handle billions of events and achieve scalability, the software developers used Golang for the back-end. When making the system architecture Twitter employed the principles of decoupled components and asynchronous communication. Finally, the team released Answers, a mobile analytics tool that processes nearly a billion sessions per day and can scale to withstand higher loads.
Wrapping it up
To sum up, there are many startups using Golang for entirely different purposes. Employing Go for startup development makes it possible to enhance scalability, availability, and performance. The language is perfectly suited for creating a microservice architecture and handling numerous requests in real time.
With Go, software engineering can improve the speed of building, testing, and deploying applications. Additionally, learning Go is rather a simple task when programmers know other languages, such as Java and C++. Therefore, in this case, the onboarding and training of Go newcomers are unlikely to take a lot of time.
See below what startups that use Go say about this technology.
If you are looking to launch a successful startup, you should turn to a trustworthy Go development company. At Surf apart from delivering full-stack software engineering services, we also provide assistance in writing a technical specification, choosing a tech stack, and prioritizing features.