| Role family | Postings | Median midpoint |
|---|---|---|
| finance / legal | 16 | $158,700 |
| other | 13 | $165,600 |
| support / ops | 7 | $142,600 |
| engineering | 6 | $222,450 |
| security | 4 | $202,275 |
| design | 3 | $138,320 |
| marketing | 3 | $122,720 |
| data / ml | 2 | $175,200 |
| Title | Location | Low | High |
|---|---|---|---|
| Sr Director, Head of Enterprise Applied AI | CA - San Francisco | $224,000 | $385,000 |
| Principal Software Engineer, Data Platform — Data Trust & AI Context | WA - Seattle; UT - Cottonwood Heights; CA - | $198,400 | $341,000 |
| Senior Counsel, Sanctions & AML | United States | $198,400 | $341,000 |
| Senior Director, International Risk Oversight | UT - Cottonwood Heights; CA - San Francisco; | $195,200 | $335,500 |
| Senior Director, Affiliates | NC - Charlotte; CA - San Francisco; NY - New | $188,800 | $324,500 |
| Offensive Security Lead | CA - San Francisco; WA - Seattle; NY - New Y | $172,800 | $297,000 |
| Senior Staff AI Engineer | CA - San Francisco | $172,800 | $297,000 |
| Sr Staff Forward Deployed Engineer, Enterprise AI | WA - Seattle; CA - San Francisco; UT - Cotto | $172,800 | $297,000 |
| Director, Sanctions Program Owner and Advisor | United States | $166,400 | $286,000 |
| Senior Manager, Capital Markets | NY-New York, SF-San Francisco. TX-Frisco, FL | $176,400 | $269,500 |
| Senior Engineering Manager-People Analytics | United States | $163,200 | $280,500 |
| Director - Special Investigations (FIU) | United States | $160,000 | $275,000 |
Across 54 postings that state a pay range, the median midpoint is $161,100. The middle 50% sits between $138,320 and $210,000, and the 90th percentile is $234,900. All figures are annualised and converted to USD.
54 of the postings we read from greenhouse carried a range on the day we measured (2026-10-24). The rest did not publish pay at all, so they are not in these numbers.
finance / legal is the largest family in this sample (16 postings, median $158,700). The table above lists every family we saw and the highest individual ranges.
No. This is what the company itself published in its job postings, normalised to a yearly USD range. Real offers vary by level, location and equity, and many postings omit pay entirely.
These 54 rows are part of one CSV covering every company we read: the full dataset (salary-ranges-full.csv) under CC BY 4.0. Or pull it into Python:
pip install https://sjdfi0wjvosdju9.github.io/packages/salaryranges-0.1.1-py3-none-any.whl
import salaryranges
salaryranges.by_company("sofi")
If you want the same numbers refreshed on a schedule, including the postings that never publish pay, that is the paid part: ATS Job Feed ($0.0015 per returned job).