A System for Forward-Deployed Teams

Uncover the highest ROI opportunities in your customers’ worlds.

An agent with product context at the level of your strongest PM, and customer context at the level of an internal employee.

Arena connects both worlds: your codebase with the ecosystem of your customer — to discover the highest ROI opportunities, scope them with the right people, write the code, and deploy it through your own pipeline.

01Overview

Countless high ROI opportunities go undiscovered at every account. Arena finds them — then scopes, drafts, and builds them. When a customer asks for something directly, that request runs through the same pipeline.

02Watch It Run

Arena’s workflow.

Two companies. A software vendor — Arena works for them — and one of their customers, a hospital. Arena uncovers an opportunity inside the customer’s business, builds it, and takes it all the way to production.

CREATED BY ARENA · AUG 5 · RANKED #1 FOR THIS CUSTOMER
Par-level forecasting · Customer A, a hospital
340 urgent pharmacy runs / mo
● ● ●  app.arena.dev · vendor / customer-a / context — what each source said
REQUISITIONSNightly export · urgent requisitions on med-surg cluster 2–4 PM · median trip to central pharmacy: 18 min
INTERNAL CALLColleen · Nurse Manager, Med-Surg: “the afternoon med pass keeps starting late” · shared with the hospital’s approval
EXPIRY REPORTQ2 write-offs · surgical floor · $21,400 · mostly unopened vials
CONFIG HISTORYpar_tables · customer-a · last recomputed: at install, 3 years ago
ARENAThe afternoon stockouts and the expiry waste share one root cause — par levels that were never recomputed. Proposed: weekly re-forecasting, pharmacist-approved.
SCOPED WITH THE HOSPITAL’S TEAM · AUG 6–8
17 questions answered over emaileach answer links to the email or call it came from
Can the requisition system’s nightly export come to a private Arena address?Amir · IT Manager (Customer): “Yes — a scheduled export on our side, about a week.”
Which items must the forecast never lower?Colleen · Nurse Manager, Med-Surg (Customer): “Crash carts, the code-blue list, the emergency boxes.”
+ 15 more questions, each routed to its owner
2 calls scheduled and joined by Arenanotes captured automatically
Restock rounds — process walkthrough · Aug 8, 11:00 AMVictor · Supply Chain Manager (Customer) · Lena · Product Manager (Vendor) · Arena — joins & captures
Plan review · Aug 10, 2:00 PMRuth · Pharmacy Director (Customer) · Colleen · Nurse Manager, Med-Surg (Customer) · Lena · Product Manager (Vendor) · Arena
5 findings confirmed by the people who own them · 1 corrected
Restock rounds run twice daily — pick lists cut at 5:30 AM and 1:30 PM Confirmed · Victor
Crash carts and Schedule II are never touched — enforced in config Confirmed · Colleen
+ 3 more · all confirmed by Aug 8 · the correction folded in
THE PROPOSAL — IN THE CUSTOMER’S PORTAL · AUG 10
● ● ●  customer-a.portal.vendor.app/proposals/par-forecastingFrom the vendor
Par-level forecasting · all units · proposal
Proposed change: par levels recomputed weekly, per cabinet — each adjustment approved by a pharmacist
Fix: 340 urgent pharmacy runs / mo → target under 100 · $86k / yr expiry exposure cut
Safety rules: emergency stock is never lowered · controlled medications stay manual · no level moves more than 20% in a week
Build estimate: ~3 weeks — reuses the analytics already live at this hospital
Every number traced to its source · requisition export · expiry reports · par config history
Approve planApproved · Ruth · Pharmacy Director (Customer) · Aug 10
Approved with a button, in writing — after a review call answered her questions.
DRAFTED BY ARENA · REVIEWED BY THE VENDOR’S ENGINEER · AUG 11
● ● ●  github.com/vendor/pharmacy-platform/pull/1521Merged
Customer A: weekly par-level forecasting #1521
+ forecasting: { cadence: weekly, batch: monday }
+ approvals: { per_change: pharmacist, weekly_cap: 0.20 }
+ exclusions: [crash_cart, code_blue, schedule_ii]
Jonas · Engineering Lead (Vendor) · approved & merged into main
From ticket PHR-2205 — every requirement cites the person who answered it
Backtested on 12 months of the hospital’s own history — urgent runs −71%
LIVE · AUG 12
7 days from discovered to deployed
● ● ●  app.arena.dev · vendor / customer-a / ARN-608 / record
APPROVEDRuth · Pharmacy Director (Customer) · Aug 10, 4:30 PM
SHIPPEDAug 12, 1:52 PM · this customer only · rollback ready
GO-LIVEFirst proposal batch · Monday Aug 17, 8:00 AM · pharmacist review
RETURN~1,220 nurse-hours / yr back on the floor · $86k / yr expiry exposure cut
Five steps · auto-plays · click any step.The complete workflow →
Arena — the whole processExisting tools — the piece each coversWork is createdScoped togetherCode is writtenShips to that customerOn the recordSupport & chat toolsMeeting & notes toolsDiagram & docs toolsCoding toolsRelease toolsTracking toolsARENAOpportunity createdby Arena · or a request comes inSized and rankedaccount · ROI · systems touchedDone before for another customer?the same code is offeredScoped with every stakeholderthreads · calls · Arena joinsPath forward approvedby the customerTicket in your Jiraevery requirement citedPull request draftedReviewed by your engineerstested on that customer’s dataShipped to that customer onlyOwner and timestampon every step
04The Loop

