Максим Ільїн вивчав програмування в університеті, але тоді воно йому не дуже сподобалось. Тож він вісім років пропрацював у продажах, аж поки не набридло. Саме тоді приятель порадив йому прочитати книжку з Erlang. Це була любов з першого погляду.

Зараз Максим – Head of Engineering Core Services у компанії Favbet Tech. Він пише на Erlang вже 12 років і нічого не планує змінювати. Чим цікава саме ця мова, скільки платять за її знання, і які в неї є перспективи розвитку в Україні, Максим Ільїн розповідає в партнерському матеріалі з Favbet Tech.

Чому Erlang? Перспективи розвитку та застосування на ринку

Erlang – це функційна мова програмуванняНовачки швидко зростають, зарплати доходять до 276 тис. гривень. Erlang-розробник - про свій розвиток і карʼєруНовачки швидко зростають, зарплати доходять до 276 тис. гривень. Erlang-розробник - про свій розвиток і карʼєрупідхід до програмування, в якому єдиною дією є виклик функції. Її розробила у 1987 році компанія Ericsson, щоб використовувати у сфері телекомунікацій. Згодом Erlang набув популярності й в інших сферах, оскільки він орієнтований на розробку високонавантажених систем, а також дуже добре працює з паралельними процесами.

Розглянемо, що це означає, на прикладі сфери iGaming.

За хвилину платформа Favbet обробляє сотні тисяч операцій – наприклад, ставок. Кожну треба пропрацювати: розрахувати, зберегти в базу даних, відправити нотифікації іншим компонентам платформи. Тож можемо говорити про високе навантаження, оскільки є велика кількість подій


Новачки швидко зростають, зарплати доходять до 276 тис. гривень. Erlang-розробник - про свій розвиток і карʼєру

Максим Ільїн

Head of Engineering Core Services у компанії Favbet Tech

В банкінгу так само: кожен платіж – це окрема операція, або подія. Таких подій дуже багато та усі вони обробляються паралельно. Схожа ситуація в домені телекомунікацій, а також інтернету речей (IoT).

Серед світових продуктів на Erlang написана серверна частина WhatsApp, бекенд чату Facebook, сервіси SMS та аутентифікації T-Mobile. В Україні продуктів в зазначених вище доменах менше, хоча мову використовує, наприклад, PrivatBank. Але чим більше буде українських цифрових банків, месенджерів та смартдевайсів, тим популярнішим ставатиме Erlang. Перспективи для розвитку є: деякі стартапи, такі як Pibox, Scrapinghub, Klarna та багато інших обрали для себе цю мову вже на старті.

Як працює Erlang: переваги та недоліки мови

Favbet Tech використовували Erlang ще тоді, коли написані на PHP та Python системи показували слабкий результат під навантаженнями, які постійно збільшувалось. На цю мову переписали 90% core-сервісів. Завдяки цьому серверних ресурсів стали витрачати у 10, а інколи у 20 разів менше. Також стали швидше реалізовувати нові компоненти платформи. Як це стало можливим?

«Erlang побудований на взаємодії між процесами. У нього є внутрішньо реалізована віртуальна машина з унікальною фічею, яка називається “модель акторів”, – легковагі процеси, які можуть зберігати, обчислювати та обмінюватись інформацією», – пояснює Максим Ільїн.

Результат: програми виходять досить легковагі. Тобто не витрачають багато ресурсів сервера та можуть швидко обмінюватися даними та обробляти їх – в паралельних потоках. Це стало ще більш актуально при появі мультиядерних процесорів.

Щобільше, в останніх версіях Erlang додали інтеграцію JIT-компілятора. Це збільшило продуктивність його й так доволі ефективної, віртуальної машини на 30-40%.

Крім того, Erlang – високорівнева мова програмування, тож і програми на ньому можна писати швидше і дешевше. Таким чином, маючи однакове з конкурентами число користувачів, Favbet Tech використовує менше серверів та менше інженерів для їх обслуговування.

Але, звичайно, цей інструмент – не панацея для всього. Наприклад, Favbet Tech залишили інтеграції з зовнішніми платформами, написаними на PHP, Python та NodeJS. Навантаження наразі там таке, що використовувати Erlang немає сенсу. Крім того, Erlang використовується тільки для бекенду.

