Add * to match any ending: quant* also finds quants and quantitative.
Put quotes around words that must sit next to each other, in that order:
"market making" will not match "making markets".
| ★ | Company | Title | Fit | Location | Mode | Published | Age (d) | Apply by | Last seen |
|---|
Active offers by firm
Structured salaries per firm
Aggregated from salary figures the employers themselves publish (API fields or pay-transparency text in the adverts), re-computed automatically after every scrape. Rows are split per currency — amounts in different currencies are never mixed. Median/min/max are over the disclosed base-salary ranges.
| Firm | Currency | Offers w/ salary | Min | Median | Max | Last updated |
|---|
Salary bands by role family & seniority
Percentiles of the disclosed range midpoints; groups with ≥3 offers, split per currency.
| Job family | Seniority | Currency | Offers | p25 | Median | p75 |
|---|
Best matching job offers
Checking CV…
| Fit | Title | Company | Location | Missing requirements in your CV |
|---|
Gap synthesis against a pool of job offers
A recruiter's honest read on your CV, not against one job but against a pool of them. It reviews the results of your last “Score my matches” run in two groups: strong matches (75%+) and near misses (55-75%), up to 20 offers each. Every weakness links back to the offers that prompted it. Uses your selected CV.
It also widens your search: the near-miss band shows how close you already are to roles you might not have thought to go after.
Closing soon (apply now)
| Deadline | Title | Company | Location |
|---|
Recruiting Trends
Strategic read of a firm's hiring: what it is building, where, and how you fit. Offers are scoped to the firm's quant/markets keyword profile from the scraper config.
Your fit
–
Strategic analysis (AI)
Hiring momentum
–
| Month | New | Closed |
|---|
Compensation (disclosed salaries)
Firm median vs whole-corpus median, per role family & currency.
| Family | Cur | Offers | Firm med | Corpus med | Premium |
|---|
Who they're hiring active offers · shift vs 6 months ago
Market pulse (your slice)
–
| Week | New | Closed |
|---|
Your network strengths
Firms where your LinkedIn contacts work — the warmest doors first. Click a firm to see its offers in the Jobs tab.
| Firm | Contacts | Open offers |
|---|
Repost signals (hard-to-fill roles)
Same title posted multiple times by the same firm — negotiation leverage or a red flag.
| Firm | Title | Postings | First posted | Active |
|---|
My CV
Used by the Insights tab to score how well each offer fits you. Stored encrypted; only you (and the AI model during analyses you trigger) see it. .pdf or .txt, max 5 MB.
Your uploaded versions, newest first. The CV your matches are scored against is chosen from the CV dropdown on the AI Insights → CV Analysis tab; the active one is badged scoring here. View opens the original file (e.g. the PDF); tick show CV analysis result on a row to see the profile the AI extracted from it.
Change password
Import LinkedIn connections
On LinkedIn, click your avatar (upper right) → Settings & Privacy
→ Data privacy → Download your data → Download larger data
archive, then click “Request archive”. Wait a few hours for the
archive, then upload the connections.csv file here.
Import history
| # | Imported at | File | Rows |
|---|
My search criteria (defaults)
These defaults apply to every firm you subscribe to below (unless a firm has its own overrides). You only see job offers that match your criteria; your keywords are also what the scraper searches for at each firm. Comma-separated. Countries are ISO codes (CH, GB, US, …).
Membership
Loading subscription…
Credit balance: – AI searches are charged by actual token usage.
Invoices & receipts
A PDF for each membership payment and credit-pack purchase, newest first.
| Date | Type | Number | Amount |
|---|
Credit history
Every credit added (purchases, grants) and every AI charge on your account, newest first. Balance = credits added − amount spent.
| Date | Type | Description | Amount | Balance after |
|---|
Firm subscriptions
Subscribe to the firms you want scanned for you. Leave the keyword box empty to inherit your defaults above; enter firm-specific keywords to override them for that firm only. The list scrolls — the first ~20 firms show; scroll for the rest.
| Subscribed | Firm | Keywords (override) | Countries |
|---|
Use it on your phone
Add Quantfinance.work to your home screen and it opens like any other app — same account, same jobs, nothing to download.
Delete your account
This erases your CV and everything derived from it — the extracted profile, every fit score, gap analysis and tailored application — plus your imported contacts, saved searches, criteria and firm subscriptions. It cannot be undone.
Kept: your invoices and your credit history, because Swiss accounting law requires us to hold them for ten years. They stay as accounting records and no longer identify you. Any unused AI credit balance is forfeited — spend it first if you want to use it.
Job postings applied
Offers you marked as applied, with the CV version you sent (archived here for your records only — nothing is ever transmitted to any job platform) and the answer received so far. Hover the "Status changed" date for the full history.
| Company | Title | Location | Applied on | Sent CV | Answer | Status changed |
|---|
Scraper controls
How often the scraper visits all firms. Takes effect immediately, no restart needed; survives restarts. Current: –
| Company | Careers URL | Fetcher | Discovery | Active offers | Categories |
|---|
Create user
AI Credits
USD is the native billing cost (providers price tokens in USD). Each money cell shows $ USD on top and € EUR below. Provider cost = what we pay the LLM vendor (recomputed from tokens). Markup = what we add on top = provider cost × margin. Spent (billed) = provider cost + markup = what the user is charged. Balance = credit − spent. EUR = USD × the FX rate below.
| ID | Active | Admin | Provider cost | Markup | Spent (billed) | Credit | Balance | Margin | Subs | Actions |
|---|
Acquisition funnel
Unique visitors at each stage, newest data live. Cookieless — anonymous visitors are counted, not identified.
| Stage | Count | Conv. from top |
|---|
Subscriptions
| Status | Count |
|---|
Feature usage
| Event | Count |
|---|
Sign-in locations (each sign-in, newest first — approximate)
| When | User | Country | City | Duration |
|---|
Site hits (anonymous page views, newest first — approximate location)
| When | Page | Country | City | Visit |
|---|
Per-run detail (each computation, newest first)
| When | User | Process | Model | Duration | Tokens (in / out) | Amount (USD) |
|---|
Filter search detail (each query entered, newest first)
| When | User | Query |
|---|
AI Search detail (each AI search, newest first)
| When | User | Query | Model | Mode | Scope | Results | Cost |
|---|
Provider credit
Remaining house credit per provider. Kimi is live from its API; xAI and Anthropic have no balance API, so they're estimated as your last top-up minus the spend tracked here since then (won't count spend made outside this app). A banner warns when the total — or the currently-used model's provider — drops below $10.
| Provider | In use | Source | Remaining (USD) |
|---|
Record a top-up (xAI / Anthropic only)
Model configuration
Stored in the database and applied live — no deploy needed. Routing decides which model runs each analysis; the model registry sets the vendor prices used for cost reporting.
Default model (used by any analysis not routed below)
AI search (applies to every user's search)
Provider credits & alerts (email when low)
| Provider | Current | Threshold $ | Deposit $ | Billing console |
|---|
Kimi is read live from Moonshot. xAI/Anthropic have no balance API, so they're estimated as your last Deposit minus tracked spend since — re-enter the deposit each time you top up. The authoritative billed amount always lives in each provider's console (linked above). While any balance is below its threshold, an email goes to the address above every hour. Set threshold 0 to disable a provider.
Per-analysis routing
Models & prices (USD per 1M tokens — read-only)
| Model id | Label | Provider | Input $/1M | Output $/1M |
|---|
Providers
| Name | Endpoint | Env keys (comma-separated) |
|---|
House API keys
The actual secret key values that authenticate to the providers configured above (Providers sets the endpoint and env-var name; this is where the key itself goes). Used for all users' AI calls, stored encrypted, and never shown again.
LLM usage
Updates live: the per-run table refreshes automatically whenever any user makes an LLM call.
Figures below are our computed cost — token counts × the vendor prices set in Model configuration → Models & prices above — not the provider's own billed total. The authoritative amount, and each provider's billing console, are under Provider credits & alerts above.
Token consumption & cost (all users, by process)
| Process | Model | Tokens (in / out) | Amount (USD) |
|---|
| # | Started | Trigger | Status | Duration |
|---|