STRV’s backend tech stack comes with a history. There’s a story behind how our backend team evolved, and what brought us to stand behind Node.js, C#, Golang and Python. We’d like to share it with you.
(Update alert! Our Tech Stack has evolved. Read about that here!)
It turned out to be a great choice. In fact, it was a big driver of our success in the field of quickly growing startups in the U.S. Since then, Node.js has remained our backend’s bread and butter.
TECH STACK EXPANSION (TYPESCRIPT, RUBY)
A few years later, STRV started to attract bigger clients. These companies were still startups, but with greater plans, budgets and requirements. By the time they partnered up with us, many of them already had something built in Ruby. So, we hired a few Ruby developers to accommodate their needs.
Although we still work on some Ruby projects, we’ve never added it to our “official” tech stack. It simply isn’t something our backend developers want, and it doesn’t bring any added value to the table. Don’t get us wrong; Ruby is a great language. But for our use cases of developing API for apps and webs, Node.js covers all bases and we’re already highly proficient in that area. So, no need to mess with a good thing.
CURRENT STATE (NODE.JS, C#, GOLANG, PYTHON)
In the past two years, we’ve observed two crucial facts:
First, we don’t have a niche. Our clients are a mixture of startups, mid-sized companies and big players like Microsoft—which means that our use cases have been and will continue to be more varied than just basic backend API. And second, of the about 30 developers on our team, every person is unceasingly eager to learn new technologies. Combining these two realities, we decided to take the logical step and expand our tech stack.
Our starting point was, “What do our developers want?” because we believe that people excel at what they love to do. Once we had this information, we compared it with what our clients want. And that’s how we arrived at what we have right now:
Node.js - Covering most cases—which are APIs delivering data to web and mobile apps. It’s easy to use, fast to develop and flexible.
C# - To cover the needs of our biggest clients and fintech solutions, which it does well thanks to its robustness and strongly-typed nature.
Golang - To cover the increased popularity of this language in the US. Also great for microservices, performance-oriented backends, and IoT. It’s easy to learn and we love it.
Python - Two words: Machine Learning.
One more thing to mention here. There has been a demand for two other languages: PHP and Java. However, we’ve decided that, for now, we will not be working with these technologies. Our team prefers working with other technologies, and we always prioritize what our engineers want. We listen to our people; that’s the main factor behind our decisions, and it’s what’s proven to bring the best results.
We always make sure to keep up with the latest technologies and trends. Currently, we are experimenting with Elixir and Rust, but so far we are not using them in production.
The race for the next big thing in technology won’t be stopping anytime soon. Who knows what STRV’s backend tech stack will look like in the future. If you want to help us define it… join our backend team.