Ще мова не підходить для складних математичних обчислень. Для таких задач краще використовувати C++ або Rust, які також закривають потреби низькорівневої розробки: реалізацію драйверів, складних математичних обчислень тощо. В закордонних компаніях часто шукають фахівців, які мають досвід роботи з Erlang в поєднанні з низькорівневими мовами таких як Rust та C++.

Чи важко вивчити Erlang

У Максима Ільїна є технічна освіта, але, за його словами, вона йому не дуже допомогла у вивченні Erlang. Скоріше, стало в пригоді те, що хлопець у цілому орієнтувався у технологіях. Зокрема, він мав уявлення, як працює операційна система чи база даних. Тож Максим вважає, що мову можна опанувати з нуля, навіть самостійно, оскільки в інтернеті багато доступної інформації. Починати можна з офіційного сайту Erlang, де є приклади коду.

Втім, самостійне вивчення може розтягнутися на роки, а ось поради досвідчених колег значно прискорять цей процес. Саме тому Favbet Tech запустив свої курси для новачків.

Favbet Tech набирали студентів-ерлангістів. Але тоді набір був радше за потребою: не вистачає фахівців на ринку – пора запускати курси. Зараз же планують робити це регулярно. Favbet Tech вже розробляє програму нового потоку, яка включить більше практики і буде розрахована на три місяці замість двох.  

Спочатку курси були безоплатними, але оскільки багато людей кидали їх після 1-2 занять, в Favbet Tech стали брати невелику платню – для мотивації.

Мотивація – важливий фактор й при відборі студентів. Більший шанс потрапити на навчання для того, хто зміг самостійно опанувати якісь безплатні курси, або читав книги на тему.

Звичайно, якщо в людини є хоча б початковий досвід програмування іншою мовою, це перевага – їй буде простіше у навчанні. Найлегше буде перейти у професію фахівцям з іншої бекенд мови, як-от PHP, Go чи Java. Умовний сініор бекенд розробник може світчнутися в Erlang на мідл-позицію після пари місяців навчання, оскільки в нього будуть практичні знання з архітектури та алгоритмів.

Новачки швидко зростають, зарплати доходять до 276 тис. гривень. Erlang-розробник - про свій розвиток і карʼєру

Максим Ільїн

Head of Engineering Core Services у компанії Favbet Tech

Новачки ж з нуля зазвичай доростають до джуна приблизно за рік, а до мідла за 4-5. Але бувають виключення. Наприклад, в Favbet Tech були два дуже мотивованих студента, які стали мідлами за 2 роки, а починали з трейні. Зараз вони продовжують розвиватися в компанії.

Erlang-команда Favbet Tech та скільки може заробляти ерлангіст

На роботу до Favbet Tech після внутрішніх курсів потрапляють від 5% до 10% студентів. Коли відбирають людей, дивляться:

  • чи виконані усі домашні завдання та наскільки якісно;
  • чи зацікавлена людина в технології та розвитку.
Минулого року завдяки курсам найняли близько 10 нових людей. Наразі в Favbet Tech 40 фахівців з технології, які розподілені по 7 напрямкам: платіжним системам, ставкам тощо.

Ієрархія стандартна: є тімлід, досвідчені та новачки. З цікавого: кількість новачків переважає, їх близько 70%. Новачки можуть доволі швидко зростати, так як вони мають змогу працювати з різноманітними платформами, а досвідчені регулярно діляться своїм великим досвідом розробки високонавантажених систем.  

До речі, в Telegram є українська спільнота ерлангістів, де теж можна комунікувати з розробниками, які мають досить різноманітний досвід.

Через дефіцит фахівців в Erlang-спеціалістів є можливість отримати більше середнього цінника на ринку, каже Максим. За даними DOU, медіана для Senior Developer складає приблизно 187 тис., натомість сініор-ерлангіст може дійти й до $7000 що складає приблизно 276 тис. гривень на місяць. Світові компанії оцінюють ерлангістів ще вище: за результатами опитування StackOverflow у 2023, Erlang став другою найбільш високооплачуваною мовою програмування, з середньої річною зарплатою в $99 492, що складає приблизно 3 млн 931 тис. гривень.

Новачки швидко зростають, зарплати доходять до 276 тис. гривень. Erlang-розробник - про свій розвиток і карʼєру

Візуальне оформлення статті здійснено командою ITC.UA

 

Повідомити про помилку

Текст, який буде надіслано нашим редакторам: