Skip to content

Oracle Code San Francisco - Developer Keynote - October 2017

talks 2 min read

Running a seven-person startup, we use external services for practically everything – video, backend, community, IT support, office, frontend, mobile. The principle is simple: focus on your domain and let others handle what they do better. Even big companies like Snapchat use Google, PubNub, and Woza. This is the essence of what I call “service-full” rather than serverless – consuming third-party services at scale.

Our serverless journey started with Lambda and hit reality fast. Disk full errors on a supposedly disk-less function. Cold start latency undermining the performance gains we fought for. Version swaps that would not happen under load because the old container stayed alive. When you survey serverless users about their biggest problems, the answers are monitoring, debugging, testing, latency, deployment – all the ops topics that serverless was supposed to eliminate. And it is not just serverless – any external service creates this dependency. GitHub goes down, NPM goes down, your email provider blocks you, your load balancer cannot pre-warm fast enough.

Promise theory provides the right mental model here. Every agent in your ecosystem makes promises to others. A promise is not a guarantee – things will go down. Conditions apply, documentation matters, and the language of the promise must be shared. You cannot make promises on behalf of other agents. When services fail, you need choice: multi-cloud, provider-agnostic frameworks, the ability to run things yourself. The serverless framework’s provider abstraction is one implementation of maintaining that choice.

What I realized is that DevOps collaboration does not stop at your company boundary. External service providers communicate through status pages, exposed metrics, postmortems, changelogs, roadmaps, direct engineer access. Slack’s human-written incident communications, providers who proactively warn about degradation, companies that open-source their tooling – these are all forms of the same DevOps collaboration principles applied across company boundaries. The hardest bottleneck to solve is the one outside your control. Building relationships with suppliers, giving honest feedback, communicating engineer-to-engineer – that is the next frontier for DevOps.

Watch on YouTube – available on the jedi4ever channel

This summary was generated using AI based on the auto-generated transcript.

Navigate with