Dataset snapshot: January 5, 2026
Tracy Phillips, CodeSubmitBy Tracy Phillips | CodeSubmit Team

Software Engineer Salary by Country

Compare software engineer salary figures in USD across 27 countries, with breakdowns by region, experience level, city, and programming language.

Salaries by Region and Experience

Filter the 27 countries by region, USD pay tier, and experience level, then open any country card to inspect city and language breakdowns and its modeled 2020 to 2026 curve.

Filter countries

(27 of 27)

United States

#1 Dataset Rank

$110,140
Annual Salary
Modeled curve
Junior:$69,354
Senior:$104,188
top
Tier

Top Cities

San Jose$167,420
San Francisco$158,320
Seattle$148,220

Top Languages

Go$120,577
Ruby$119,558
Python$114,904

Switzerland

#2 Dataset Rank

$97,518
Annual Salary
Modeled curve
Junior:$89,643
Senior:$127,693
top
Tier

Top Cities

Zurich$110,123

Top Languages

SQL$108,868
Go$108,827
Rust$108,308

Israel

#3 Dataset Rank

$71,559
Annual Salary
Modeled curve
Junior:$69,851
Senior:$114,751
top
Tier

Top Cities

Tel Aviv$90,788

Top Languages

Go$109,702
Python$83,369
Android$78,558

Denmark

#4 Dataset Rank

$63,680
Annual Salary
Modeled curve
Junior:$65,774
Senior:$89,273
high
Tier

Top Cities

Copenhagen$78,000
Aarhus$68,000

Top Languages

Python$102,768
Java$102,487
Go$93,109

Canada

#5 Dataset Rank

$61,680
Annual Salary
Modeled curve
Junior:$51,183
Senior:$73,184
high
Tier

Top Cities

Toronto$65,197
Vancouver$64,244
Montreal$58,246

Top Languages

Go$71,525
iOS$70,797
Ruby$70,206

Norway

#6 Dataset Rank

$57,013
Annual Salary
Modeled curve
Junior:$45,000
Senior:$70,000
high
Tier

Top Cities

Oslo$62,000
Bergen$55,000

Top Languages

Python$62,000
Java$59,000
JavaScript$56,000

Australia

#7 Dataset Rank

$55,640
Annual Salary
Modeled curve
Junior:$45,000
Senior:$68,000
high
Tier

Top Cities

Sydney$58,000
Melbourne$56,563
Brisbane$52,000

Top Languages

Python$58,000
Java$56,000
JavaScript$54,000

United Kingdom

#8 Dataset Rank

$55,275
Annual Salary
Modeled curve
Junior:$38,664
Senior:$77,603
high
Tier

Top Cities

London$73,993
Manchester$52,000
Edinburgh$48,000

Top Languages

Ruby$85,354
Go$79,726
Rust$73,593

Germany

#9 Dataset Rank

$52,275
Annual Salary
Modeled curve
Junior:$51,188
Senior:$78,194
high
Tier

Top Cities

Munich$66,880
Berlin$65,524
Hamburg$62,000

Top Languages

Go$65,533
Ruby$63,616
Rust$62,827

Sweden

#10 Dataset Rank

$50,437
Annual Salary
Modeled curve
Junior:$38,000
Senior:$62,000
medium
Tier

Top Cities

Stockholm$54,000
Gothenburg$48,000

Top Languages

Python$53,000
Java$51,000
JavaScript$49,000

Ireland

#11 Dataset Rank

$48,427
Annual Salary
Modeled curve
Junior:$35,000
Senior:$58,000
medium
Tier

Top Cities

Dublin$55,160
Cork$48,000

Top Languages

Python$55,000
Java$52,000
JavaScript$50,000

Finland

#12 Dataset Rank

$47,850
Annual Salary
Modeled curve
Junior:$35,000
Senior:$58,000
medium
Tier

Top Cities

Helsinki$54,000
Tampere$48,000

Top Languages

Python$53,000
Java$51,000
JavaScript$49,000

Netherlands

#13 Dataset Rank

$45,180
Annual Salary
Modeled curve
Junior:$35,000
Senior:$55,000
medium
Tier

Top Cities

Amsterdam$48,000
Rotterdam$42,000

Top Languages

Python$48,000
Java$46,000
JavaScript$44,000

France

#14 Dataset Rank

