As a technologist, who talks about the work that others do for a living, it is particularly delightful when a webinar (a conversation with a user) (a conversation with a user) is both compelling and technically intriguing. Hasura's recent interaction with Pipe was both.
Pipe describes themselves as:
Pipe transforms recurring revenue into upfront capital for growth without debt or dilution.
For a year old company, this fintech startup now with over 3000 companies signed up, and $1B in tradable ARR is fundamentally transforming the way that companies fund their growth. Even more compelling, they are doing so with a globally distributed team. In fact, the webinar (you really should watch it) Peter Downs, Director of Engineering at Pipe spends some time discussing the different ways to structure a company and employee skills in a fully distributed context.
Of particular import is the note that they are moving away from a traditional Frontend/Backend split of ability and migrating towards 'full stack' focus for their engineering team. To quote, "We are moving to a world where everyone is able to do a bit of everything."
This is, in part, where Hasura brings a unique benefit.
The architecture of the system, itself, was shared and discussed in some detail. The image from the slides is shared below.
What we found is Hasura is a fantastic way to synchronise data access to our database.
While sharing the architecture, after demoing the Pipe experience, the team shared some of the key benefits of adopting Hasura. This included 50% fewer front-end developers required to build their application than initially planned as "Hasura plugs right in to our database" and removes the need for custom data fetching routes. Pipe’s engineering team today consists of 11 engineers!
In addition, the query performance was discussed in some detail. Hasura is "not so bad at planning queries" and -- somewhat to their surprise -- it was performant out of the box without extensive query customisation or planning. To quote, it "solves the n+1 problem pretty well" and “We’ve seen absolutely no performance problems. It’s been fantastic.” If there are performance problems, it has largely been on the database side and the “analyze” function on the Hasura console has enabled them to diagnose and troubleshoot the problem and make it go away.
Of course, speed and simplicity are meaningless without control...particularly when dealing with sensitive customer financial data. So, the permissions model of Hasura allows Pipe to model its business logic with simplicity.
Of particular interest, to me, was the process of using, testing, and adopting Hasura. In an exploration of Pipe's internal systems it was 11 days from discovery to production. This, by necessity, was not a fundamental re-architecture of the application in its entirety. But followed an incremental approach to deployment allowing for a seamless rollout while determining what API requests were/are/will be appropriate to be proxied through Hasura.
This, of course, is only a small sampling of what was discussed over the hour of the call.
We, as an industry, learn through the examples of others. The team at Pipe open, and transparently, shared about their business, their structure, their thought-process, the benefits of Hasura that they've seen, as well as the roadmap that they see for the future.