diff --git a/README.md b/README.md index c43dbd0..1ede708 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # kylecesmat.com -Personal site. Visual tone is quiet editorial (attardi.org / nickbytes), not a metrics dashboard. **About copy** is editable MDX at `src/pages/about.mdx` — do not rewrite it in layout PRs. +Personal site. Visual tone is quiet editorial (attardi.org / nickbytes). **Copy is qualitative** — no quantitative metrics. Hero, proof, and About live in `src/site.ts`, `src/data/proof.ts`, and `src/pages/about.mdx`. ## Stack diff --git a/src/components/ProofCard.astro b/src/components/ProofCard.astro index 5e33a0a..5a412a1 100644 --- a/src/components/ProofCard.astro +++ b/src/components/ProofCard.astro @@ -1,31 +1,14 @@ --- -import type { ProofCardData } from '@/data/proof'; +import type { ProofBlock } from '@/data/proof'; interface Props { - card: ProofCardData; + block: ProofBlock; } -const { card } = Astro.props; +const { block } = Astro.props; --- -
-

{card.title}

- {card.summary ?

{card.summary}

: null} - - +
+

{block.title}

+

{block.body}

diff --git a/src/data/proof.ts b/src/data/proof.ts index fde8bab..7d2838c 100644 --- a/src/data/proof.ts +++ b/src/data/proof.ts @@ -1,66 +1,23 @@ -export type RedactableMetric = { - label: string; - /** Resume-backed placeholder. Kyle can drop it without a layout change. */ - redactable?: boolean; -}; - -export type ProofCardData = { +export type ProofBlock = { id: string; title: string; - summary?: string; - metrics: RedactableMetric[]; - href: string; - linkLabel: string; -}; - -/** One-paragraph teaser slots. Metrics are placeholders Kyle can redact. */ -export const proofTeaser = { - role: 'SEM, Agent Experience @ Coinbase', - slots: [ - { label: 'founded 0→15 across 3 pods', redactable: true }, - { label: 'AI strategy for 2,200+ eng', redactable: true }, - { label: 'enablement 0%→94%', redactable: true }, - { label: 'Syntax.fm', redactable: false }, - ] satisfies RedactableMetric[], + body: string; }; -export const proofCards: ProofCardData[] = [ +export const proof: ProofBlock[] = [ { - id: 'agent-experience-org', - title: 'Agent Experience org', - metrics: [ - { label: '0→15', redactable: true }, - { label: '>30% code change via integrated SDLC tools', redactable: true }, - { label: 'company AI eng strategy', redactable: true }, - ], - href: '/writing/ax-as-product', - linkLabel: '[TODO: case link]', + id: 'agent-experience', + title: 'Agent Experience', + body: 'Founded and lead Coinbase’s AI developer tooling organization across multiple pods. Own company-wide AI engineering strategy and enablement so engineers can productively adopt agentic workflows.', }, { id: 'governed-agent-platform', title: 'Governed agent platform', - summary: 'Agents, harnesses, sandboxes, MCPs, and skills', - metrics: [ - { label: '~170 MCP servers', redactable: true }, - { label: '~4.8k users', redactable: true }, - { label: '~16k runs/day', redactable: true }, - { label: 'AI review 100% PRs', redactable: true }, - { label: 'merge ~14h→~3.3h', redactable: true }, - ], - href: '/writing/enterprise-cursor-ai-rollout', - linkLabel: '[TODO: case link]', + body: 'Built the platform layer for coding agents, harnesses, sandboxes, MCPs, and skills — with compliance, risk, and change-management aligned to how Coinbase ships. Scaled AI-assisted review into the default PR path.', }, { id: 'platform-app-infra', title: 'Platform / App Infra', - summary: 'Retail Web + Mobile operational excellence', - metrics: [ - { label: 'Code Red errors >98% down', redactable: true }, - { label: 'Buy Flow 26s→2.4s', redactable: true }, - { label: 'Hermes/Expo', redactable: true }, - { label: 'client SLOs', redactable: true }, - ], - href: '/writing/paved-roads-codegen-load', - linkLabel: '[TODO: case link]', + body: 'Previously led Retail Web & Mobile infrastructure: operational excellence, CI/CD, performance, and foundational platform strategy through company-wide reliability and performance crises.', }, ]; diff --git a/src/layouts/BaseLayout.astro b/src/layouts/BaseLayout.astro index 517850c..bdc197c 100644 --- a/src/layouts/BaseLayout.astro +++ b/src/layouts/BaseLayout.astro @@ -1,5 +1,5 @@ --- -import { site, nav, hero, headlinePick } from '@/site'; +import { site, nav, hero } from '@/site'; import '@/styles/global.css'; interface Props { @@ -17,8 +17,7 @@ const description = Astro.props.description ?? Astro.props.frontmatter?.description ?? site.description; -const homeTitle = - headlinePick === 'placeholder' ? site.name : `${site.name} — ${hero.headline}`; +const homeTitle = `${site.name} — ${hero.headline}`; const pageTitle = title ? title.includes(site.name) ? title diff --git a/src/pages/about.mdx b/src/pages/about.mdx index a0bd164..ac65808 100644 --- a/src/pages/about.mdx +++ b/src/pages/about.mdx @@ -8,13 +8,7 @@ description: Press kit for Kyle Cesmat — Senior Engineering Manager at Coinbas ## Bio -Kyle Cesmat is a Senior Engineering Manager at Coinbase leading Agent Experience — the organization that builds and integrates the AI developer tooling used across Coinbase engineering. - -He founded and scaled the team from 0→15 ICs and EMs across three pods, set company-wide AI engineering strategy for 2,200+ engineers (enablement 0%→94%), and established a governed agent platform spanning coding agents, harnesses, sandboxes, MCPs, and skills. Earlier at Coinbase he led Retail App Infra through platform, performance, and operational excellence work for Web and Mobile — including company-wide Code Red recovery and core product latency wins. - -Previously he was an engineering manager and lead consultant at Formidable Labs (React/Node), including expanding the Phoenix office and leading large frontend deliveries. He has spoken publicly about AI coding at scale, including Syntax.fm. - -Based in Denver, CO. +Kyle Cesmat is a Senior Engineering Manager at Coinbase leading Agent Experience — the organization that builds and integrates AI developer tooling across Coinbase engineering. He founded and scaled that team, set company-wide AI engineering strategy, and established a governed agent platform for coding agents, harnesses, sandboxes, MCPs, and skills. Earlier he led Retail App Infra for Web and Mobile platform, performance, and operational excellence. Previously an engineering manager and lead consultant at Formidable Labs. Has spoken publicly about AI coding at scale, including Syntax.fm. Based in Denver, CO. ## Ways I can help diff --git a/src/pages/index.astro b/src/pages/index.astro index 15a8d10..c2a8274 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -2,7 +2,7 @@ import { getCollection } from 'astro:content'; import BaseLayout from '@/layouts/BaseLayout.astro'; import ProofCard from '@/components/ProofCard.astro'; -import { proofCards } from '@/data/proof'; +import { proof } from '@/data/proof'; import { talks } from '@/data/talks'; import { hero, site, writingPillars } from '@/site'; @@ -24,7 +24,7 @@ const writing = (await getCollection('writing'))

selected work

- {proofCards.map((card) => )} + {proof.map((block) => )}
diff --git a/src/site.ts b/src/site.ts index 91d614d..6d9465e 100644 --- a/src/site.ts +++ b/src/site.ts @@ -1,39 +1,9 @@ -/** - * Headline pick: `'placeholder' | 'A' | 'B' | 'C'`. - * Kyle chooses later. Do not set A/B/C until he does. - * Do not use “Software Engineer” as the headline. - */ -export type HeadlinePick = 'placeholder' | 'A' | 'B' | 'C'; - -export const headlinePick: HeadlinePick = 'placeholder'; - -/** Labeled options for Kyle. Not shown until `headlinePick` is A, B, or C. */ -export const headlineOptions = { - A: { - headline: 'Building Agent Experience for enterprise engineering orgs', - subhead: - 'SEM at Coinbase leading Agent Experience. Brought Cursor in early; shipping AI coding workflows that raise quality bars, not just autocomplete.', - }, - B: { - headline: 'Platform and DX leadership for the AI coding era', - subhead: - 'I lead teams that turn AI coding tools into governed, measurable developer productivity — from enterprise rollout to agent-native workflows.', - }, - C: { - headline: '[TODO: C — Head-of-X operator framing]', - subhead: - 'Head of Platform / DX / AI Engineering. Coinbase SEM, Agent Experience. Early Cursor enterprise. Syntax.fm on AI coding at scale.', - }, +export const hero = { + headline: 'Building Agent Experience for enterprise engineering orgs', + subhead: + 'SEM at Coinbase leading Agent Experience. I founded the AI developer tooling organization, set company-wide AI engineering strategy, and ship governed AI coding workflows that raise quality bars — not just autocomplete. Early Cursor enterprise adopter.', } as const; -const placeholderHero = { - headline: '[TODO: headline — set headlinePick to A, B, or C in src/site.ts]', - subhead: '[TODO: subhead]', -} as const; - -export const hero = - headlinePick === 'placeholder' ? placeholderHero : headlineOptions[headlinePick]; - export const site = { name: 'Kyle Cesmat', url: 'https://kylecesmat.com', @@ -42,10 +12,10 @@ export const site = { location: 'Denver, CO', jobTitle: 'Senior Engineering Manager, Agent Experience', worksFor: 'Coinbase', + help: 'I help engineering organizations turn AI coding tools into governed, measurable developer leverage — platform, DX, and Agent Experience as a product, not a pile of vendor licenses.', + bio: 'Kyle Cesmat is a Senior Engineering Manager at Coinbase leading Agent Experience — the organization that builds and integrates AI developer tooling across Coinbase engineering. He founded and scaled that team, set company-wide AI engineering strategy, and established a governed agent platform for coding agents, harnesses, sandboxes, MCPs, and skills. Earlier he led Retail App Infra for Web and Mobile platform, performance, and operational excellence. Previously an engineering manager and lead consultant at Formidable Labs. Has spoken publicly about AI coding at scale, including Syntax.fm. Based in Denver, CO.', description: - 'Kyle Cesmat — Agent Experience, platform engineering, developer experience, and AI engineering leadership.', - keywords: - 'Agent Experience, platform engineering, developer experience, DX, AI engineering leadership, Coinbase', + 'Senior Engineering Manager at Coinbase leading Agent Experience. Platform, developer experience, and governed AI coding workflows for enterprise engineering organizations.', social: [ { label: 'LinkedIn', href: 'https://www.linkedin.com/in/kylecesmat' }, { label: 'GitHub', href: 'https://github.com/kylecesmat' }, diff --git a/src/styles/global.css b/src/styles/global.css index fc9a8c3..2dd4c2e 100644 --- a/src/styles/global.css +++ b/src/styles/global.css @@ -191,44 +191,12 @@ main { font-size: 1.15rem; font-weight: 500; letter-spacing: -0.02em; - margin: 0 0 0.3rem; + margin: 0 0 0.35rem; } -.proof-block__summary { - margin: 0 0 0.45rem; - color: var(--muted); -} - -.proof-block__metrics { +.proof-block p { margin: 0; - padding: 0; - list-style: none; color: var(--muted); - font-size: 0.95rem; -} - -.proof-block__metrics li { - display: inline; -} - -.proof-block__metrics li + li::before { - content: ' · '; -} - -.proof-block__link { - margin: 0.45rem 0 0; - font-family: var(--sans); - font-size: 0.82rem; - color: var(--muted); -} - -.proof-block__link a { - color: inherit; -} - -.metric--redactable { - text-decoration: underline dotted; - text-underline-offset: 0.16em; } .placeholder {