$43,849
Annual Salary
Modeled curve
Junior:$36,523
Senior:$59,024
medium
Tier

Top Cities

Paris$50,693

Top Languages

Go$50,622
Ruby$48,581
SQL$47,619

New Zealand

#15 Dataset Rank

$42,399
Annual Salary
Modeled curve
Junior:$32,000
Senior:$52,000
medium
Tier

Top Cities

Auckland$45,000
Wellington$42,000

Top Languages

Python$45,000
Java$43,000
JavaScript$41,000

Singapore

#16 Dataset Rank

$41,864
Annual Salary
Modeled curve
Junior:$32,000
Senior:$52,000
medium
Tier

Top Cities

Singapore$46,074

Top Languages

Python$48,000
Java$46,000
JavaScript$44,000

Argentina

#17 Dataset Rank

$39,898
Annual Salary
Modeled curve
Junior:$25,000
Senior:$48,000
medium
Tier

Top Cities

Buenos Aires$42,000

Top Languages

Python$42,000
Java$40,000
JavaScript$38,000

Japan

#18 Dataset Rank

$36,024
Annual Salary
Modeled curve
Junior:$26,553
Senior:$53,773
medium
Tier

Top Cities

Tokyo$45,552
Osaka$35,000
Kyoto$32,000

Top Languages

iOS$72,194
Ruby$53,128
Go$51,652

China

#19 Dataset Rank

$23,790
Annual Salary
Modeled curve
Junior:$18,000
Senior:$35,000
lower
Tier

Top Cities

Beijing$28,000
Shanghai$26,000
Shenzhen$25,000

Top Languages

Python$25,000
Java$24,000
JavaScript$22,000

Russia

#20 Dataset Rank

$23,737
Annual Salary
Modeled curve
Junior:$15,000
Senior:$32,000
lower
Tier

Top Cities

Moscow$28,000
St. Petersburg$22,000

Top Languages

Python$25,000
Java$24,000
JavaScript$22,000

Poland

#21 Dataset Rank

$22,740
Annual Salary
Modeled curve
Junior:$15,000
Senior:$32,000
lower
Tier

Top Cities

Warsaw$25,000
Krakow$22,000

Top Languages

Python$24,000
Java$23,000
JavaScript$21,000

Ukraine

#22 Dataset Rank

$22,348
Annual Salary
Modeled curve
Junior:$12,000
Senior:$28,000
lower
Tier

Top Cities

Kyiv$25,000
Lviv$20,000

Top Languages

Python$24,000
Java$22,000
JavaScript$20,000

South Africa

#23 Dataset Rank

$19,151
Annual Salary
Modeled curve
Junior:$12,000
Senior:$25,000
lower
Tier

Top Cities

Cape Town$22,000
Johannesburg$20,000

Top Languages

Python$20,000
Java$19,000
JavaScript$18,000

Brazil

#24 Dataset Rank

$11,337
Annual Salary
Modeled curve
Junior:$8,000
Senior:$15,000
lower
Tier

Top Cities

São Paulo$13,000
Rio de Janeiro$11,000

Top Languages

Python$12,000
Java$11,500
JavaScript$10,500

Philippines

#25 Dataset Rank

$7,936
Annual Salary
Modeled curve
Junior:$5,256
Senior:$13,164
lower
Tier

Top Cities

Manila$8,772

Top Languages

Java$10,833
Go$9,928
Python$8,888

India

#26 Dataset Rank

$7,725
Annual Salary
Modeled curve
Junior:$5,488
Senior:$11,999
lower
Tier

Top Cities

Bangalore$10,489
New Delhi$10,211
Pune$7,847

Top Languages

Ruby$12,372
Go$10,446
Java$9,519

Nigeria

#27 Dataset Rank

$7,255
Annual Salary
Modeled curve
Junior:$7,255
Senior:$14,182
lower
Tier

Top Cities

Abuja$5,808

Top Languages

Ruby$12,110
Go$7,266
Python$7,225

Regional Salary Comparisons

Compare average USD figures across regions in this 27-country table before drilling into individual country cards.

North America

The United States tops this 27-country table at a $110,140 average, with California state figures reaching $146,770. Canada ranks fifth in the table, with USD figures sitting below the top US state and metro entries.

Europe

