{"profile":{"name":"Jordan Kail","title":"Staff Software Engineer","summary":"I build production AI agent platforms. At Together AI, I established data engineering and created the Agents Platform team, building agent harnesses, tracing, replay, and evaluation infrastructure.","location":"San Francisco, CA","url":"https://www.jckail.com","github":"https://github.com/jckail","linkedin":"https://www.linkedin.com/in/jckail/"},"experience":[{"id":"together_ai","company":"Together AI","title":"Staff Software Engineer, Agents Platform","date":"02/2025 - Present","location":"San Francisco, CA","highlights":["Created the Agents Platform team; built agent harnesses and an internal agents factory for production workflows.","Build and operate agents for infrastructure, finance, and internal workflows, improving on-call response and infrastructure maintenance.","Build tracing, replay, and evaluation harnesses to measure agent behavior and regression-test releases.","Contributed to multiple patent-pending innovations in agent systems.","Established and scaled data engineering from one engineer to 15+ engineers, setting technical direction for Together’s AI cloud."],"url":"https://www.together.ai/","technologies":["python","sql","go","typescript","kubernetes","pytorch","agent-platforms","agent-harnesses","llm-evaluation"]},{"id":"prove","company":"Prove Identity","title":"Staff Software Engineer","date":"06/2023 - 01/2025","location":"Denver, CO","highlights":["Built agent frameworks and harnesses for statistical model governance in identity verification and fraud resolution.","Built RAG chatbots with Airflow, LangChain, and OpenAI, automating 150+ hours of manual work per week.","Led the company-wide migration from Java/Oracle to Go/PostgreSQL, cutting API response times from 40s to 12ms and operating costs by 95%.","Moved 1,200+ batch jobs to real-time Go, Kafka, and Flink pipelines, reducing data latency from days to seconds."],"url":"https://www.prove.com/","technologies":["python","sql","go","javascript","typescript","java","aws","model-governance","rag"]},{"id":"sabbatical","company":"Sabbatical","title":"Digital nomad experiment","date":"10/2022 - 05/2023","location":"","highlights":["Made up for lost time during COVID-19 by road-tripping across the USA and Europe.","Moved back to Colorado to tend to family."],"url":"","technologies":[]},{"id":"meta","company":"Meta | Facebook","title":"Senior Data Engineer","date":"01/2021 - 09/2022","location":"Menlo Park, CA","highlights":["Built AI/ML classifiers and 100+ NLP and computer vision pipelines with Airflow, Spark, and PyTorch, supporting ad targeting and personalized notifications for billions of users.","Partnered with Messenger, Groups, and an early precursor to the Llama project to fine-tune models for automated group management.","Led 10+ engineers on data systems for Facebook Public Groups, Community Chats, and cross-platform initiatives.","Built a framework generating thousands of asynchronous Spark pipelines, improving compute efficiency by 66%.","Redesigned petabyte-scale data models, cutting storage costs by 25%."],"url":"https://about.fb.com/","technologies":["python","sql","javascript","typescript","php","scala","ai-classifiers","pytorch"]},{"id":"deloitte","company":"Deloitte","title":"Consultant - AI & Advanced Analytics","date":"12/2018 - 12/2020","location":"Atlanta, GA + Menlo Park, CA","highlights":["Automated approximately 31% of manually processed healthcare claims with transformer models, saving 250,000+ hours annually.","Optimized exabyte-scale video reliability metrics, cutting daily processing time by 90% while expanding coverage.","Led 20+ consultants delivering AI and analytics systems for Fortune 50 clients."],"url":"https://www2.deloitte.com/ch/en/pages/strategy-operations/solutions/analytics-and-cognitive.html","technologies":["python","sql","javascript","typescript","php","rust","aws","gcp"]},{"id":"wide_open_west","company":"Wide Open West","title":"Senior Data Engineer","date":"11/2017 - 12/2018","location":"Denver, CO","highlights":["Built classification and churn models that increased customer package upgrades by 22% year over year.","Led 5 data practitioners delivering BI and analytics to sales, product, and engineering teams."],"url":"https://www.wowway.com/","technologies":["python","sql","javascript","aws"]},{"id":"common_spirit_health","company":"Common Spirit Health","title":"Data Engineer","date":"09/2016 - 11/2017","location":"Denver, CO","highlights":["Built REST APIs and data lakes, reducing processing time for partner data products from 7 days to 5 minutes.","Built Python and SQL forecasting pipelines for hospital procedures, billing, and staffing; cut billing turnaround from 14 to 7 days."],"url":"https://www.commonspirit.org/","technologies":["python","sql","javascript","java","azure"]},{"id":"acustream","company":"AcuStream | R1","title":"Software Engineer - Data","date":"04/2013 - 09/2016","location":"Boulder, CO","highlights":["Built a rules-based and ML invoicing system supporting $300M+ in annual revenue.","Replaced SFTP transfers with real-time Flask and Kafka APIs, cutting data delivery time by 50%."],"url":"https://www.r1rcm.com/","technologies":["python","sql","javascript","java","aws"]}],"projects":[{"id":"portfolio","title":"Portfolio Agent Platform","description":"A recruiter-facing agent with public MCP and GraphQL context, bounded tools, and reviewed contact actions.","url":"https://github.com/jckail/portfolio","technologies":["TypeScript","React","Vite","Python","FastAPI","Pydantic","Docker","GCP Cloud Run","Terraform","Supabase","Anthropic Claude"],"status":"Live","contribution":"Designed and built the agent, public context APIs, contact workflow and deployment checks.","evidence":"Public source, working agent, read-only APIs, and automated unit/browser checks.","categories":["agents","infrastructure","devtools"],"featured":true,"maturityNote":"Live on Cloud Run. Durable admission and contact delivery verified against release a0844ab on October 8, 2026; model answers still require judgment.","caseStudy":{"problem":"Make professional experience easy for recruiters and their agents to inspect, while keeping model usage and contact actions bounded.","role":"Designed and built the portfolio, agent context interfaces, contact workflow and release checks.","constraints":["Public read-only context must remain separate from actions that send a message.","Multiple service instances must share inference limits.","Visitors need useful access without unrestricted model spending."],"architecture":"React and TypeScript present the portfolio and agent workspace. FastAPI serves approved JSON content through the website, MCP and GraphQL, and runs the grounded agent workflow. Supabase PostgreSQL stores shared access and inference accounting. Confirmed contact actions use the delivery service; the application is packaged for Cloud Run.","decisions":[{"decision":"Derive website and agent interfaces from shared approved content.","tradeoff":"Consistency and inspectability take priority over unrestricted retrieval. Content still needs human maintenance.","evidence_url":"https://github.com/jckail/portfolio/blob/a0844ab0cac280b377b1e86317c887d6cc14d7f3/backend/app/services/public_context.py"},{"decision":"Reserve inference tokens atomically before provider execution.","tradeoff":"A failed accounting service denies new inference; missing usage remains charged conservatively.","evidence_url":"https://github.com/jckail/portfolio/blob/a0844ab0cac280b377b1e86317c887d6cc14d7f3/backend/migrations/20261008_inference_budgets.sql"},{"decision":"Require visitor review and validated identity fields for contact actions.","tradeoff":"An extra confirmation step reduces accidental sends and separates model suggestions from visitor intent.","evidence_url":"https://github.com/jckail/portfolio/blob/a0844ab0cac280b377b1e86317c887d6cc14d7f3/backend/app/services/chat_tools.py"}],"challenges":[{"challenge":"Keep public discovery useful without exposing action-capable tools.","resolution":"Publish read-only MCP and bounded GraphQL separately from confirmed agent actions."},{"challenge":"Prevent instance restarts or concurrent replicas from resetting spending controls.","resolution":"Use durable reservation and settlement records with shared database limits."}],"outcomes":[{"statement":"The public portfolio exposes the same professional context through human-facing pages and machine-readable interfaces.","source_url":"https://www.jckail.com/agents.html"},{"statement":"The deployed source includes regression tests for reservation denial, unavailable accounting and conservative usage settlement.","source_url":"https://github.com/jckail/portfolio/blob/a0844ab0cac280b377b1e86317c887d6cc14d7f3/backend/tests/test_inference_budget.py"}],"limitations":["Model-generated answers can be incorrect.","Calendar booking and arbitrary code execution are unavailable.","Automated checks do not prove immunity to every abuse pattern.","Local and release checks cover defined journeys, not every model response or workload."],"evidence_links":[{"label":"Public source","url":"https://github.com/jckail/portfolio"},{"label":"Agent connection guide","url":"https://www.jckail.com/agents.html"},{"label":"Budget implementation","url":"https://github.com/jckail/portfolio/blob/a0844ab0cac280b377b1e86317c887d6cc14d7f3/backend/app/services/inference_budget.py"}]}},{"id":"pointup","title":"PointUp","description":"A loyalty portfolio with trip goals, qualified redemption estimates and reviewable agent proposals across web, MCP and browser-extension workflows.","url":"https://github.com/jckail/point_bot","technologies":["TypeScript","Next.js","React","Tailwind CSS","PostgreSQL","Drizzle ORM","Clerk","AWS Bedrock","AWS CDK","Vitest"],"status":"Live","contribution":"Developed the loyalty portfolio and shared domain workflows for web and agent surfaces.","evidence":"Public source and architecture documentation; the PointUp public page was reachable on October 8, 2026.","categories":["agents","infrastructure"],"featured":true,"maturityNote":"Public product surface; provider sync, award data and legacy migration have separate qualification gates.","caseStudy":{"problem":"Loyalty balances and trip goals are scattered across programs, while automated collection and redemption estimates have different trust requirements.","role":"Developed PointUp’s product and shared application workflows, evolving the earlier PointBot experiment.","constraints":["Reference coverage does not imply automatic access to every loyalty program.","Visitors must review agent-proposed changes before they affect their portfolio.","Legacy application data needs a separately accepted migration."],"architecture":"A TypeScript monorepo separates framework-independent domain and application logic from infrastructure adapters. Next.js and React provide the web surface; Drizzle and PostgreSQL persist portfolio data, with Clerk identity. Shared contracts support workers, MCP, typed API clients and the Chrome extension.","decisions":[{"decision":"Share domain use cases across web, workers and agent interfaces.","tradeoff":"Adapter contracts require maintenance, but business rules do not need separate implementations for each surface.","evidence_url":"https://github.com/jckail/point_bot/blob/master/docs/architecture.md"},{"decision":"Present redemption values as qualified estimates and keep agent changes reviewable.","tradeoff":"The product avoids promising automatic access or bookable prices that available sources cannot establish.","evidence_url":"https://github.com/jckail/point_bot/blob/master/docs/features.md"}],"challenges":[{"challenge":"Support multiple interaction surfaces without giving each a different balance or goal model.","resolution":"Use shared contracts and domain/application boundaries with surface-specific adapters."},{"challenge":"Distinguish a convincing local demo from a working provider integration.","resolution":"Document seeded local data, simulated sync and configured-provider acceptance separately."}],"outcomes":[{"statement":"The public repository contains the modern PointUp application and documents its web, worker, MCP and extension boundaries.","source_url":"https://github.com/jckail/point_bot"},{"statement":"A public PointUp product page is available; this is not proof of every authenticated or provider-dependent workflow.","source_url":"https://pointup.io/"}],"limitations":["Automatic sync depends on an authorized, configured adapter.","Redemption estimates are not live award inventory or bookable prices.","Source and CI evidence do not certify completion of the legacy data migration."],"evidence_links":[{"label":"Public product","url":"https://pointup.io/"},{"label":"Architecture","url":"https://github.com/jckail/point_bot/blob/master/docs/architecture.md"},{"label":"Feature qualifications","url":"https://github.com/jckail/point_bot/blob/master/docs/features.md"}]}},{"id":"data_playground","title":"Data Playground","description":"A reproducible synthetic commerce lab for event validation, SQL metrics, dependency DAGs, graphs and vector similarity.","url":"https://github.com/jckail/data_playground","technologies":["Python","SQL","SQLite","FastAPI","Pydantic","React","TypeScript","Docker"],"status":"Prototype","contribution":"Built the deterministic Python lab and its interactive portfolio explorer.","evidence":"Public engine, architecture documentation and reproducible catalogue contract.","categories":["data","knowledge","experimental"],"featured":true,"maturityNote":"Synthetic educational lab; no customer data or verified standalone hosted service.","caseStudy":{"problem":"Make data-pipeline behavior and business metrics explainable through reproducible examples rather than opaque dashboard numbers.","role":"Built the synthetic commerce engine, validation and analytics workflow, and the portfolio’s interactive explorer.","constraints":["All examples must use synthetic data.","The same configuration, scenario and engine version must reproduce the same result.","Missing observation windows must not be reported as zero retention."],"architecture":"The Python repository owns event simulation, validation, analytics, the CLI, an optional FastAPI service and a reproducible catalogue export. The portfolio repository owns the React explorer. Separate graph/vector examples and executable DAG demonstrations expose their own synthetic inputs and execution boundaries; the supported lab requires no external database or credentials.","decisions":[{"decision":"Use deterministic generation and an exported catalogue shared with the UI.","tradeoff":"Reproducibility and inspection come before live-data realism.","evidence_url":"https://github.com/jckail/data_playground/blob/main/docs/architecture.mdx"},{"decision":"Represent money as integer cents and unobserved retention ages as null.","tradeoff":"More explicit metric semantics prevent convenient but misleading comparisons.","evidence_url":"https://github.com/jckail/data_playground/blob/main/README.md"},{"decision":"Keep the supported lab separate from the legacy PostgreSQL experiment.","tradeoff":"The self-contained lab is easier to reproduce but does not demonstrate a running production data warehouse.","evidence_url":"https://github.com/jckail/data_playground/blob/main/docs/service-operations.mdx"}],"challenges":[{"challenge":"Explain why a record or metric is wrong instead of silently accepting it.","resolution":"Expose lifecycle checks, quarantined records and the SQL behind the resulting metrics."},{"challenge":"Make orchestration behavior inspectable beyond a static diagram.","resolution":"Provide executable DAG examples with callbacks, retry traces and blocked dependencies."}],"outcomes":[{"statement":"The public project documents reproducible catalogue exports and compares repeat exports in CI.","source_url":"https://github.com/jckail/data_playground/blob/main/README.md"},{"statement":"The architecture workbench exposes executable dependency, retry and failure behavior.","source_url":"https://github.com/jckail/data_playground/blob/main/docs/architecture-workbench.md"}],"limitations":["Data and scenarios are synthetic.","Handcrafted feature-vector similarity is not a trained recommendation system.","The legacy PostgreSQL services are not established as functional by the supported lab."],"evidence_links":[{"label":"Interactive explorer","url":"https://jckail.com/dataplayground"},{"label":"Engine architecture","url":"https://github.com/jckail/data_playground/blob/main/docs/architecture.mdx"},{"label":"Executable DAG workbench","url":"https://github.com/jckail/data_playground/blob/main/docs/architecture-workbench.md"}]}},{"id":"opendatacenter","title":"OpenDataCenter","description":"A research atlas for public data-center infrastructure, with source provenance and transparent uncertainty.","url":"https://opendatacenter.info/","technologies":[],"status":"Live","contribution":"Product design and engineering.","evidence":"Public product page verified reachable on October 8, 2026. This check does not establish every product workflow.","categories":["data","infrastructure","knowledge"],"featured":false,"maturityNote":"Public preview; individual signed-in workflows have not been independently verified.","caseStudy":null},{"id":"kefi","title":"Kefi","description":"A live-music companion for discovering concerts, making plans with friends, and keeping a show diary.","url":"https://kefi.show/","technologies":[],"status":"Live","contribution":"Product design and engineering.","evidence":"Public product page verified reachable on October 8, 2026. This check does not establish every product workflow.","categories":["experimental"],"featured":false,"maturityNote":"Public preview; individual signed-in workflows have not been independently verified.","caseStudy":null},{"id":"jobdog","title":"Jobdog","description":"A job-search workspace bringing job discovery, saved opportunities, and application work together.","url":"https://jobdog.ai/","technologies":[],"status":"Live","contribution":"Product design and engineering.","evidence":"Public product page verified reachable on October 8, 2026. This check does not establish every product workflow.","categories":["agents"],"featured":false,"maturityNote":"Public preview; individual signed-in workflows have not been independently verified.","caseStudy":null},{"id":"jobbr","title":"Jobbr","description":"The Jobbr entry into Jobdog’s job-search and résumé workflow.","url":"https://jobdog.ai/jobbr/#/","technologies":[],"status":"Live","contribution":"Developed the Jobbr job-search prototype and its résumé workflow.","evidence":"Current product: jobdog.ai/jobbr/#/. Earlier synthetic demo remains a separate historical example.","categories":["agents","data"],"featured":false,"maturityNote":"Public preview; individual signed-in workflows have not been independently verified.","caseStudy":null},{"id":"ai_billing","title":"AI Thread Billing","description":"A prototype for per-thread AI token metering and cost reporting through an event-driven billing pipeline.","url":"https://github.com/jckail/ai_chat_billing_app","technologies":["Python","FastAPI","React","Pydantic","SQLAlchemy","SQLite","Kafka","Redis","Streamlit","Docker"],"status":"Prototype","contribution":"Built the chat-usage metering prototype and event/billing workflow.","evidence":"Public README, system/data-model diagrams and implementation documentation.","categories":["data","infrastructure","agents"],"featured":false,"maturityNote":"Unauthenticated development prototype; no verified standalone hosted deployment.","caseStudy":null},{"id":"super_teacher","title":"Super Teacher","description":"A classroom copilot that answers 'who needs me today, and why?' with a ranked needs-attention list, a gradebook, attendance, and a streaming Claude assistant grounded in the class data.","url":"https://github.com/jckail/superteacher","technologies":["Python","FastAPI","Pydantic","SQLAlchemy","SQLite","Alembic","React","TypeScript","Anthropic Claude","Docker","GCP"],"status":"In Development","contribution":"Built a classroom copilot with a streaming Claude assistant, prioritized student needs, a gradebook, and attendance.","evidence":"Public architecture, screenshot and deployment-status documentation; source features and live deployment are tracked separately.","categories":["agents","data"],"featured":false,"maturityNote":"Public source; the linked earlier deployment does not certify the current application.","caseStudy":null},{"id":"qr_for_groups","title":"Join Group via QR","description":"QR-code invitations for Facebook groups, covered in TechCrunch’s announcement of group-admin tools.","url":"https://techcrunch.com/2022/03/09/facebook-rolls-out-new-tools-for-group-admins-to-manage-their-communities-and-reduce-misinformation/","technologies":[],"status":"Employer Work","contribution":"Contributed QR-code group invitations at Meta.","evidence":"Public TechCrunch feature announcement. No project-specific usage metric is asserted here.","categories":["experimental"],"featured":false,"maturityNote":"","caseStudy":null},{"id":"go_pilot","title":"goPilot","description":"Legacy Python and shell helpers for exporting Go-project context and running external lint, test and assistant workflows.","url":"https://github.com/jckail/goPilot","technologies":["Python","Shell","OpenAI API","CLI"],"status":"Archived","contribution":"Built context-export and workflow helpers for Go development.","evidence":"Public README distinguishes offline helper checks from unverified provider compatibility.","categories":["agents","devtools","experimental"],"featured":false,"maturityNote":"Legacy tooling; current provider-backed operation is unverified. The repository itself is not marked archived.","caseStudy":null},{"id":"lit_crypto","title":"Crypto Trader","description":"A historical Python project exploring market-data ingestion and query/regression experiments.","url":"https://github.com/jckail/crypto_trader","technologies":["Python","Pandas","AWS"],"status":"Archived","contribution":"Built market-data ingestion and analysis experiments.","evidence":"Public README and architecture documentation describe the preserved implementation and its limits.","categories":["data","experimental"],"featured":false,"maturityNote":"Historical learning project; not runnable as-is. The repository itself is not marked archived.","caseStudy":null},{"id":"quarg","title":"Quarg","description":"A design-stage graph database for agents, connecting knowledge, tasks, actions, and provenance in one typed model.","url":"https://www.jckail.com/?contact=open#projects","technologies":["Go","TypeScript","Knowledge Graphs"],"status":"In Development","contribution":"Designed the agent-oriented data model and architecture, and began the implementation foundations.","evidence":"Private development project. Ask me about its architecture, implementation, and current progress.","categories":["knowledge","data","experimental"],"featured":false,"maturityNote":"Design-stage private project with early implementation work; no public database service or runnable product is offered.","caseStudy":null},{"id":"starling","title":"Starling","description":"A Rust coding-agent engine and embeddable SDK built around a small core and replaceable providers, tools, and hosts.","url":"https://www.jckail.com/?contact=open#projects","technologies":["Rust","MCP","Agent Harnesses"],"status":"In Development","contribution":"Designed and implemented the modular agent engine and embedding interfaces.","evidence":"Private development project. Ask me about its architecture, implementation, and current progress.","categories":["agents","devtools","experimental"],"featured":false,"maturityNote":"Private implementation preview. End-to-end native coding and broader integrations remain under qualification; no public release is offered.","caseStudy":null},{"id":"agent_hub","title":"Agent Hub","description":"A local control plane for coordinating coding agents, shared context, tools, and task handoffs across multiple harnesses.","url":"https://www.jckail.com/?contact=open#projects","technologies":["Go","Python","React","TypeScript","MCP"],"status":"In Development","contribution":"Built the continuity workflow and am developing the shared agent management platform.","evidence":"Private development project. Ask me about its architecture, implementation, and current progress.","categories":["agents","infrastructure","devtools","knowledge"],"featured":false,"maturityNote":"Private, locally operated project in active development. Broader orchestration and distributed deployment are still being qualified.","caseStudy":null},{"id":"doubletake","title":"DoubleTake","description":"Local task-readiness and review tools that help coding agents clarify requirements and check results against an agreed contract.","url":"https://www.jckail.com/?contact=open#projects","technologies":["TypeScript","Node.js","MCP"],"status":"In Development","contribution":"Built the task-readiness workflow, review contracts, and local agent adapters.","evidence":"Private development project. Ask me about its architecture, implementation, and current progress.","categories":["agents","devtools","experimental"],"featured":false,"maturityNote":"Private local-first prototype. Native host integration and cross-platform acceptance remain in progress; no public release is offered.","caseStudy":null}],"education":[{"institution":"University of Colorado Boulder","study":"Computer Science","date":"08/2011 - 03/2013"}],"skillGroups":[{"name":"AI & Agent Engineering","items":["Agent runtimes & harnesses","Multi-agent orchestration","Tool execution & MCP","Context & memory","Agent/LLM evaluation","Tracing & replay","RAG"]},{"name":"Software Engineering","items":["Python","SQL","Go","Rust","TypeScript","API & SDK design","Distributed systems"]},{"name":"Agent Tools & Frameworks","items":["Claude Code","Codex","Cursor","Pi","LangChain","Custom agent frameworks"]},{"name":"Knowledge & Graph Systems","items":["Graphify","Knowledge graphs","Graph traversal","Neo4j","PostgreSQL","SQLite","Vector search"]},{"name":"Cloud & Platform","items":["Kubernetes","Docker","Linux","AWS","Google Cloud","Terraform","OpenTelemetry","Prometheus"]},{"name":"Data Infrastructure","items":["Kafka","Flink","Spark","Airflow","dbt","Iceberg","Snowflake","Databricks","BigQuery"]}],"sources":{"website":"https://www.jckail.com","resume":"https://www.jckail.com/resume.json","context":"https://www.jckail.com/context.json","mcp":"https://www.jckail.com/mcp","graphql":"https://www.jckail.com/graphql"}}