Data & Methodology

How We Compute Statistics

Dev Remotely statistics are computed from aggregated public job postings. Every 4 hours, our compute engine processes all published jobs within a 90-day rolling window, grouped by skill, location, company, job type, experience level, and remote status.

Salary Normalization

All salary figures are normalized to annual amounts: hourly rates are multiplied by 2,080 (40 hrs/week x 52 weeks), and monthly rates by 12. Salary data uses the midpoint of min/max ranges when both are available.

Anti-Gaming Measures

  • Top and bottom 5% salary outliers are clipped
  • Per-company velocity cap of 10 jobs per aggregate
  • Salary figures use the dominant currency of each segment (mixed-currency noise excluded)

Confidence Levels

  • High: 100+ data points, primarily employer-posted
  • Medium: 30-99 data points
  • Low: 20-29 data points (minimum threshold)

Snapshot Policy

Immutable quarterly snapshots are created using UTC boundaries (e.g., Q1 ends March 31 23:59:59 UTC). Snapshots preserve historical data for trend analysis.

Source Composition

Data is sourced from multiple job boards and employer direct postings. Each source is classified by kind (employer-posted, imported, user-generated) with per-field confidence scoring that factors into aggregate confidence.

How to Cite

All statistics pages include a citation block with the recommended format. Data is available under CC BY 4.0. A JSON API is available at /api/stats/[slug] for programmatic access.