Switzerland records the highest European average in this table at $97,518, followed by Denmark and Norway. Pay gaps remain wide between Western and Eastern European entries, so compare local taxes and living costs alongside the reported USD figures.

Asia & Others

Entries in Asia, South America, and Africa span a wide USD range, from Singapore at rank 16 and Japan's $36k average down to India's $7.7k. Open individual country cards to compare city and seniority figures within each market.

Salaries by Language and Role

The cards below list selected USD reference figures for eight stacks and four country examples. Language coverage varies by country and omits seniority, so check your target country's card directly.

Selected Language Reference Figures

Go, Ruby, iOS, and Python

Go (Golang) $61,427
Ruby $55,847
iOS $54,954
Python $52,318
Static reference figures for these four stacks range from $52,318 to $61,427. Python is listed in all 27 countries, while Go, Ruby, and iOS appear in 12.

Android, SQL, Java, and JavaScript

Android $48,902
SQL $47,020
Java $46,592
JavaScript $45,833
Reference figures for this group span $45,833 to $48,902. Java and JavaScript are listed in all 27 countries, while SQL appears in 12 and Android in 10.

Selected Country Language Examples

🇺🇸 United States
Go listed at $120,577
🇨🇭 Switzerland
SQL listed at $108,868
🇯🇵 Japan
iOS listed at $72,194
🇮🇳 India
Ruby listed at $12,372
Each country card lists a specific subset of languages in USD. These examples show selected entries from four markets; open a country card to see all languages listed there.

Top-Paying Cities in This Table

Top City Entries by Average Pay

🇺🇸 San Jose$167,420
🇺🇸 San Francisco$158,320
🇺🇸 Seattle$148,220
🇨🇭 Zurich$110,123
🇮🇱 Tel Aviv$90,788

Comparing City Figures

San Jose posts the highest city figure in this table at $167,420, followed by San Francisco and Seattle, with Zurich and Tel Aviv leading the non-US entries shown here.

These city figures are reported in USD without adjusting for local purchasing power or specifying whether bonuses and equity are included. Compare housing, local taxes, and living costs alongside any offer's exact pay breakdown.

Outside the United States, major metro entries such as Zurich, Tel Aviv, Copenhagen, and London sit well above their respective national averages in this table.

Within lower-tier USD markets, pay still varies by metro hub: in India, Bangalore ($10,489) and New Delhi outpace Mumbai ($7,454) and the national figure in this dataset.

Salary by Developer Role

The US job-title figures below come from broad US Bureau of Labor Statistics occupational groupings rather than company-level engineering tracks.

US Salary by Job Title

Software Developers & QA$110,140
Web Developers & Programmers$105,310
Computer Occupations$91,250
Broad occupational categories blend entry-level and principal engineers, so check how an employer scopes the role before benchmarking pay.

Comparing Role Scope in Offers

Level and band: ask where the role sits in the employer's internal leveling ladder.
Role scope: confirm system ownership, on-call duties, and cross-team responsibilities.
Pay components: verify how the offer splits base salary, bonus targets, and equity.
Emerging technologies and security specializations offer the highest salary premiums in today's market.

Junior-to-Senior Pay Spreads

Comparing junior and senior figures shows how steeply pay scales with experience in each country entry, though some gaps reflect mixed underlying survey sources.

Selected Junior-to-Senior Spreads

Israel +64%
$69k → $115k
Switzerland +42%
$90k → $128k
United Kingdom +101%
$39k → $78k
Among these three markets, senior figures exceed junior figures by 42% in Switzerland, 64% in Israel, and 101% in the United Kingdom.

Using Seniority Bands in Offers

Comparing seniority bands

In countries where junior and average figures sit close together, such as Germany or Denmark in this table, ask employers how they separate mid-level and senior compensation bands.

Cross-border remote bands

Some distributed employers benchmark pay to a hub city, while many localize offers to your country of residence and tax status. Confirm the location policy early in the hiring process.

Understanding experience premiums is crucial for career planning and relocation decisions.

Entry-Level Pay and Hiring Expectations

Compare the entry-level figures in this table with each country's average and senior numbers, and prepare concrete code and debugging examples for technical screens.

Reading Junior Figures in This Table

