Ed Crewe
Cloud developer at EDB, the Postgres company.
Bristol, United Kingdom
Actions
I have been a cloud engineer for the last 9 years. Working in Golang for the last 6. Before that I was a web developer. I have spoken at Kubecon, Djangocon.Eu and EuroPython as well as many times at local techie groups, including my local Golang meetup.
Currently I spend my time developing microservices for EDB's cross cloud or appliance Postgres AI product.
A Sovereign AI and Analytics platform built on Postgres, since EDB is the #1 Postgres open source contributor.
I am interested in improving DevX for the full lifecycle of Go microservices.
Area of Expertise
Topics
gRPC Transcoding: Designing One API for gRPC and REST
A well designed unified API is essential to creating a reliable cloud service and maintaining that as it grows more complex and micro-services multiply.
We have gRPC for internal micro-service comms, but REST persists for public web as the simplest most compatible and readable protocol.
An approach to solve this is to design a type safe and validated master API in gRPC using its protoc metaprogramming basis. Developers create and evolve a single API, but generate it in multiple languages, and for both gRPC and OpenAPI REST protocols.
This talk outlines this metaprogramming paradigm for API design. DevX practise for API creation and evolution.
Covering the various transcoding options and tools for OpenAPI and which might best suit your purposes.
Including transcoding to streaming and other content types.
Along with how to provide data validation and linting of an evolving API and E2E testing approaches for the transcoded API.
Fake it to Make it! - TDD of gRPC microservices
For unit testing cloud native applications we mock a lot, dependencies are in the cloud, and unit tests should be isolated.
For testing the full service delivered by k8s composed microservices, we can easily stand up ephemeral test deployments as part of CI/CD. K8s gives us replicable IaC out of the box. Add E2E tests to our pipeline and we are good, right?
Unfortunately no, that means we not only have an hourglass of testing. But one whose bottom may barely test if your code actually works, whatever the coverage says. Leaving us relying on very slow and expensive E2E build and test feedback from our CI/CD requiring full k8s cluster deployments.
This talk is about why developers need to turn that hourglass of testing back into a pyramid and how to do so.
Enabling efficient test driven refactoring of your microservices by developing fast fake frameworks for functional testing. Driving up quality via rapid development and refactoring cycles.
CNCF-hosted Co-located Events North America 2024 Sessionize Event
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top