Чому програмісти постійно ходять такі щасливі? Відповідь на це питання проста і приголомшуюча: тому що вони працюють на улюбленій роботі і у них купа грошей.
Ласкаво просимо у світ програмістів.
Зарплата програміста
Хочу розказати про зарплати програмістів. Як, власне, справи із зарплатою, куди краще йти працювати, а куди – ні. Якщо ви не програміст і спробуєте самостійно розібратися в цій темі, то можете отримати набір дуже суперечливих даних.
Уся справа в тому, що головним фактором, який впливає на зарплату програміста, є не його кваліфікація, а місце роботи. Іноді, за однакової кваліфікації різниця між хорошим і поганим місцем може досягати 2-10 разів(!)
У кожний конкретний момент часу ваша кваліфікація постійна. Ви не можете за місяць стати досвідченішим у два рази і отримувати у два рази більше. А от змінити за місяць роботу і отримувати у два рази більше цілком можете. Давайте ж з'ясуємо, де найкраще працювати.
Ось три фактори, які дуже сильно впливають на рівень зарплат у компаніях:
1) Чи є розробка ПЗ основним бізнесом компанії.
2) Чи орієнтована компанія на міжнародний ринок чи на внутрішній.
3) Власником фірми є західна компанія чи вітчизняна.
Зверніть увагу, що місто, у якому ви живете, не грає вирішальної ролі. Тобто якщо ви отримуєте у 10 разів менше, живучи у Дрездені, ніж ваш знайомий у Нью-Йорку, значить, у справу вступили вище перераховані фактори.
Конкретні цифри
Складно привести якісь конкретні цифри для всього світу. Описуємо ситуацію у Східній Європі, яка загалом справедлива для всіх країн, де більш-менш розвинений IT-outsource/outstaff.
Ось скільки може заробляти Java Senior Developer з п’ятьма роками досвіду роботи, залежно від рівня компанії, в якій працює:
| Рівень | Зарплата на місяць | Опис |
|---|---|---|
| 1 | $200 — $500 | На самому низу знаходяться фірми, де ІТ — це непрофільний напрямок бізнесу компанії, замовник — внутрішній ринок, а власник — держава. Наприклад, ІТ-відділ у податковій чи іншій державній організації. |
| 2 | $500 — $1500 | Нижче середнього знаходяться ІТ-відділи різних недержавних структур: банків тощо. |
| 3 | $1,000 — $2,500 | Середній рівень — це фірми, які займаються розробкою ПЗ. |
| 4 | $3,000 — $4,000 | Вище середнього — це фірми, які займаються розробкою ПЗ, і замовники у них із заходу. |
| 5 | $4,000 — $5,000 | На самому верху — фірми, що займаються розробкою ПЗ, замовники у них із заходу, і власник теж. Їх небагато. Відкриті вакансії бувають нечасто, і потрапити туди непросто. Але вони існують. |
Що найцікавіше в сформованій ситуації?
Половина всіх програмістів працює у фірмах рівня 1 і 2.
Хочете дізнатися, в чому підступ?
Є сотні відкритих вакансій програмістів у фірмах рівня 3 і 4. Ці компанії готові запропонувати більш високі зарплати і зазвичай — набагато кращі умови праці.
Ситуація з життя: є два Java Junior'а. Один із них йде працювати за $100 на місяць (у компанію рівня 1), а другий — за $1,000 на місяць (рівень 4). Для чого отримувати менше?
Чого можна досягти, якщо не тупити
Якщо ви будете постійно займатися саморозвитком у сфері програмування, ваша зарплата, починаючи з сьогоднішнього дня, буде змінюватися приблизно так (+/- кілька сотень доларів залежно від міста, в якому ви працюєте):
План
0-3 місяці (Учень)
Ви знаєте про програмування дуже мало. Може, вчили в школі та/або університеті, але дуже поверхнево.
Ваше завдання — вчитися програмуванню і вивчати Java.
Ваша мета — влаштуватися на роботу Java Junior’ом в компанію не нижче 3-го рівня.
Перші три місяці в плані ви нічого не отримуєте, бо просто вивчаєте програмування. У майбутньому, коли у вас буде сім'я і купа кредитів, змінити спеціалізацію буде набагато складніше. Щоб виправити помилку, вам знадобиться відкласти гроші на рік нормального життя. Не робіть дурних помилок.
3-15 місяців (Java Junior Developer)
Ви вже працюєте програмістом, і ваш досвід зростає з кожним днем. Не розслабляйтеся. Вам ще багато чого доведеться зробити, щоб можна було почивати на лаврах.
Ваше завдання — вивчати технології, які знадобляться вам, як Middle розробнику. Які саме технології? Світ змінюється. Зараз нарадимо, а життя все змінить. Знайдіть в Інтернеті кілька вакансій і подивіться, що для них потрібно. Обов'язково прочитайте книгу Брюса Еккеля «Філософія Java».
Ваша мета в перший рік роботи Java Junior’ом — вирости до рівня Java Middle. Ніхто не каже, що це дуже легко, але цілком можливо для цілеспрямованої людини. Це одразу дасть стрибок ЗП до півтори тисячі.
2-й рік роботи програмістом (Java Middle Developer, level 1)
Ви добре попрацювали минулого року, і тепер ви — Java Middle Developer. З зарплатою в півтори тисячі можна нормально жити. На роботі вам дають серйозні завдання, і ваш досвід зростає, як на дріжджах. Ви виростете до Java Senior Developer за два-три роки. Немає сенсу прискорювати цей процес. Сильного росту в зарплаті ви все одно не отримаєте.
Ваше завдання — вивчити патерни проектування, прочитати «Досконалий код» МакКоннелла. Покращуйте якість свого коду і навички роботи в команді. Можна взяти за правило щотижня читати одну книгу з ІТ. Тоді через рік ви будете на 50 книг розумніші за інших. Не варто відкладати це на потім: вільного часу у вас більше не стане. Цілком ймовірно, що у вас з'явиться сім'я, або вона поповниться, якщо вже є.
Ваша мета — вибрати кілька технологій, в яких ви будете спеціалізуватися як Senior-розробник. Усього вам все одно не вивчити. А бути гуру в невеликій області — це хороше рішення.
3-й рік роботи програмістом (Java Middle Developer, level 2)
Ви вже досвідчений Middle розробник і думаєте стати Senior Developer. Це приємно і престижно. Ваша зарплата перевищує 2 тисячі доларів (дані для Києва). З цього моменту попит на таких професіоналів як ви перевищує пропозицію. Ви завжди зможете влаштуватися на роботу за пару днів, і навряд чи будете отримувати менше, ніж зараз. Якщо, звісно, не зробите якусь дурницю.
Ваше завдання — продовжити вивчення обраних технологій. Працюйте краще. Не заради роботодавця, а заради себе. Прагніть до проєктів із перспективними технологіями (такими як Big Data, на момент написання цієї статті). Ви все одно проводите в офісі 8 годин на день, то чому б не отримати за це трохи більше грошей і, що набагато важливіше, цінний досвід, який вам ще знадобиться.
Ваша мета — змінити роботу. Хороший колектив є скрізь. Ви зіткнетеся з новими проєктами і технологіями. Не варто занадто рано прив'язуватися до стільця. Якщо ви все ще працюєте в компанії третього рівня: подумайте про перехід на четвертий рівень. П'ятий рівень, хоч і дуже привабливий, поки недосяжний.
4-й рік роботи програмістом (Java Senior Developer, level 1)
Ви стали Senior розробником. Вітаю. Можливо, стали ним незаслужено, і ви це відчуваєте. Все одно вітаю. Не важливо, чи гідні ви зараз вашої посади, головне щоб ви стали гідні її в майбутньому. Згодьтеся, краще спочатку отримати гарну роботу, а через рік дорости до неї, ніж дорости до гарної посади і чекати її ще рік.
Сподіваюся, ви не забули мою пораду і читали по одній книзі на тиждень — тепер вашим можливостям позаздрить будь-який студент. Вірніше, він готовий молитися на них. Подумайте: у вас серйозна зарплата, яка наближається до трьох тисяч доларів. Швидше за все, ви ще молоді. Увесь світ біля ваших ніг.
Ваше завдання — ще раз переглянути обрані вами технології. Можливо, вам потрібно змінити спеціалізацію. Світ змінився, технології змінилися, та й знань у вас за два останні роки побільшало. Те, на чому ви зараз зупинитеся, стане вашим вибором на кілька найближчих років. Саме час обирати улюблені технології.
Ваша мета — вибрати напрямок, в якому ви могли би розвиватися далі. Їх дуже багато, усіх варіантів ніхто не перерахує, але вибір потрібно зробити прямо зараз. Якщо сьогодні ви трохи зміните своє теперішнє, це призведе до великих змін у вашому майбутньому.
5-й рік роботи програмістом (Java Senior Developer, level 2)
Ви визначилися з майбутнім і працюєте над втіленням вашої мрії. Правильно обране напрямок у поєднанні з бажанням рухатися вперед — і результат не змусить себе чекати. Вітаю. Ми раді, що ще одним щасливим стало більше.
Є одна мудра істина. Люди часто переоцінюють те, чого можна домогтися за один рік, і недооцінюють, чого можна домогтися за п'ять років. Огляньтеся на п'ять років назад. Так воно і є.
Ваше завдання — не приймати дурних рішень і не піддаватися ліні.
Ваша мета — вибрати напрямок і рухатися далі. А ви думали це кінець? Згадайте свій випускний клас. Це не кінець, це лише початок.
Майбутня спеціалізація
Ви можете розвиватися як технічний спеціаліст (верхня гілка), як управлінець (нижня гілка) або як найманий професіонал/незалежний консультант (середня гілка). Все залежить від ваших вподобань.
Кар’єра програміста
Професія програміста відрізняється від інших професій. Тут немає необхідності робити кар’єру менеджера, щоб добре заробляти. Часто буває так, що старший програміст отримує більше, ніж його начальник-менеджер. Чим більше ви набираєтеся досвіду, тим більше ваші стосунки з начальством переходять від точки «начальник-робітник» до стосунків типу «кінозірка і її менеджер». Зарозумілі, впевнені у собі програмісти вибирають і проєкти, і вакансії. Порадіємо за своїх.
Що ж потрібно, щоб стати таким висококласним і затребуваним у світі програмістом? Ви повинні мати великий досвід у найновіших і найзатребуваніших технологіях. Як цього досягти? Відповідь нижче.
Після того, як ви вперше влаштувалися працювати програмістом, з вами починають відбуватися дві речі, які, як не дивно, не завжди кидаються в очі.
1. Ви починаєте швидко набиратися досвіду роботи в реальних проєктах. Один рік досвіду роботи програмістом може дати вам більше знань і навичок у вашій спеціальності, ніж 5 років університету. Досвід — це настільки вагомий показник, що в IT-вакансіях часто пишуть «потрібен Java-програміст із трьома роками досвіду роботи».
2. Ви по 8 годин на день вивчаєте нові технології, а вам за це ще й щедро платять. Значення цього фактора важко переоцінити. У деяких випадках отримані навички настільки важливі, що задля їх отримання можна працювати безкоштовно, а то й доплачувати. Якщо ви грамотно обираєте проєкти, на яких погоджуєтеся працювати, вас чекає карколомна кар’єра програміста.
Однак що ж обрати?
Часто, якщо ви не знаєте, які технології будуть вам корисні, ви починаєте обирати технології за принципом «подобається, не подобається» або «модно, не модно». Тут як пощастить. Тож краще знати заздалегідь, куди ви хочете потрапити.
Шляхів розвитку програміста дуже багато, тому для спрощення виділимо кілька з них і опишемо своє бачення ситуації. Не слід сприймати цю схему як жорстку позицію, швидше як спрощений погляд на речі з метою внести хоч якусь ясність.
Двохсотлітній програміст.
Якщо вам найбільше подобається програмувати, то ваш шлях — Senior Developer, потім Tech Lead Developer і архітектор. Також ви можете просто працювати програмістом років 50. Часто зарплати старших програмістів та техлідів перевищують зарплати їхніх менеджерів. Не прогадаєте.
Менеджер. Тобі пощастило, ти не такий як усі.
Ви перейшли на сторону «ворога». Жартую. Якщо у вас проявилися неабиякі організаторські здібності, то ваш шлях — Team Lead, а потім Project Manager. Це дасть вам шанс стати директором і допоможе при відкритті власної справи. Ви ж цього хочете, правда?
Вкрасти трактор.
Якщо ви вже завели сім’ю та дітей, то, можливо, ви хочете тихого і безбідного життя в країні зі стабільною економікою. Замислюєтесь над переїздом/імміграцією до Канади, США, Швейцарії або навіть Австралії. У вас є чудові навички і затребувана професія. Вам не доведеться починати з мийника посуду. А, наприклад, із Senior Java Developer. Та ще й, мабуть, на велику зарплату. Не так уже й погано.
Подивитися весь світ, крім Парижа, і не померти.
У вас ще немає сім’ї, і ви хочете помандрувати. Upwork — ваше все. Знайдіть собі замовника, домовтеся з ним про рейти — від $20/год, беріть ноутбук і вперед. Вашої зарплати має вистачити, щоб нормально жити в будь-якій країні світу. Чому б не приступити до виконання своєї мрії прямо зараз?
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