ryrob.es=#drag blocks by their header
whoami.sqlquery
select name, since, does
  from people
 where career means 'shows a business what is really going
                     on, then makes it understand itself'
 limit 1;
name

Ryan Robitaille

since1999
does

I help companies see what's really happening in their business, then build AI that understands it and gets the work done.

Before AI, 27 years of data and BI: Tableau Zen Master, two patents at Facebook, Tesla, Airbnb.

(1 row)receipt 27 years scanned
outcomes.sqlquery
select step, outcome
  from engagements
 order by n;
stepoutcome
understandWhat's happening, with the evidence behind it
decideWhat to do about it, using your own rules
actCarry the decision through, in the systems you already have
repeatKeep watching, so next week starts further ahead
(4 rows)
career:liniumopen
year
1999
org
Linium
role
Systems engineer, Albany NY. Then sysadmin, state data, BI.
honors:zen-masteropen
Ryan's Bigfoot sightings viz on the Tableau Conference keynote screens
year
2012
honor
Tableau Zen Master
work
Metallica, Bigfoot and MLB data on Tableau Public
career:facebookopen
Mock query pills from Rabbit, Facebook 2016: SUM 1 day revenue, DIM region
years
2014–18
org
Facebook
built
Rabbit, an internal data tool. Two patents.
projects:rabbit-remixopen
Rabbit Remix flow chaining text and image blocks
year
2023
built
Rabbit Remix
what
LLM agents on a canvas, before function calling

career, 1999 to now

Timeline of jobs, 1999 to nowllm era200520102015202020251999now19992012-1120142023-04nowLinium: Systems Engineer. 1999 to 2004LiniumColwell & Salmon: Programmer / System & Network Admin. 2004 to Aug 2006Colwell & SalmonNY State DCJS: ITS Programmer / Evil Genius. Aug 2006 to Dec 2010NY State DCJSRyrobes Consulting: Solutions Consultant / Owner. Jan 2009 to Nov 2011Ryrobes ConsultingLinium: Director of Data Services. Nov 2011 to Jan 2014LiniumFacebook: BI Engineer, then Data Engineer, then Data Engineering Manager. Jan 2014 to Jun 2018FacebookTesla: Data Engineer (Sr Staff) / Manager. Dec 2018 to Jun 2019TeslaIndependent: Data Eng & Data UI consulting. Jun 2019 to Nov 2020 (approximate)IndependentAirbnb: Business Intelligence Engineer (contract), then Senior Staff Business Intelligence Engineer. Nov 2020 to Jun 2023AirbnbIndependent: Research & consulting. Jun 2023 to nowIndependent Timeline of jobs, 1999 to now20052010201520201999nowLinium: Systems Engineer. 1999 to 2004LiniumColwell & Salmon: Programmer / System & Network Admin. 2004 to Aug 2006Colwell & SalmonNY State DCJS: ITS Programmer / Evil Genius. Aug 2006 to Dec 2010NY State DCJSRyrobes Consulting: Solutions Consultant / Owner. Jan 2009 to Nov 2011Ryrobes ConsultingLinium: Director of Data Services. Nov 2011 to Jan 2014LiniumFacebook: BI Engineer, then Data Engineer, then Data Engineering Manager. Jan 2014 to Jun 2018FacebookTesla: Data Engineer (Sr Staff) / Manager. Dec 2018 to Jun 2019TeslaIndependent: Data Eng & Data UI consulting. Jun 2019 to Nov 2020 (approximate)IndependentAirbnb: Business Intelligence Engineer (contract), then Senior Staff Business Intelligence Engineer. Nov 2020 to Jun 2023AirbnbIndependent: Research & consulting. Jun 2023 to nowIndependent

employedown shopllm era

ryrob.es=# select * from projects where status = 'shipping';

Calliope

An AI colleague that learns how a business works. She connects the facts, investigates what needs attention and carries out the work you hand her.

DataRabbit

Began as Rabbit, an internal data tool I built at Facebook (2015–17). Rebuilt from 2018 as a live-coding canvas. Now the SQL and operations console in the Calliope stack.

rvbbit.ai

AI primitives as planner-visible operators inside Postgres. Route, receipt, time-travel. Worst case, it's just Postgres.

LARS / LarsQL

"AI that speaks SQL." WHERE description MEANS 'urgent customer issue': the model works as an operator inside SQL.

