At Tinybird, we enable developers and data teams to build real-time data products at any scale. Engineering teams who use Tinybird achieve much faster development velocity, which means new products / features get to market faster. In addition, our engineering team has done an amazing job architecting our product in a way that allows Tinybird customers to deliver a blazing fast user experience in a cost-effective way.
Our founding team has deep expertise building cloud and data intensive products serving organizations all over the world, and we are backed by great team members and investors who have built or are building some of the most relevant developer tools out there (including the Founders of GitHub, Algolia, and Vercel amongst others.
Being a remote-first company with over 40 birdies from different nationalities, we believe our strength lies in cultivating a diverse environment. Everyone at Tinybird plays a role in forming and executing our strategy, and we truly believe our globally diverse workforce is the key to unlocking the most value for our customers.
We are looking for someone to help us scale and to keep our software and infrastructure reliable and elastic as we scale. Someone who knows how to make hardware and software play together.
We run our stack in Linux. We try to keep things simple. Technologies we use:
We have been relying on Ansible to automate the provisioning and deployment of all those technologies in various configurations, both in multi-tenant and dedicated setups. Our number of machines is still manageable, but the number keeps growing as we keep adding customers.
This is not about managing infrastructure but about making sure that our software uses the hardware resources wisely and flexibly. This means you will not only have to worry about automating machines, but about helping the product team to design and develop the architecture of the system as a whole. That will require you to working with our backend code and to understand how ClickHouse works.
Some challenges and things we want to improve:
As a specific challenge: when our customers grow and we need to upgrade their accounts. Now, we do it manually—not in the traditional sense of manual because we have tools that automate much of the process, but we need to take care of that one customer at a time: deciding what machines we need to spin-up, how much storage we will provision, etc. Ideally, our architecture should our customers to upgrade themselves and assign more resources to them dynamically and seamlessly the most dynamic, safe and transparent way possible.
Here you have our company principles.