
Flower
Mule Fuel
Elevated
$5.00 / g
Bloom/2017 - 2022/5 years/~20 people/3 hubs

Five years building Bloom POS at First Foundry Corporation. Product, brand, sales, marketing, store installs, fundraising, and the network the whole thing ran on.
03 reels
Demos and feature launches recorded between 2020 and 2021: curbside pickup, the instant demo store, and the partnership pitch we used to onboard new dispensaries.
Reel 01 of 03
FeaturedInstant Demo Store
Enter an email, get a fully provisioned dispensary with synthetic sales trickling in. Pair an iPad running the Bloom POS app to ring real transactions on the demo data.
PORTAL DASHBOARD / live demo
what owners actually saw on Monday morning
THE TEAM
~20 people. Oregon, Manila, Brazil.
















GreenBit owned the market. It was implanted across the industry and it was the worst piece of point-of-sale software on earth. Adding 20 items to a cart meant pressing a button 20 times. Returns took ten minutes. METRC sync was a manual chore that broke regularly. The bar to clear was on the floor.
I co-founded Bloom and led it across product, brand, sales, marketing, store installs, customer support, fundraising, and a chunk of the build. The work happened the only way it should for retail software: walking into dispensaries, shadowing budtenders, watching hands move across the register, and mapping where the existing tools were breaking them. Then the team shipped the replacement: front end, back end, METRC engine, hardware integrations, and the network the whole thing ran on.

Flower
Elevated
$5.00 / g

Flower
Luna Leaf
$8.00 / g

Flower
Rooster
$70.00 / oz

Flower
Happy Goat
$28.00 / 1/8oz

Flower
Silver Sap
$6.00 / g

Flower
Chaaya Cannabis
$8.00 / g

Flower
Elevated
$5.00 / g

Flower
Lucky Cultivation
$10.00 / g

Flower
High Desert Relief
$6.00 / g

Flower
Iron Lung
$35.00 / 1/8oz

Flower
High Desert Relief
$6.00 / g

Flower
Happy Goat
$28.00 / 1/8oz
5 layers · 18 surfaces
Scroll to browse the full stack
Cannabis is a tracked-good industry. Every gram in inventory has a 24-character METRC tag and a compliance state. Bloom’s job was making this surface human: synced packages disappear into the background, errors and stalled syncs surface with one-click fixes. Filter by category, sync state, or search the tag itself.
| METRC Tag | Product | Vendor | Category | Actions | |||
|---|---|---|---|---|---|---|---|
| Synced | 1A4FF0100000023000045123 | Bubba Kush East Fork Cultivars | East Fork Cultivars | Flower | 16453.59 g | 2 min ago | |
| Synced | 1A4FF0100000023000045124 | Blue Dream Greenleaf Farms | Greenleaf Farms | Flower | 8226.79 g | 2 min ago | |
| Pending | 1A4FF0100000023000045125 | Lemon Kush Pruf Cultivar | Pruf Cultivar | Flower | 4113.40 g | syncing... | |
| Synced | 1A4FF0100000023000045126 | Ancient OG Preroll Fume Bros | Fume Bros | Pre-Rolls | 1441.00 g | 5 min ago | |
| Error | 1A4FF0100000023000045127 | Wyld Raspberry Gummies Wyld | Wyld | Edibles | 47 | 47 min ago | |
Quantity discrepancy: METRC has 50, POS has 47 | |||||||
| Synced | 1A4FF0100000023000045128 | Lemon Skunk Live Resin Echo Electuary | Echo Electuary | Concentrates | 221.00 g | 8 min ago | |
| Stopped | 1A4FF0100000023000045129 | Granddaddy Purple Dr. Jolly's | Dr. Jolly's | Flower | 8226.79 g | 2 hours ago | |
Auto-sync paused: package overselling detected | |||||||
1A4FF01000000230000451231A4FF01000000230000451241A4FF01000000230000451251A4FF01000000230000451261A4FF01000000230000451271A4FF01000000230000451281A4FF0100000023000045129// search the tag · filter by sync state · click Force Sync to flash a fix
Cannabis retail in 2019 had a lying-menus problem. You’d see something on the website, drive to the shop, and it would be sold out. The only way to know in advance was to call. Bloom’s customer-facing menu was the first in the industry to sync directly to the POS in real time, so when a product hit zero on the shelf it disappeared from the menu. Browse before you go, place a curbside pickup order from your phone, walk in or stay in your car.
Cannabis retail in 2019 had a lying-menus problem. You’d see something on the website, drive to the shop, and find it sold out. The only way to know in advance was to call.
Bloom’s customer-facing menu was the first in the industry to sync directly to the POS in real time. When a product hit zero on the shelf it disappeared from the menu. Browse before you go, place a curbside pickup order from your phone, walk in or stay in your car.
// tap a category · tap a product · sold-out items are actually sold out
The piece every customer saw. Cart on the left, product grid on the right, “Pay Now” pinned to the bottom. Click a product to add. Click Pay Now to close out. Built around the two-thumb tablet workflow that a dispensary moves through 200 times a day.
// click products to add to cart · Pay Now reveals the close-out overlay
Discounts, returns, and weighing flower at the counter. Three surfaces where compliance math and a thumb-friendly UI had to agree. Tap each to play with it.
// preset · custom $/% · BLOOM10 promo
METRC requires returns to reference the originating sale. Search by ID, customer, or date.
// 8-step wizard · signature capture · resumable
// type 13 to trip the package warning
What hundreds of hours of reliability engineering looked like in one panel. Bloom polled label printers, receipt printers, scales, scanners, the menu sync, METRC, settings, and the internet uplink, and surfaced every state in a dropdown anchored to the iPad header. Click any disconnected channel to fire a reconnect request. The dot flips green and the timestamp resets, which is exactly the affordance budtenders needed when the receipt printer timed out at 4:20 on a Friday.
// click Connect / Update on any row · live polling tick every 5 seconds
Roughly twenty people across Oregon, Manila, and Brazil. Engineers, designers, operators, and field hands. Credit where it’s due.
// crew console / 16 nodes / 3 hubs
active