From the account's context to live product.

Your product: pharmacy inventory software for hospitals. Your customer: a hospital. One opportunity, start to finish.

01
Opportunity

Arena digests the account's world against your codebase — and creates the opportunity. The customer's owner reviews it and accepts it, in their portal.

arena · opportunitiesAug 5
Customer#1 of 3
RRuth · acceptedAug 6
→ 02 Scope
02
Scope

Arena walks the cases with the requester, finds every stakeholder, runs the threads, and joins the calls.

scopingAug 6 – 8
stakeholders · 5threads + calls
agent rules decided15
path forwardapproved
→ 03 Ticket
03
Ticket

The approved scope becomes one ticket in your Jira — every requirement cited to the person who answered it, prioritized in the sprint.

your JiraAug 10
PHR-2205 par forecasting
requirements · 12cited
Sprint 34priority #2
→ 04 Draft
04
Draft

Arena writes the change on a branch in your repo, from its own ticket, and opens the pull request.

your repoAug 11
#1521 Par forecasting
customer-a/par-forecasting
+312 −0 customer-a.yaml
Draft
→ 05 Review
05
Review

Your engineers review the pull request. The judgment stays human.

pull request #1521Aug 11 · 9:58 AM
Jchanges requested
Apushed b7d2e1
Japproved
→ 06 Ship & record
06
Ship & record

The change ships to that customer alone, rollback ready — and the full record stays queryable: why it was proposed, who answered, who approved.

deploy · recordAug 12
deploy · customer-a only
rollbackready
requestedRuth
shippedAug 12 · 1:52 PM
05Integrations

Arena connects to your stack.

CONTEXT COMES FROM
Your CRMCall notesEmail threadsFilings & public signals
only what the customer approves, on their terms — plus your codebase and deploy history
REQUESTS ARRIVE FROM
SlackJiraLinearZendesk
plus the Arena portal, built in
SCOPING RUNS ACROSS
EmailCalendarMeetingsYour CRM
threads, invites, and calls Arena joins — the ticket lands in your Jira
CODE LIVES IN
GitHubGitLab
Arena opens branches and pull requests — merging stays with your team
SHIPS THROUGH
GitHub ActionsCircleCIVercel AWS
your CI and pipeline, unchanged
03Platform

Four parts. One system.

Everything a forward-deployed team needs to create the opportunities per account, scope them with every stakeholder, build the change, ship it safely, and keep the record.

The opportunity engine
Arena creates the work

Arena digests each account's world — its stakeholders, the systems they approve, their filings and public signals — against your codebase and what shipped before. It creates the highest ROI opportunities, per account — prioritized, cited, buildable. Requests and feedback still arrive through the portal and join the same queue.

Scoping & discovery
Arena talks to everyone

Arena walks each request case by case with the requester, finds every stakeholder from the living map, runs the threads, and joins the calls. The approved path forward becomes a ticket in your Jira — every requirement cited to who said it.

The build workspace
Arena drafts, engineers review

Arena writes each change on a branch in your repo — never main — and opens the pull request, scoped to the customer. Your engineers review it; the judgment stays human. Every change is tested against that customer's setup before it ships.

The record
Every account's memory

Every request, build, approval, deploy, and rollback — written down, per customer. Arena always knows what each customer runs today — every proposal and scope starts from that. Every deploy leaves a rollback point, one click back. When the engineer leaves, the account's memory stays.

06Get Started

Every high impact opportunity.
Found, scoped, shipped.