(4 rows)

ryrob.es=# select idea, shipped_at from ideas join moments using (idea);
200520102015202020251999nowthe canvas is the IDELinium — Business Technologist, Nov 2011Tableau Zen Master, Nov 2012Tableau Conference keynote, Jan 2014Facebook data UI prototype, Jun 2014Multi-source data IDE (patent filed), Jul 2016Automated viz recommendations (patent filed), Dec 2017August of the Rabbit, Aug 2020Pseudo-isometric z-index, Aug 2020Hire me (the first time), Sep 2020Experiments — igel ML UI, Dec 2020Viz-recs patent issues, Jul 2021Hybrid front/back live-coding DAG, Oct 2021Notebook, dashboard, flow IDE?, Nov 2021River of REPLs, Dec 2021Dec 31st — Alpha 1. (finally), Dec 2021Kill your darlings, Jan 2022Context-heavy UI, May 2022Data Rabbit Alpha 1, Aug 2022Value unfolding, Oct 2022HoneySQL micro-dashboards, Nov 2022HoneySQL workspace, Nov 2022No modes, Dec 2022reClojure 2022 — A system built for seeing, Dec 2022reClojure talk, Twitter cut, Feb 2023Visual recommendation browsing, Feb 2023No canvas to spare, Mar 2023I don't want a notebook, Mar 2023Hide spaghetti by eating it, Apr 2023Nested data structures, visually, Apr 2023Wolves, remixed, Apr 2023The color and shape of data, Jul 2023A slightly different take on SQL drag-and-drop, Aug 2023Subflows, Aug 2023Fluid query visualizations, Oct 2023Ladder of abstraction, Oct 2023Pivot by another SQL query, Oct 2023VS Code as the display, Nov 2023Clojure that acts as a SQL table, Nov 2023The elevator pitch, Nov 2023Dashboard tool shit test #143, Nov 2023What if my dashboard could speak ETL?, Dec 2023The spice must flow, Dec 2023Drag in to open, drag+F as a component, Dec 2023RVBBIT winter preview, Jan 2024Hybrid canvas SQL REPL, Jul 2024Human first, machine friendly, Aug 2024RVBBIT 0.1.0 alpha, Aug 2024HareZero, Sep 2024Low-UI data desktop, Sep 2024Diffusion OS, Sep 2025EDN DSL → rasterize → inpaint, Sep 2025REWINDex, Nov 2025Native Wayland UI from Clojure, Nov 2025Row vacuum, Nov 2025Fractal data viz, Feb 2026Hermes as a BI SWAT team, Aug 2026make complexity observableNYS DCJS — ITS Programmer / Evil Genius, Aug 2006DHS / ICE — Outstanding Work, Jan 2010Facebook data UI prototype, Jun 2014Pseudo-isometric z-index, Aug 2020Experiments — igel ML UI, Dec 2020Value unfolding, Oct 2022reClojure 2022 — A system built for seeing, Dec 2022Untangle Tableau spaghetti, Feb 2023Tableau Flow Maps ships, Feb 2023reClojure talk, Twitter cut, Feb 2023No canvas to spare, Mar 2023Flowmaps, named, Jul 2023Flowmaps, Jul 2023Scrubbable time, Jul 202340 panels, every 10 seconds, Nov 2023Low-UI data desktop, Sep 2024XTDB bi-temporal scrubbing, Oct 2024Playwright is the new eyes, Jan 2025REWINDex, Nov 2025Row vacuum, Nov 2025Doom SQL, Jul 2026live values, not batch jobsHybrid front/back live-coding DAG, Oct 2021Notebook, dashboard, flow IDE?, Nov 2021River of REPLs, Dec 2021Kill your darlings, Jan 2022Data Rabbit Alpha 1, Aug 2022nREPLs, SQL, JDBC, Vega, Aug 2022Alpha 3 — Python and R in the flow, Sep 2022Am I still programming?, Apr 2023Hide spaghetti by eating it, Apr 2023Stream block, May 2023Weaponized super-prompt, May 2023Functions as block targets, Jun 2023Fell in love with FBP before it had a name, Jun 2023Flowmaps, named, Jul 2023Flowmaps, Jul 2023Scrubbable time, Jul 2023A flow is a REST endpoint, Aug 2023Subflows, Aug 2023What if my dashboard could speak ETL?, Dec 2023The spice must flow, Dec 2023Drag in to open, drag+F as a component, Dec 2023RVBBIT winter preview, Jan 2024RVBBIT 0.1.0 alpha, Aug 2024Value Reactor goes external, Sep 2024SQL as the universal mediumMulti-source data IDE (patent filed), Jul 2016River of REPLs, Dec 2021nREPLs, SQL, JDBC, Vega, Aug 2022HoneySQL micro-dashboards, Nov 2022HoneySQL workspace, Nov 2022No modes, Dec 2022Visual recommendation browsing, Feb 2023I don't want a notebook, Mar 2023The color and shape of data, Jul 2023A slightly different take on SQL drag-and-drop, Aug 2023CanvaSQL browses itself, Sep 2023Fluid query visualizations, Oct 2023Ladder of abstraction, Oct 2023Pivot by another SQL query, Oct 2023Clojure that acts as a SQL table, Nov 2023Dashboard tool shit test #143, Nov 2023What if my dashboard could speak ETL?, Dec 2023RVBBIT winter preview, Jan 2024Hybrid canvas SQL REPL, Jul 2024RVBBIT 0.1.0 alpha, Aug 2024HareZero, Sep 2024XTDB bi-temporal scrubbing, Oct 2024RENDER AS HTMX, in SQL, Jun 2025SQL threading macros, Jun 2025Cheshire, Aug 2025Row vacuum, Nov 2025Marimo dot wtf, Dec 2025SQL, meet LLM, Dec 2025MEANS 'urgent customer issue', Jan 2026100% SQL based viz & layouts, Jan 2026Fractal data viz, Feb 2026Doom SQL, Jul 2026SQL is the exec substrate, Jul 2026rvbbit.means(), Jul 2026Synchro, Aug 2026hackable by the userMulti-source data IDE (patent filed), Jul 2016Apps as pretty-printed EDN, Jul 2020August of the Rabbit, Aug 2020Editing the editor, Sep 2020Data Rabbit Alpha 1, Aug 2022Alpha 3 — Python and R in the flow, Sep 2022Stream block, May 2023A flow is a REST endpoint, Aug 2023CanvaSQL browses itself, Sep 2023VS Code as the display, Nov 2023Why a dynamic theme system?, Dec 2023RVBBIT 0.1.0 alpha, Aug 2024AI workers, user-space, Sep 2024RENDER AS HTMX, in SQL, Jun 2025Omarchy auto-themer, Nov 2025Native Wayland UI from Clojure, Nov 2025Synchro, Aug 2026interfaces that materializeAutomated viz recommendations (patent filed), Dec 2017Visual recommendation browsing, Feb 2023Dilbert meets Minority Report, May 2025Diffusion OS, Sep 2025EDN DSL → rasterize → inpaint, Sep 2025The first time BI felt intelligent, Aug 2026human-first, machine-friendlyAm I still programming?, Apr 2023Hide spaghetti by eating it, Apr 2023Wolves, remixed, Apr 2023Weaponized super-prompt, May 2023Thumper, Jun 2023Functions as block targets, Jun 2023Human first, machine friendly, Aug 2024AI workers, user-space, Sep 2024Playwright is the new eyes, Jan 2025Dilbert meets Minority Report, May 2025EDN DSL → rasterize → inpaint, Sep 2025Marimo dot wtf, Dec 2025SQL is the exec substrate, Jul 2026The first time BI felt intelligent, Aug 2026Hermes as a BI SWAT team, Aug 2026intent over syntaxSQL, meet LLM, Dec 2025MEANS 'urgent customer issue', Jan 2026100% SQL based viz & layouts, Jan 2026rvbbit.means(), Jul 2026The first time BI felt intelligent, Aug 2026 201520202009nowthe canvas is the IDELinium — Business Technologist, Nov 2011Tableau Zen Master, Nov 2012Tableau Conference keynote, Jan 2014Facebook data UI prototype, Jun 2014Multi-source data IDE (patent filed), Jul 2016Automated viz recommendations (patent filed), Dec 2017August of the Rabbit, Aug 2020Pseudo-isometric z-index, Aug 2020Hire me (the first time), Sep 2020Experiments — igel ML UI, Dec 2020Viz-recs patent issues, Jul 2021Hybrid front/back live-coding DAG, Oct 2021Notebook, dashboard, flow IDE?, Nov 2021River of REPLs, Dec 2021Dec 31st — Alpha 1. (finally), Dec 2021Kill your darlings, Jan 2022Context-heavy UI, May 2022Data Rabbit Alpha 1, Aug 2022Value unfolding, Oct 2022HoneySQL micro-dashboards, Nov 2022HoneySQL workspace, Nov 2022No modes, Dec 2022reClojure 2022 — A system built for seeing, Dec 2022reClojure talk, Twitter cut, Feb 2023Visual recommendation browsing, Feb 2023No canvas to spare, Mar 2023I don't want a notebook, Mar 2023Hide spaghetti by eating it, Apr 2023Nested data structures, visually, Apr 2023Wolves, remixed, Apr 2023The color and shape of data, Jul 2023A slightly different take on SQL drag-and-drop, Aug 2023Subflows, Aug 2023Fluid query visualizations, Oct 2023Ladder of abstraction, Oct 2023Pivot by another SQL query, Oct 2023VS Code as the display, Nov 2023Clojure that acts as a SQL table, Nov 2023The elevator pitch, Nov 2023Dashboard tool shit test #143, Nov 2023What if my dashboard could speak ETL?, Dec 2023The spice must flow, Dec 2023Drag in to open, drag+F as a component, Dec 2023RVBBIT winter preview, Jan 2024Hybrid canvas SQL REPL, Jul 2024Human first, machine friendly, Aug 2024RVBBIT 0.1.0 alpha, Aug 2024HareZero, Sep 2024Low-UI data desktop, Sep 2024Diffusion OS, Sep 2025EDN DSL → rasterize → inpaint, Sep 2025REWINDex, Nov 2025Native Wayland UI from Clojure, Nov 2025Row vacuum, Nov 2025Fractal data viz, Feb 2026Hermes as a BI SWAT team, Aug 2026make complexity observableDHS / ICE — Outstanding Work, Jan 2010Facebook data UI prototype, Jun 2014Pseudo-isometric z-index, Aug 2020Experiments — igel ML UI, Dec 2020Value unfolding, Oct 2022reClojure 2022 — A system built for seeing, Dec 2022Untangle Tableau spaghetti, Feb 2023Tableau Flow Maps ships, Feb 2023reClojure talk, Twitter cut, Feb 2023No canvas to spare, Mar 2023Flowmaps, named, Jul 2023Flowmaps, Jul 2023Scrubbable time, Jul 202340 panels, every 10 seconds, Nov 2023Low-UI data desktop, Sep 2024XTDB bi-temporal scrubbing, Oct 2024Playwright is the new eyes, Jan 2025REWINDex, Nov 2025Row vacuum, Nov 2025Doom SQL, Jul 2026live values, not batch jobsHybrid front/back live-coding DAG, Oct 2021Notebook, dashboard, flow IDE?, Nov 2021River of REPLs, Dec 2021Kill your darlings, Jan 2022Data Rabbit Alpha 1, Aug 2022nREPLs, SQL, JDBC, Vega, Aug 2022Alpha 3 — Python and R in the flow, Sep 2022Am I still programming?, Apr 2023Hide spaghetti by eating it, Apr 2023Stream block, May 2023Weaponized super-prompt, May 2023Functions as block targets, Jun 2023Fell in love with FBP before it had a name, Jun 2023Flowmaps, named, Jul 2023Flowmaps, Jul 2023Scrubbable time, Jul 2023A flow is a REST endpoint, Aug 2023Subflows, Aug 2023What if my dashboard could speak ETL?, Dec 2023The spice must flow, Dec 2023Drag in to open, drag+F as a component, Dec 2023RVBBIT winter preview, Jan 2024RVBBIT 0.1.0 alpha, Aug 2024Value Reactor goes external, Sep 2024SQL as the universal mediumMulti-source data IDE (patent filed), Jul 2016River of REPLs, Dec 2021nREPLs, SQL, JDBC, Vega, Aug 2022HoneySQL micro-dashboards, Nov 2022HoneySQL workspace, Nov 2022No modes, Dec 2022Visual recommendation browsing, Feb 2023I don't want a notebook, Mar 2023The color and shape of data, Jul 2023A slightly different take on SQL drag-and-drop, Aug 2023CanvaSQL browses itself, Sep 2023Fluid query visualizations, Oct 2023Ladder of abstraction, Oct 2023Pivot by another SQL query, Oct 2023Clojure that acts as a SQL table, Nov 2023Dashboard tool shit test #143, Nov 2023What if my dashboard could speak ETL?, Dec 2023RVBBIT winter preview, Jan 2024Hybrid canvas SQL REPL, Jul 2024RVBBIT 0.1.0 alpha, Aug 2024HareZero, Sep 2024XTDB bi-temporal scrubbing, Oct 2024RENDER AS HTMX, in SQL, Jun 2025SQL threading macros, Jun 2025Cheshire, Aug 2025Row vacuum, Nov 2025Marimo dot wtf, Dec 2025SQL, meet LLM, Dec 2025MEANS 'urgent customer issue', Jan 2026100% SQL based viz & layouts, Jan 2026Fractal data viz, Feb 2026Doom SQL, Jul 2026SQL is the exec substrate, Jul 2026rvbbit.means(), Jul 2026Synchro, Aug 2026hackable by the userMulti-source data IDE (patent filed), Jul 2016Apps as pretty-printed EDN, Jul 2020August of the Rabbit, Aug 2020Editing the editor, Sep 2020Data Rabbit Alpha 1, Aug 2022Alpha 3 — Python and R in the flow, Sep 2022Stream block, May 2023A flow is a REST endpoint, Aug 2023CanvaSQL browses itself, Sep 2023VS Code as the display, Nov 2023Why a dynamic theme system?, Dec 2023RVBBIT 0.1.0 alpha, Aug 2024AI workers, user-space, Sep 2024RENDER AS HTMX, in SQL, Jun 2025Omarchy auto-themer, Nov 2025Native Wayland UI from Clojure, Nov 2025Synchro, Aug 2026interfaces that materializeAutomated viz recommendations (patent filed), Dec 2017Visual recommendation browsing, Feb 2023Dilbert meets Minority Report, May 2025Diffusion OS, Sep 2025EDN DSL → rasterize → inpaint, Sep 2025The first time BI felt intelligent, Aug 2026human-first, machine-friendlyAm I still programming?, Apr 2023Hide spaghetti by eating it, Apr 2023Wolves, remixed, Apr 2023Weaponized super-prompt, May 2023Thumper, Jun 2023Functions as block targets, Jun 2023Human first, machine friendly, Aug 2024AI workers, user-space, Sep 2024Playwright is the new eyes, Jan 2025Dilbert meets Minority Report, May 2025EDN DSL → rasterize → inpaint, Sep 2025Marimo dot wtf, Dec 2025SQL is the exec substrate, Jul 2026The first time BI felt intelligent, Aug 2026Hermes as a BI SWAT team, Aug 2026intent over syntaxSQL, meet LLM, Dec 2025MEANS 'urgent customer issue', Jan 2026100% SQL based viz & layouts, Jan 2026rvbbit.means(), Jul 2026The first time BI felt intelligent, Aug 2026