Product Lead / Oregon
“John was the product manager and stayed up all night and all day doing an excellent job. He managed every team across the country and voluntarily stayed up late and woke up early to meet with Brazil and Manila and everyone else at fair times for them. He came from a programming background, so he knew what he was doing, and he was extremely detailed. He started as a project manager and then took over as product manager and was amazing at both.”
Michael / on John
01 / 16
// rosterclick any face
“We are so excited to work with Bloom. You guys have been really great. The system is so cute and sleek.”

Paul Pedreira / Portland Best Buds
“The customer service offered by the Bloom team goes above and beyond what any business could expect.”

Heather Jenson / Tangent
“Just a reminder you can use Fireside for whatever you want to try out. I have full confidence in Bloom.”

Gregg Kerr / Fireside
“The system is much more advanced than what we are used to. The auto label printing and touchscreen are so easy to use.”

Jim Wymore / Medigreen
Budtenders loved Bloom. We shadowed them, sat behind the counter, watched their hands move, and tuned every screen to the actual rhythm of selling cannabis. Hundred clicks reduced to three. The interface was the best in the market and our customers said so on the record.
Budtenders do not pick the POS. Owners do. And owners care about different things. They care about the bottom line. They care about whether their tax math is right. They care about whether the OLCC is going to flag them. They care about whether support picks up the phone when the system breaks at 4:20 on a Friday.
We had answers for all of that. We had better answers than the incumbents. But owners had been burned three times by cheap POS providers, and the trust budget for a new vendor was zero. Sales conversion at the top of the funnel was roughly 1.3 percent. 450 outbound calls produced six paying stores.
The market was looking for someone it already trusted. A better tool from a new vendor didn’t move the trust needle.
// what owners actually fear
// why owners stayed with greenbits and flowhub
Oregon was a saturated market by 2020. 136 software vendors. 65 POS companies. 35 active POS solutions. 650 dispensary shops total. The total addressable market for an Oregon-only POS topped out at $2.3M per year.
GreenBits
raised: $41M
share: 40%
Biotrack
raised: $5M
share: 17%
Flowhub
raised: $27M
share: 15%
MMJMenu
raised: $21M
share: N/A
Leaf Logix
raised: $5.9M
share: N/A
POSabit
raised: $4.4M
share: N/A
Bloom
raised: internal
share: 2%
“I have come to the conclusion that Bloom should be closed down. The effort being put forth is starkly different than the return we are receiving. The market is not excited about a solution to their problems. We have done an incredible job at solving all the issues this industry faces.”
From an internal memo, late 2021
Helped clients migrate. Paid what was owed. Archived the codebase. The judgment from running this informs every product call I make now.
Got a similar build? Let’s talk.
NEXT CASE STUDY
Super Crypto Time/Q3 2021 - Q4 2022
Mega Kraken Guild (founder)
READ THE CASE STUDY