Backend systems

We create robust and secure architectures that support ever-growing backend solutions.

Backend systems

Well-thought-out architecture designs are essential

15 years of experience building software for several industries with demanding requirements and high usage has given us knowledge and the tools to design robust and scalable architectures.

We use Docker to create architectures hosted on multiple hosting providers, ensuring excellent availability. We rely on AWS, Google and Azure cloud services to empower the systems we build.

Everything behind an API

The external layer of every backend solution should be a secure, documented and well designed API.

We rely on Django, Phoenix, Nginx and other frameworks and libraries to create HTTP APIs using the REST principles.

Communication protocols

We have used several techniques to communicate processes in addition to the HTTP protocol: from sockets and WebSockets to message queue systems such as RabbitMQ, Amazon SQS or Azure Service Bus Queues, shared memory or POSIX pipes.

Map services

We have gained a lot of experience building map services on top of Open Street Maps. Some time ago we received an extraordinary challenge: to replace Google Maps with a custom maps service that needed to serve millions of users.

We have created a distributed computing system using Node.js, Nginx and HAProxy able to generate map tiles through the combination of multiple map layers.

The generation of such tiles needed to be real-time, so we worked very hard tuning every aspect of the tiles generation process including the creation of a workers orchestration/monitoring system.

Working at the operating system level

We have also delivered robust solutions at a very low level.

We were able to make use of our C++ programming skills by interacting with the Linux kernel, Windows core services and different file systems.

Chatbots

We have built different chatbots for Slack.

These chatbots help teams to always be up-to-date about important events and are great at interacting with different systems in a much more intuitive and simple way, using natural language to communicate with them.

Monitoring

Keeping systems in good shape requires having fresh information about each health indicator.

We rely on Sentry and New Relic services to gather such information, to anticipate bottlenecks, to detect and trace issues and to respond very quickly.

Let’s build a great product together
We treat projects as if they were our own, understanding the underlying needs and astonishing users with the results.
Contact us