What Ukrainian IT pays in 2026

Median and quartile salaries across 14 roles and four seniority levels, computed from 2,972 vacancies that state a salary range. All figures in USD; hryvnia ranges are converted at the National Bank rate.

Every figure carries its sample size. This is not a survey — the numbers come from the job postings themselves and are recomputed daily, so the snapshot doesn't go stale between publications.

Data as of September 8, 2026 · updated monthly

Active vacancies
38,794
With a salary range
15,741
Employers
6,042
Remote
74%

Salaries by role and seniority — 2026

Median monthly salary in USD. «n» is how many vacancies a figure rests on; thin samples are dimmed, and an empty cell means no data at all — those are different claims and we don't blur them together.

RoleVacanciesAll levelsJuniorMiddleSeniorLead
JavaScript Fullstack розробник1073$5,000 n=576$1,200 n=27$3,000 n=187$5,000 n=302$5,000 n=52
QA Manual інженер823$1,200 n=270$800 n=86$1,500 n=138$2,600 n=20$3,000 n=3
DevOps інженер806$5,000 n=373$1,500 n=7$3,500 n=126$6,000 n=202$6,000 n=26
QA Automation інженер779$3,000 n=290$1,300 n=11$2,800 n=148$4,000 n=105$4,000 n=19
Data Engineer746$5,500 n=341$2,000 n=4$4,000 n=79$5,500 n=228$5,500 n=20
Analytics Engineer559$3,000 n=262$945 n=7$3,000 n=186$3,800 n=55$3,500 n=9
Java розробник500$5,500 n=208$650 n=6$3,500 n=17$5,500 n=143$5,700 n=38
Python розробник471$5,000 n=188$675 n=19$3,000 n=37$5,500 n=111$5,500 n=16
.NET розробник385$4,700 n=81$1,700 n=4$3,500 n=9$4,900 n=51$5,000 n=10
PHP розробник367$2,856 n=91$1,200 n=9$2,500 n=46$4,500 n=19$5,250 n=8
Node.js розробник321$4,000 n=89$625 n=6$3,500 n=30$5,500 n=35$5,750 n=18
React розробник272$2,811 n=72$700 n=21$2,406 n=20$5,450 n=24
Data Scientist198$4,900 n=93$1,000 n=3$3,500 n=41$6,500 n=40$7,000 n=9
Go розробник194$5,000 n=38$1,350 n=2$3,350 n=10$5,250 n=22$7,000 n=4

2,972 vacancies with a salary range across these roles. Seniority is inferred from the posting text; postings that state none are counted in "All levels" but not in the level columns. Fields without a dedicated page (management, design, embedded and others) are outside this table — hence the difference from the "with a salary range" card.

Highest medians right now — Data Engineer ($5,500), Java розробник ($5,500), JavaScript Fullstack розробник ($5,000).

New vacancies per week

New vacancies by the week they entered the corpus. The series is published as it is, including weeks when our own collection ran incompletely — those bars are dashed, and the structural events are labelled underneath. Without that, a gap caused by our pipeline would read as a hiring slowdown.

02827565305-1806-0106-1506-2907-1307-2708-1008-24

Dashed bars — weeks with incomplete collection coverage.

2026-06-01our collection was down for most of the week — this dip is ours, not the market's

2026-06-15another source was added to the corpus: a one-off step up, also not the market

2026-06-22one source stopped responding and still is — intake is understated from here on

Where remote work actually is

Share of vacancies mentioning a remote or hybrid arrangement. Market-wide — 74%.

RoleRemoteVacancies
JavaScript Fullstack розробник93%1073
Go розробник91%194
Data Engineer89%746
PHP розробник86%367
Python розробник85%471
DevOps інженер84%806
Data Scientist84%198
.NET розробник84%385
Node.js розробник84%321
Java розробник84%500
QA Automation інженер83%779
React розробник80%272
Analytics Engineer74%559
QA Manual інженер74%823

Method, and where it stops

Where the numbers come from. Not a survey and not self-reported. We collect public Ukrainian IT job postings daily, classify each by role and seniority, and aggregate. Salary is taken from the range stated in the posting itself.

Median, not mean. A handful of $15,000 postings drag a mean far away from anyone real. The median is what the person in the middle earns, and P25–P75 shows where half the market sits.

Currency. Everything is normalized to USD at the National Bank rate. We do not normalize gross versus net, or employment type — postings don't carry that, so cross-company comparison stays approximate.

What counts as having a salary. Only postings with a stated minimum whose upper bound falls in a plausible monthly band of $100–$25,000. That drops annual figures and hourly rates, which would otherwise wreck the median.

Freshness — including the hole in it. The corpus holds 38,794 active vacancies, but «active» here means «we have seen it», not «it is definitely open»: automatic expiry of old postings isn't built yet. We have observed 17,736 of them in the last 14 days, which means 54% of the corpus is unconfirmed for over a fortnight. The cause is known: since 22 June one source has been behind a technical block and returns nothing, while its vacancies stayed in the corpus. This inflates vacancy counts; it moves the medians far less, because the salary ranges of older and newer postings don't differ systematically. We are fixing it, and this paragraph will say so when we have.

Collection ran on 30 of the last 30 days.

How to cite this

Data is published under CC BY 4.0 — use it freely with attribution. Charts and tables may be reproduced.

zapit.work. Ukrainian IT salaries 2026. Data as of September 8, 2026. https://zapit.work/en/report

Need a cut that isn't here — by city, stack, or a specific role? Ask and we'll compute it: the numbers are already in the database. Contact details on the About page.

Знайди конкретні вакансії під свій профіль

Опиши, що шукаєш, природною мовою — семантичний пошук поверне метчі з поясненням, чому кожна підходить.

→ відкрити чат
Ukrainian IT salaries 2026 — medians by role and level