The same ideas for 27 years. Each tick is a project, demo or milestone; the last two rows only start in 2023.

ryrob.es=# select title, started from experiments where surface = 'canvas' order by started;

(7 rows)

ryrob.es=# select name, what, years from projects where status = 'side';
namewhatyears
riffbankFuzzy riff-shape search over a ~200M-note guitar tab corpus. Paste a riff, find where else it's played. Uses a canvas tab renderer written from scratch.2026
Tableau Flow MapsShows the spaghetti of Tableau dashboard actions as a graph.2023
Backflow tester directories24 static city directories of approved backflow testers (serviceanswersnow.com), built from public lists.2026
RabbitizePlaywright as a live, stateful REST service, with video, screenshots and DOM captured for every step.2025–2026
CheshireSQL to ANSI charts in the terminal, with a suggestion engine and tmux dashboards.2025
Omarchy auto-themerA random wallpaper goes in and a full OS theme comes out.2025–2026

(6 rows)

ryrob.es=# table career;
whenorgrole
Jun 2023 to nowIndependentResearch & consultingRVBBIT, Semantic SQL, Calliope in production. This site.
Aug 2021 to Jun 2023AirbnbSenior Staff Business Intelligence EngineerLeft June 2023. Officially Rabbit Season.
Nov 2020 to Aug 2021AirbnbBusiness Intelligence Engineer (contract)Contract role, Nov 2020 to Aug 2021.
Jun 2019 to Nov 2020 ≈IndependentData Eng & Data UI consultingRemote gigs, a hire-me page, and Rabbit in the evenings.
Dec 2018 to Jun 2019TeslaData Engineer (Sr Staff) / ManagerA short, fascinating stint.
Jan 2016 to Jun 2018FacebookData Engineering ManagerLed a mixed Data Eng / SWE team building internal data tools for the GMS data org: component-based app building, data viz, live coding.
Jun 2014 to Jun 2016FacebookData EngineerBuilt a prototype data UI for central BI; two patents came out of this era.
Jan 2014 to Jun 2014PRO Unlimited (at Facebook)BI EngineerContractor at Facebook via PRO Unlimited.
Nov 2011 to Jan 2014LiniumDirector of Data ServicesReporting, data integration, BI. The Tableau years. Zen Master 2012.
Jan 2009 to Nov 2011Ryrobes ConsultingSolutions Consultant / OwnerOverlapped DCJS. "I solve problems. I do things my own way."
Aug 2006 to Dec 2010New York State Division of Criminal Justice ServicesITS Programmer / Evil GeniusCustom data-gathering that cleaned up NYS criminal history records.
2004 to Aug 2006Colwell & SalmonProgrammer / System & Network AdminSysadmin, network admin, telco admin.
1999 to 2004LiniumSystems EngineerFirst run. Five years.
-[ RECORD 1 ]
when
Jun 2023 to now
org
Independent
role
Research & consulting
-[ RECORD 2 ]
when
Aug 2021 to Jun 2023
org
Airbnb
role
Senior Staff Business Intelligence Engineer
-[ RECORD 3 ]
when
Nov 2020 to Aug 2021
org
Airbnb
role
Business Intelligence Engineer (contract)
-[ RECORD 4 ]
when
Jun 2019 to Nov 2020
org
Independent
role
Data Eng & Data UI consulting
-[ RECORD 5 ]
when
Dec 2018 to Jun 2019
org
Tesla
role
Data Engineer (Sr Staff) / Manager
-[ RECORD 6 ]
when
Jan 2016 to Jun 2018
org
Facebook
role
Data Engineering Manager
-[ RECORD 7 ]
when
Jun 2014 to Jun 2016
org
Facebook
role
Data Engineer
-[ RECORD 8 ]
when
Jan 2014 to Jun 2014
org
PRO Unlimited (at Facebook)
role
BI Engineer
-[ RECORD 9 ]
when
Nov 2011 to Jan 2014
org
Linium
role
Director of Data Services
-[ RECORD 10 ]
when
Jan 2009 to Nov 2011
org
Ryrobes Consulting
role
Solutions Consultant / Owner
-[ RECORD 11 ]
when
Aug 2006 to Dec 2010
org
New York State Division of Criminal Justice Services
role
ITS Programmer / Evil Genius
-[ RECORD 12 ]
when
2004 to Aug 2006
org
Colwell & Salmon
role
Programmer / System & Network Admin
-[ RECORD 13 ]
when
1999 to 2004
org
Linium
role
Systems Engineer

(13 rows)

ryrob.es=# table patents; table honors;
One live workspace over many data sources

Reaches many databases through one shared access layer, then lets you query, chart, publish and embed the results in a single live workspace, where charts update in real time and their generated code can be edited by hand.

US20180011910A1, Filed 2016, published 2018, Facebook (now Meta)
Automatic chart recommendations for any dataset

Checks a dataset's fields against a library of chart templates (by data type and cardinality), ranks the candidates by past user choices or an ML model, and shows as many top picks as fit on screen.

US11074301B2, Filed 2017, Granted 2021, Facebook (now Meta)
2010Outstanding WorkDHS / U.S. Immigration and Customs Enforcement
2012Tableau Zen MasterTableau Software
2014Keynote stageTableau Conference
ryrob.es=# select published, title from posts order by published desc limit 5;

(5 rows) all 82 posts since 2009

ryrob.es=# select hire('ryan');

What I can do for you

  • Answers your team trusts, with the evidence attached
  • Recurring questions turned into work that runs on its own
  • AI inside the data and tools you already have, nothing ripped out

Full-time roles or consulting. Remote.