Abstract
A robust and extensible Cloud platform is the foundation on which to build and distribute powerful Software as a Service (SaaS). It provides a common layer upon which you can quickly iterate to deliver specialized services to meet the needs of your end users. So, what exactly is a Cloud platform? And, what lessons, patterns and tools from the Cloud-Native ecosystem can be used to build one?
In this talk, Joni will present a case study into the evolutionary design and implementation of the Diagrid Cloud platform which underpins Diagrid’s SaaS offerings. Joni will walk through the design considerations, trade-offs and learnings from his first hand experience bootstrapping Diagrid’s products. He’ll discuss how to exploit abstractions such as Kubernetes, Dapr and Cloud-Native services to achieve portability, extensibility and evolvability to allow the products to rapidly adapt to the ever changing demands of the business and users.
Interview
I am currently working at a startup called Diagrid, which has been going for about 2 years, where I lead an engineering team to design and build Cloud services that provide our users (developers in this case) with productive abstractions for developing distributed applications.
I’d like to unpack the architecture of a typical Cloud platform and offer some insights into the patterns and tools from the Cloud-Native ecosystem we can leverage when building one. I think a “Cloud” product is starting to become the foundation that companies rely on to quickly iterate and deliver a wide arrange of services, but the base knowledge for building one is locked away in each siloed implementation. In this talk, I aim to highlight the common design challenges and approaches to help demystify what it means to build a cloud.
The target persona for my talk is somebody who is interested in how to deliver software as a service. Ideally, they’d have an interest in Cloud-Native technology and how it can be applied within SaaS and it’ll help to have a good knowledge of software architecture.
I hope this talk gives the audience inspiration for how they think about delivering their own services and encourages others to share their own approaches to building SaaS publicly so we can all learn from each other. The patterns for building SaaS are largely reusable without giving away any of the secret sauce.
Topics
QCon London 2024 is a three day conference for senior software engineers, architects and team leads. An international program committee of working engineers selects every session. Patterns and practices, not products and pitches.
Part of the track
Cloud-Native Engineering Hosted by Bilgin Ibryam Principal Product Manager @Diagrid, Co-author of “Kubernetes Patterns“, Previously Architect @RedHatFrom the same track
Monday 8 April
10:35 Churchill (Ground Fl.) Session AWS Efficient Serverless Development: Latest Patterns and Practices on AWS Yan Cui AWS Serverless Hero & Independent Consultant Ready to dive into the world of serverless with AWS? In this talk, we're going to cut through the jargon and get straight to what serverless really means and why it's a game-changer for developers like us. 11:45 Churchill (Ground Fl.) Session DevSecOps Efficient DevSecOps Workflows With a Little Help From AI Michael Friedrich Senior Developer Advocate @GitLab From idea to the first line of code to production deployments - DevSecOps workflows help develop software faster. Everyone has reached a different level of adoption, and some processes may feel inefficient, or blocking progress and innovation. 13:35 Rutherford (4th Fl.) Unconference Unconference: Cloud-Native Engineering An unconference is a participant-driven meeting. Attendees come together, bringing their challenges and relying on the experience and know-how of their peers for solutions. 14:45 Churchill (Ground Fl.) Session architecture Building SaaS From Scratch Using Cloud-Native Patterns: A Deep Dive Into a Cloud Startup Joni Collinge Founding Software Engineer @Diagrid A robust and extensible Cloud platform is the foundation on which to build and distribute powerful Software as a Service (SaaS). It provides a common layer upon which you can quickly iterate to deliver specialized services to meet the needs of your end users. 15:55 Churchill (Ground Fl.) Session Infrastructure as Code Borderless Cloud: Designing, Implementing, and Securing Apps Across Multiple Clouds Adora Nwodo Senior Software Engineer, Founder of NexaScale, Multi-Published Author There are different reasons why your team might want to leverage the multi-cloud architecture. It could be a result of the desire to enhance redundancy and optimize costs, to ensure regulatory compliance, or to capitalize on the diverse services offered by different cloud providers. 17:05 Churchill (Ground Fl.) Session storage Stateful Cloud Services at Neon: Navigating Design Decisions and Trade-Offs John Spray Storage Engineering Lead @neon.tech, Formerly Redpanda, Inktank (Ceph), Whamcloud (Lustre) Cloud-native engineering talks frequently focus on implementing and operating the stateless parts of applications.