// Shared content for ramirohigonet.dev
// Voice: direct, technical, slightly dry. No exclamation points.

const PF_DATA = {
  name: 'Ramiro Higonet',
  role: 'Senior Software Engineer',
  location: 'Buenos Aires, AR',
  hero: 'Ten years turning fuzzy problems into shippable software.',
  heroSub: 'Currently building payment infrastructure at a stealth fintech. Previously: security tooling, ML platforms, the unglamorous parts of three startups you have not heard of.',

  now: 'Working on a multi-currency ledger that has to balance to the cent across seventeen jurisdictions. Reading about CRDTs because reconciliation is a CRDT problem if you squint. Trying to learn enough Rust to be dangerous, and enough Spanish guitar to be tolerable.',
  nowDate: 'April 2026',

  caseStudies: [
    {
      id: 'ledger',
      slug: 'multi-currency-ledger',
      number: '01',
      year: '2026',
      title: 'A ledger that balances to the cent',
      kicker: 'Payments · Infrastructure',
      blurb: 'Designing a double-entry accounting core that survives partial outages, late-arriving FX rates, and the occasional regulator.',
      stack: ['Postgres', 'Rust', 'Temporal', 'gRPC'],
      role: 'Tech lead, 4 engineers',
      duration: '8 months · ongoing',
      org: 'Stealth fintech',
      link: '/work/ledger',
    },
    {
      id: 'inference',
      slug: 'inference-platform',
      number: '02',
      year: '2024',
      title: 'Cutting inference cost by 71%',
      kicker: 'ML Platform · Cost',
      blurb: 'Replaced a sprawling GPU autoscaler with a request-shaping layer in front of vLLM. Same SLOs, a third of the bill, and an oncall rotation that finally sleeps.',
      stack: ['Go', 'Kubernetes', 'vLLM', 'Triton'],
      role: 'Senior engineer',
      duration: '5 months',
      org: 'Series B, RAG company',
      link: '/work/inference',
    },
    {
      id: 'audit',
      slug: 'audit-pipeline',
      number: '03',
      year: '2022',
      title: 'Making SOC 2 a build target',
      kicker: 'Security · Tooling',
      blurb: 'Encoded the auditor checklist as a CI pipeline. PRs that drift from policy fail loudly; auditors stop asking for screenshots. Saved roughly six engineer-weeks per cycle.',
      stack: ['Python', 'OPA', 'GitHub Actions'],
      role: 'Staff engineer',
      duration: '3 months',
      org: 'Series A, devtools',
      link: '/work/audit',
    },
  ],

  writing: [
    { date: '2026 · 03', title: 'Why your retry budget is a lie', tag: 'Essay', read: '6 min' },
    { date: '2025 · 11', title: 'Reconciliation is a CRDT problem', tag: 'Essay', read: '11 min' },
    { date: '2025 · 07', title: 'Notes on idempotency keys, two years in', tag: 'Field notes', read: '4 min' },
    { date: '2024 · 09', title: 'The case against the universal event bus', tag: 'Opinion', read: '9 min' },
  ],

  experience: [
    { years: '2024 — ', org: 'Stealth fintech', role: 'Senior Engineer · Payments' },
    { years: '2022 — 2024', org: 'Anchor.ai', role: 'Senior Engineer · ML Platform' },
    { years: '2020 — 2022', org: 'Vellum Security', role: 'Staff Engineer · Tooling' },
    { years: '2018 — 2020', org: 'Pivotal Labs', role: 'Engineer · Consultant' },
    { years: '2016 — 2018', org: 'Mercado Libre', role: 'Engineer · Checkout' },
  ],

  speaking: [
    { date: '2025 · 10', venue: 'Strange Loop', talk: 'Idempotency, exactly once, and other lies' },
    { date: '2024 · 06', venue: 'PaymentsCon BA', talk: 'A double-entry ledger in 400 lines' },
    { date: '2023 · 04', venue: 'GopherCon LATAM', talk: 'Designing for partial failure' },
  ],

  contact: {
    email: 'ramiro@higonet.dev',
    github: 'github.com/rhigonet',
    linkedin: 'linkedin.com/in/rhigonet',
    medium: 'medium.com/@rhigonet',
  },
};

window.PF_DATA = PF_DATA;