Across the 27 countries, entry-level pay ranges from $89,643 in Switzerland, $69,851 in Israel, and $69,354 in the United States down to $5,256 in the Philippines. In several countries, junior pay sits close to the reported national average, while in the United Kingdom ($38,664 junior vs. $77,603 senior) and Japan ($26,553 vs. $53,773) starting pay is roughly half the senior figure.

Check both the junior and average figures for your target country, and verify whether local entry-level offers include statutory bonuses, thirteenth-month pay, or apprenticeship stipends.

Preparing for Entry-Level Technical Screens

Reviewing AI-generated code

If you use coding assistants while practicing, rehearse reading unfamiliar diffs line by line, spotting edge-case bugs, and writing tests that verify the fix.

Debugging and system fundamentals

Practice tracing failing requests or broken state step by step so you can explain data flow, isolate root causes, and talk through trade-offs in your own code.

Evidence of end-to-end ownership

Bring a small project or feature you built end to end, with working tests, a clean commit history, and a clear walkthrough of the decisions you made.

Evaluating International and Remote Offers

Mid-to-High Tier Relocation Hubs

Canada and Australia sit in this table's high pay tier, while Sweden and New Zealand sit in the medium tier. Because this snapshot does not track live job openings or hiring velocity, weigh visa rules, local tax rates, and housing costs alongside the reported USD figures when evaluating offers in these markets.

CanadaAustraliaSwedenNew Zealand

Cross-Border Hiring and Pay Bands

When evaluating a cross-border or remote offer, ask whether pay is benchmarked to your country of residence, a regional tier, or the company's headquarters market. Confirm whether you would be hired through a local legal entity, an employer of record, or an independent contractor agreement, and which currency and benefits apply.

Read the charts

Modeled 2020–2026 Salary Curves

The 2020–2026 charts on each country card are modeled illustrations anchored to that country's average figure, not observed annual survey history. Countries in the same market group share an assumed curve shape.

Card figures versus modeled curves

Use the cards to compare country, city, and seniority figures. Selecting Junior or Senior changes the card amount, while the curve stays anchored to the country average and cannot compare local annual pay shifts.

Checking base pay, bonus, and equity

The modeled curves apply a single percentage weight to each country's average figure and do not track venture funding cycles or separate base pay, equity grants, and bonuses. When comparing an offer against this table, ask for the exact split between base salary, bonus target, and equity.

What static country averages leave out

Each country card displays one average, one junior, and one senior USD figure alongside city and language entries, without sample sizes, survey dates, or employer-type breakdowns. Use the city and seniority numbers on the card to narrow your comparison rather than relying on the national average alone.

Illustrative US policy-rate path, 2020 to 2026

Illustrative rate path (not live FRED data)
0.00%3.06%6.12%2020202120222023202420252026

This chart plots a seven-point illustrative rate path (including an assumed 3.25% value for 2026 rather than an observed year-end rate) to show the general shift from near-zero rates in 2020 and 2021 to higher rates in 2022 and 2023. It is not a live download of the FRED FEDFUNDS series or a test of salary causation.

Placing the illustrative US policy-rate chart beside the modeled country curves provides general macroeconomic context for 2020 through 2026, not evidence that US interest rates or external layoff trackers determined software engineer pay in any of the 27 countries. Neither chart measures current local hiring demand or company-specific pay bands.

Use the country and city figures on this page as a starting point to see how markets rank relative to one another in USD. Before you name a number in an interview, cross-check current local postings, ask whether the role's band is localized or hub-indexed, and compare total compensation (base, bonus, equity, and benefits) in the currency you will spend.

External Macro Sources (Background Context Only)
  • Federal Reserve Board H.15 / FRED (FEDFUNDS). Official US effective federal funds rate series for macro context: fred.stlouisfed.org/series/FEDFUNDS
  • Crunchbase News. The State of Global Venture, 2021 recap: news.crunchbase.com
  • McKinsey (2020). Survey on pandemic-era digital adoption and technology project timelines: mckinsey.com
  • Layoffs.fyi. Public tracker of reported 2022 and 2023 technology-sector layoffs: layoffs.fyi

Practice your next interview

Prepare for the technical screen

Once you know which roles and markets fit your target pay band, rehearse the technical screen with role-specific prompts, code snippets, and written feedback.

Practice your next interview

CodeSubmit research newsletter

Monthly: dev salary trends, hiring-market data, and the tools shifting how engineers work.

Unsubscribe anytime. No spam.