Head of Finance · Global FP&A · Strategic Finance Leader

Julieth
Ramos
Rivera

Head of Finance  ·  Global FP&A  ·  Strategic Finance Leader

I build the financial operating system
that gives leadership clarity on demand,
not on request.

A forecast they trust, a variance story that points to action, and scenario modeling that makes trade-offs clear before committing — not after.

See the work  ↓
65→75%
Retention after commission redesign

Cohort analysis showed commissions were funding clients who churned before they paid for themselves. Finance changed the sales incentive structure. Retention climbed 10 points.

10→4
Days — month-end close

Not a process tweak — a system rebuild. SQL pipelines and automated reconciliation replaced manual work across three disconnected tools. Then cut by 60% further at the next role.

4 months
Of runway that nobody knew existed

Every department was buying software independently. Nobody had mapped real payroll timing across 8 countries. The cash picture was fiction. Connecting the real data found the runway.

02

The Work, Documented.

These aren't exercises. They're the same problems — rebuilt in SQL so you can see exactly how I think, from business question to decision.

Complete
Project 01 · SQL · Finance Operations

"Our revenue reports don't match what was actually collected."

Built: GL vs. Stripe Reconciliation Engine

$2,898 in phantom revenue on board reports — a duplicate GL posting and a partial payment that slipped through. Joined general ledger against payment processor records, flagged every mismatch.

LEFT JOIN GROUP BY SUM() CASE WHEN COALESCE Subqueries
-- GL vs Stripe · variance flagging SELECT gl.customer_name, gl.gl_total AS gl_amount, COALESCE(sp.stripe_total, 0) AS stripe_amount, gl.gl_total - COALESCE( sp.stripe_total, 0) AS variance, CASE WHEN gl.gl_total = COALESCE(sp.stripe_total,0) THEN 'OK' ELSE 'FLAG' END AS status FROM gl_totals gl LEFT JOIN stripe_totals sp ON gl.customer_name = sp.customer_name ORDER BY ABS(variance) DESC;
Decision enabled

2 flags: duplicate GL entry ($2,499) and partial payment ($399). Prevents overstated revenue reaching the board.

Complete
Project 02 · SQL · Customer Analytics

"We know we're churning — we just don't know why, or who."

Built: Cohort Retention Model by Plan Tier

100% churn on the entry-level plan at 3.5 months average. 0% churn on the enterprise plan at 29 months. The data existed — nobody had connected cohort timing to tier structure until this analysis.

CTEs DATE_FORMAT TIMESTAMPDIFF CASE WHEN COALESCE GROUP BY
-- 6-Month Retention by Cohort SELECT DATE_FORMAT(start_date,'%Y-%m') AS cohort, COUNT(*) AS cohort_size, SUM(CASE WHEN end_date IS NULL OR TIMESTAMPDIFF(MONTH, start_date, end_date) >= 6 THEN 1 ELSE 0 END) AS retained_6m FROM subscriptions GROUP BY cohort ORDER BY cohort;
Decision enabled

Entry-level plan = 100% churn. Triggers upgrade campaign at month 2 — before the typical churn window opens.

Complete
Project 03 · SQL · COGS Analysis

"Revenue is growing — but margin keeps compressing and nobody knows where the cost is going."

Built: Cost-per-Customer Infrastructure Model

The entry-level tier was consuming 70%+ of its own revenue in infrastructure costs. One mid-tier customer was $96/month over their usage ceiling — unrecovered, unnoticed. Blended margin: 55% vs. 65% benchmark.

INNER JOIN Cost per unit Margin analysis RANK() OVER() SUM() OVER() CTEs
-- COGS per customer · margin by tier SELECT c.company_name, c.tier, c.mrr_usd, ROUND( (u.tokens_millions * 2.5 * (1 - u.advanced_model_pct/100)) + (u.tokens_millions * 8.0 * (u.advanced_model_pct/100)) + (u.active_users * 6.5) , 2) AS total_cogs FROM customers c INNER JOIN monthly_usage u ON c.customer_id = u.customer_id ORDER BY total_cogs DESC;
Decision enabled

Reprice entry tier, enforce overage billing, route 20% of calls to standard model. Target: 65% blended margin within two quarters.

Complete
Project 04 · Financial Modeling · SQL

"We raised a seed round. Now — how long does it last, and what does it take to get to Series A?"

Built: Three-Statement Model with Scenario Toggle

18-month connected P&L → Balance Sheet → Cash Flow. Three scenarios (6%, 14%, 22% MoM growth). The gap between conservative and aggressive reaches $25M by Month 18. The pivotal window is Months 7–10.

SUM() OVER() UNION ALL Correlated Subqueries RANK() OVER() MIN() inflection
-- Cash runway · 18-month · 3 scenarios SELECT month_num, scenario, mrr, ebitda, SUM(net_cash_flow) OVER ( PARTITION BY scenario ORDER BY month_num ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW ) + seed_capital AS cash_balance, MIN(CASE WHEN ebitda > 0 THEN month_num END) OVER ( PARTITION BY scenario ) AS breakeven_month FROM forecast_model ORDER BY scenario, month_num;
Decision enabled

Base case: EBITDA breakeven Month 7. Gate headcount on 12% MoM ARR growth. Trigger Series A process no later than Month 12 — funded close takes 4–6 months.

SQL · Revenue Analytics · Next

MRR & ARR Waterfall

New, Expansion, Contraction, Churn · LAG / LEAD window functions
SQL · AR Management · Next

Invoice Aging Analysis

0–30 / 31–60 / 61–90 / 90+ day buckets · DATEDIFF · CASE WHEN
SQL · FP&A · Next

Budget vs. Actuals Variance

Department-level variance · INNER JOIN · ROLLUP
03

The Operator.

01 — Clarity on demand

The CEO stopped building reports.
He started reviewing them.

Monthly exec package · by the 15th · every month without exception

Built the automation so data flowed in without anyone pulling numbers manually. First time leadership had real-time visibility into MRR, ARR, NRR, cash runway, and budget vs. actuals — all connected, all in one place. The goal: finance as an operating rhythm, not rearview-mirror reporting.

02 — Finance informs sales

Retention improved
when commissions changed.

65% → 75% retention · MRR-aligned model · incentives realigned

Cohort analysis revealed the commission structure was paying Sales on deals that churned before they paid for themselves. Sat down with Sales, CS, Ops, HR, and Engineering — rebuilt the entire framework. Payouts tracked actual revenue over time, not deal closure. Aligned everyone's incentives with client quality.

03 — The inflection point

I've seen this before.
I know what's broken.

3 consecutive clean audits · cross-border acquisition · close: 10 days → 4

The accounting infrastructure exists externally. The internal financial operating system doesn't yet. That's the moment I've walked into — in a cross-border acquisition, in a dual-model SaaS+staffing company across 8 countries, in a portfolio of high-growth clients simultaneously. Built from scratch every time.

I've seen this before. I know what's broken. And I know how to fix it. Not because I work with the numbers — because I take the time to understand how the business actually operates, the layers behind the data, and then build the systems that make it trustworthy.

Julieth Ramos Rivera · Head of Finance · Colombia, available US Eastern hours
Julieth
Ramos
Rivera
Location Colombia — Available PST · EST hours Open to remote · US and LATAM