Why Bunkerhill phased out Jupyter for marimo across ML and backend teams

Bunkerhill Health Co-Founder and CTO David Eng says, âI initially thought of marimo as a âbetterâ notebook, like thinking of Notion as a âbetterâ Google Docs or Cursor as a âbetterâ IDE. But similar to those products, I think the marimo primitives redefine the category of what you can reasonably accomplish out of a notebook.â
Bunkerhill Healthâs flagship product Carebricks is a platform for health systems to create, share, and deploy AI agents for clinical and operational tasks. Bunkerhill improves outcomes, streamlines workflows, and boosts revenueâwithout adding work for clinicians.
Founded by Nishith Khandwala and David Eng, who first met as undergrads at Stanford, Bunkerhill most recently raised a $30m Series A led by Sequoia and Felicis. Today, Carebricks powers agentic workflows for some of the worldâs leading health systems and clinicians.
Challenge
Bunkerhillâs data comes in pairs of 2-100MB images alongside 1 or more long form (100-2000 words) caption reports. Training a foundation model on 50-100 million of these medical image <-> text pairs is a herculean endeavor, but the work doesnât stop there.
Before marimo, collaboration between Bunkerhillâs ML engineers, backend engineers, and physician partners was painfully manual:
- Engineers experimenting with new model outputs had to download raw images (in an atypical format), convert them to renderable images locally, and share large files over Slack
- Radiologists needed to install niche viewers to comment on a single image
- Backend engineers integrating with new health system customers had to explore messy HER schemas with ad-hoc scripts before they could even start building ingestion pipelines
These challenges lead to significant coordination costs, duplicative efforts and ultimately wasted time (which, for ML engineers, backend engineers, and physicians, is expensive!). The team needed a unified, interactive workspace where ML engineers and clinicians could explore massive datasets, visualize complex imaging formats, and share results instantly.
Bringing in marimo
Bunkerhill was eager to adopt marimo, an open-source development environment that feels like a next-gen, AI-native notebook, but is stored as Git-friendly Python that can be pushed to production. marimo was an obvious solution to be the connective tissue underpinning Bunkerhillâs data platform for ML engineers:
- Step function change in data exploration and visualization:
- Parquet pipelines feed into Polars lazyframes inside marimo for rapid querying of billions of rows
- Visualization components (offered out of the box with marimo) like sliders, inputs, multi-dimensional viewers, etc. allowed for domain-specific data to be displayed without any third-party managed applications
- This allowed Bunkerhill to render medical images that tools like Matplotlib canât easily handle
- Easily deploy and host interactive apps:
- marimo became the front-end for all assets stored in Bunkerhillâs S3 bucket, allowing them to convert previously inaccessible imaging formats into viewable slices immediately
- Radiologists donât need to download any extra software, they can open a secure link to a marimo app directly in their browser
- Collaboration
- ML engineers can easily deploy marimo apps for each experiment they run
- Physician partners annotate results directly in the notebook, significantly streamlining the feedback loop for model training and evaluation
For backend engineers, marimo has become the default environment for customer-specific data mapping during implementation. Now, engineers can easily explore each hospitalâs raw warehouse tables, reconcile schemas, and write the syncers that feed Bunkerhillâs production pipelines, all in marimo.
Bunkerhill has entirely phased out Jupyter in favor of marimo. In addition to enabling new workflows like seamless application development, marimoâs Python-first Git-friendly design fits far better than Jupyter did in their software engineering lifecycle. David Eng, co-founder of Bunkerhill Health, summarized âWe can focus on logic specific to our vertical, not on building reusable internal tools. We can treat notebooks like (1) code and check them into version control and (2) applications and internally host them- while benefiting from active development / improvements.â
Results
marimo is now a daily part of Bunkerhillâs workflow. All the ML engineers and a handful of radiologists are daily active users, alongside 5-10 backend engineers using the tool on a weekly basis. Adopting the tool has driven critical metrics for the business including:
- Speed of integration: New customer data integration that used to require days of prototyping are now explored in hours
- Seamless collaboration: Radiologists can review data and model outputs instantly, cutting feedback cycles down from days (across fragmented tools) to minutes
- Infinite scalability: Interactive notebooks are immediately available as deployable apps, so teams are able to conduct exploratory work and immediately deploy it as production-grade visualizations
According to Co-Founder and CTO David Eng, âI initially thought of marimo as a âbetterâ notebook, like thinking of Notion as a âbetterâ Google Docs or Cursor as a âbetterâ IDE. But similar to those products, I think the marimo primitives redefine the category of what you can reasonably accomplish out of a notebook.â
