Хто такий PHP Developer і чи житиме ця мова у майбутньому

💡 Усі статті, обговорення, новини для початківців — в одному місці. Приєднуйтесь до Junior спільноти!

PHP — шоста за популярністю мова програмування і 7% айтівців використовують її на роботі. Нині на DOU розміщено 187 вакансій у категорії PHP, а медіанна зарплата цих спеціалістів сягає $2325.

Ми поспілкувалися з PHP-розробниками, щоб детальніше дізнатися про їхню роботу, проєкти та перспективи у цій професії. Всі цитати взяті з їхніх розповідей.

Огляди інших ІТ-спеціальностей — читайте за тегом «Кар’єра в IT».

Що таке PHP і чим займаються спеціалісти в цій галузі

PHP розшифровується як Personal Home Page, але тепер офіційна назва — Hypertext Preprocessor. Це скриптова мова програмування, що найбільше підходить для веброзробки. Історично вона була створена для генерації HTML на стороні вебсервера, і хоча це основна функція, її можливості тільки цим не обмежуються.

Спеціаліст з PHP — це першочергово Back-end розробник. Здебільшого під час розробки використовує популярні фреймворки, як-от Symfony чи Laravel, що забезпечують базову структуру та компоненти для створення вебзастосунків. Вони дають змогу розробнику зосередитись на створенні коду. PHP не обмежує у виборі ніші чи напряму для проєкту, досить часто доводиться мати справу з CMS, CRM, e-learning, e-commerce платформами.

У стартапі або маленькій команді такий розробник може і сайт «підправити», і з базою даних попрацювати, і налаштувати API для мобільного застосунку.

«Часто PHP-розробник — це суперфулстек, бо він самостійно повинен зробити робочий сайт. Від заливання на хостинг або сервер до листування з платіжними системами і під’єднання оплати. Все, що ви бачите в інтернеті, — це роблять PHP-розробники».

У PHP є певна специфіка, яка лімітує сферу його застосування. На відміну від розробника GO, фахівець з PHP не працює над проєктами, які потребують дуже високої продуктивності. Наприклад, якщо потрібно розробити інфраструктурні елементи, які працюють в інтернеті (сервер DNS, скажімо) і які повинні дуже швидко обробляти там запити і віддавати записи доменів. Таке на PHP не пишуть.

Зарплати PHP-спеціалістів

PHP-розробники мають нижчі за середні зарплати серед інших розробників. Junior отримує $800, Middle — $2325, Senior — $4100. Це приблизно на рівні з фахівцями з C# / .NET, проте .NET-сеньйори мають трішки вищу медіанну зарплату.

В літньому опитуванні ми помітили, що зарплати PHP-розробників продовжують знижуватися: -$100 у сеньйорів і -$10 у мідлів. У джунів падіння зупинилося і зарплата лишається без змін.

Динаміка зарплат PHP-розробників



Зарплати PHP-розробників з розподілом за фреймворками та додатковою мовою програмування

Що повинен знати кожен PHP-розробник

  • Синтаксис PHP і як працює інтерпретатор мови. Це важливо, щоб код був продуктивним.
  • Як менеджиться пам’ять в PHP, що таке PHP FPM.
  • Найактуальніші фреймворки — Symfony та Laravel.
  • Бази даних типу MySQL/PostgreSQL/MongoDB. Їх використовують у 90% проєктів.
  • Вебсервери (Nginx).
  • HTML і CSS.
  • Git та Docker.
«Розуміння, як працює пам’ять PHP, дуже важливе. На проєкті часом бувають ситуації, коли було несподівано завершено роботу поду. І потрібно розібратись чому. Це зазвичай проблема не в коді, її не можна побачити з першого погляду. Але якщо знати, як працювати з пам’яттю, можна розуміти, що відбувається її витік».

«Консоль та IDE — це те, що бачать PHP-розробники протягом 90% свого робочого часу. Ще по 5% займає браузер і IDE. За специфікою завдань усе залежить від продукту/проєкту. Якщо продукт у сапорті, то більшість завдань — це все-таки баги. Якщо ж активна розробка, то є чимало цікавих фіч, які покривають рівні від бази даних до обробки та виведення інформації».

Які навички потрібні новачку для старту в професії

  • Знати базово PHP та основи ООП.
  • Знати, як влаштований інтернет, основи роботи серверів, http/https-протоколи.
  • Вміти працювати з базами даних — принаймні розуміти, як робити прості запити (для початку MySQL).
  • HTML/CSS/JavaScript — щоб не губитися, коли мова про Front-end.
  • Вміти працювати з Git.
  • Знати основи одного з фреймворків — Laravel, Symfony.
«Раджу новачкам дивитися в бік Symfony, бо цей фреймворк більш гнучкий, ніж Laravel. І він частіше використовується у великих застосунках. На відміну від Laravel, Symfony підштовхує до правильних парадигм проєктувань. Хоч Laravel і простіший для новачків, але з ним легше наробити помилок у дизайні».

«Думаю, для початківців є важливим уміння правильно гуглити. Це може допомогти на 50% закрити завдання. Звісно, немає готових рішень, які можна просто скопіювати, завдання бізнесу індивідуальні. Але нагуглити щось та адаптувати під себе — цілком реально».

Якщо говорити про знання англійської для новачків, то думки фахівців розділилися. Одні зазначають, що вистачить елементарного рівня для базової комунікації з іноземною командою. Інші ж наполягають, що отримувати нові знання варто лише з оригінальних джерел, а не перекладів.

«Для роботи в українській компанії вистачить рівня А1. У нас, наприклад, вся документація українською, бо ми не співпрацюємо з іноземними фахівцями. Я використовую англійську, щоб залишати коментарі в коді».

«Я б ніколи не радив читати документацію в перекладі. Треба могти принаймні зі словником навчатися. Це важливо, щоб правильно розуміти терміни в певному контексті. Наприклад, два різні терміни англійською можуть перекладатись одним українським словом».

«Англійська нині всюди, в аутсорсингових компаніях вона важлива для спілкування в команді. Бо на вищому рівні комунікацію веде лід або менеджер, який є ланкою між джуном і менеджментом з боку замовника. Тому джуніору вистачить рівня В1, на мою думку. Якщо ж у вас нижчий рівень, варто на момент пошуку роботи його підтягувати. Щоб на співбесіді ви могли сказати, що вже покращуєте свою англійську».

Плюси та мінуси професії PHP Developer

Труднощі

Як і будь-який інший розробник, PHP-спеціаліст може працювати з чужим незрозумілим кодом. І йому доведеться розбиратися в ньому самостійно. Також PHP-розробники можуть стикатися з певним поблажливим ставленням з боку колег. Мовляв, PHP вже відмирає, престижніше працювати з C++ або Java.

«Я стикався з певною стигматизацією PHP-шників у спільноті. Типу якщо кодиш на PHP, ти не „тру програміст“, а ось на Java — тру. На захист можу сказати, що набагато важливішими є знання і професіоналізм фахівця, ніж конкретна мова програмування. Людина може обирати на власний розсуд, з чим вона хоче працювати».

Переваги

У PHP низький поріг входу в програмування серед Back-end мов. Тому тут немає жорсткого набору вимог для початківця, як в інших мовах.

Великий попит на ринку, тож роботу знайти не проблема. Більшості онлайн-магазинів з Америки або Європи потрібен хтось, щоб його правити. А в 90% випадках такі магазини розроблені на PHP.

PHP базується на ООП, тому після неї можна легко опанувати й інші мови програмування, підучивши трохи синтаксис.

PHP — несуворо типізована мова, це дає певну гнучкість. Тобто розробник може не турбуватися про те, щоб вказувати тип даних, коли пише код. Але водночас такий код стає менш очевидним для читання для іншого фахівця. Йому складніше розуміти поведінку цього коду (те, що він робить).

«PHP останні роки стає все більш типізованою. А на проєктах часто в лінтери додають перевірку, щоб у кожному файлі було declare(strict_types=1);»

Куди далі може рухатись PHP Developer

Якщо говорити про розширення знань, то наступною мовою після PHP буде найлегше вивчити Go. Вона лаконічна, має менше ключових слів і синтаксису. Проте це мова, яка працює з багатопотоковістю і має механізм, щоб легко її використовувати. У цьому бенефіт Go, якщо порівнювати з іншими мовами.

Якщо мова про кар’єрні можливості, то з PHP-розробників виходять гарні архітектори. PHP-фахівцю на Back-end легше вийти в архітектори, ніж JavaScript-розробнику.

Також фахівці зазначають, що робота з PHP підштовхує до Full Stack розробки, тому можна піти у цей напрям.

Чи варто вибрати РНР

У РНР варто заходити, якщо:

  • полюбляєте веброзробку: PHP має багато функціональності, спроєктованої спеціально для веброзробки;
  • шукаєте щось просте: спеціалісти кажуть, що РНР є однією з найпростіших мов програмування, яку буде легко опанувати початківцю;
  • хочете швидше почати робити реальні проєкти: завдяки вивченню PHP можна швидко взятися за створення реальних проєктів. Це практичне застосування навичок може поліпшити навчання та створити відчуття досягнення;
  • бажаєте швидко працевлаштуватись: попри появу багатьох інших технологій, PHP залишається широко використовуваною у галузі.

Щодо переходу з інших мов, то тут варто враховувати особливості PHP:

  • у PHP менша конкуренція. Python, Java, C#, JavaScript, які є найпоширенішими за версією TIOBE, мають велику конкуренцію за кількістю спеціалістів на ринку;
  • фокус на веброзробці: інші мови використовуються у кількох індустріях одночасно, Водночас РНР фокусується лише на веброзробці. Це одночасно і перевага, і недолік;
  • на відміну від Go, .NET, C++ позицій, кількість вакансій на РНР значно більша (відповідно до наявних на DOU).

«Завдяки фреймворкам Laravel і Symfony PHP дає змогу створювати як прості, так і складні вебзастосунки. Для новачків це легкий старт, а для досвідчених спеціалістів — можливість працювати з великими проєктами і стабільним ринком».

«У PHP велика спільнота, відповідно низька ймовірність, що новачок матиме проблему, з якою ніхто раніше не стикався і на яку немає рішення на Stack Overflow чи інших платформах/форумах. Це теж спрощує опанування мови. Є проблема — загуглив — при правильному запиті із ймовірністю 99% знайшов рішення».

Чому PHP не помре

Фахівці діляться, що навіть якщо мовою не будуть розробляти нічого нового, роботи фахівцям вистачить ще років на 100. Адже надто багато всього написано на PHP, і потрібно підтримувати ці продукти. Проте один зі спікерів зазначив, що вже 2019 року брав участь у розробці проєкту на PHP з нуля.

«З 1992 року жартують про те, що PHP помре, але вона досі жива. Це тому, що є CMS Wordpress. І доки він існує, PHP буде жити. Якщо ж знайдуть аналог, тоді можемо говорити про зникнення PHP».

«Анекдоти про те, що PHP помирає, смішні, звичайно, але не дуже актуальні :) Часи PHP5 і жартів про неї давно минули, а PHP8 хоч і може бути не найпопулярнішою мовою для написання нових проєктів, але вона абсолютно нічим не гірша, ніж її „конкуренти“ в ніші.

Насправді я вважаю, що поганих мов програмування не існує, просто кожна має своє ідеальне застосування. І для веброзробки середніх масштабів PHP чи не найкращий варіант на сьогодні. Тому що це швидко, надійно і відносно легко. Погані результати виникають тоді, коли розробник використовує мову, яка не підходить для реалізації конкретного завдання. Але це проблема не мови, а того, хто її хибно обрав».

«PHP не помре, адже мова активно розвивається як у плані синтаксису, так і перформансу».

«PHP має частку у вебі 75%, у конкурентів — у 12 разів менше. Тому ця мова житиме».

«PHP не помре, бо це невіддільна частина екосистеми вебу. Якби інтернет був живою істотою, то PHP була б його серцем. А серце, як відомо, б’ється довше, ніж здається!»

Де шукати знання PHP-розробникам

Ресурси

  • PHP Manual — офіційна документація від творців PHP.
  • PHP The Right Way — основа для новачків.
  • SymfonyCasts — має безплатні матеріали для вивчення Symfony та супутніх технологій.
  • Laracasts — має безплатні матеріали для вивчення Laravel і супутніх технологій.
  • Roadmap Backend Developer — шляхи навчання, щоб не загубитись.
  • Refactoring.Guru — тут можна вчити дизайн-патерни і рефакторинг.
  • leetcode.com — для практики алгоритмів, структур і запитів у базу даних.
  • freeCodeCamp — текстові мануали.
  • Learn-php.org — інтерактивний туторіал.

Youtube-канали

Книжки

Корисні матеріали на DOU


Дякуємо за підготовку та рецензування матеріалу нашим експертам:

Ігор Пронін — Lead Software Engineer в EPAM

Володимир Хворостянкін — Engineering Manager у Printify

Микола Вигівський — Senior PHP Developer в «Українській універсальній біржі»

Ігор Абдразаков — Senior Back-end Developer в SendPulse

Ігор Сухих — Development Team Lead у Precoro

Олег Висоцький — PHP Team Lead

Олександр Музиченко — PHP Technical Lead у Ciklum

Микола Кеча — Technical Lead, PHP у ZONE3000/Namecheap

Михайло Образенко — TL Developer у Boosta

Все про українське ІТ в телеграмі — підписуйтеся на канал DOU

👍ПодобаєтьсяСподобалось10
До обраногоВ обраному7
LinkedIn



23 коментарі

Підписатись на коментаріВідписатись від коментарів Коментарі можуть залишати тільки користувачі з підтвердженими акаунтами.

Дякую за статтю! Ті хто кажуть, що ПХП простий. Як можна, якщо в останніх версіях в нього реалізовано майже всі можливості в відношення класів, навіть порівняно з Java:

PHP живий і навіть доволі популярний, але більш менш добрі гроші на ньому можна мати лише в ентерпрайзі (є ентерпрайз, який використовує пхп, але його небагато і беруть туди здебільше з хорошим досвідом) або великому ecomm (але там надодачу йдуть доволі специфічні тулзи, наприклад magento, на опанування яких може піти немалий час).

З приводу вимоги:

HTML/CSS/JavaScript — щоб не губитися, коли мова про Front-end.

може висловлю трохи нетипову думку, але на певному рівні їх знати звісно треба, та якщо сильно заглибитись в це, то можна несподівано стати full stack: php + js, що з одного боку користується попитом, а з іншого дає дуже великий шанс стати майстром на всі руки у вебстудії, звідки буде доволі важко перейти на інший рівень. То все ж таки порадив би концентруватися на backend, або навіть backend + devops.

PHP сила!) Дуже класний допис, дякую за публікацію

7% айтівців використовують її на роботі

і висновок — воно не помре
( нагадаю 5% це статистично незначуща кількість )

майже цитуючи — мертве померти не може )))
особисто вважаю що PHP ще буде «живим» довго , Java тому приклад

PS мій комент більше про якість допису та журналістики якщо що

Багато корисних посилань в статті. Це круто! Кілька штук зберіг собі =)

PHP — народжений щоб померти :))

Тільки це жарт не про мову програмування в цілому, а про життєвий цикл обробки запиту :)

Вже років 15 цю мову ховають і все ніяк не поховають
Це вже починає нагадувати прощальний тур Scorpions)

10 років назад, коли я починав працювати на PHP, я чув що він скоро помре, проектів стає менше, треба йти на джаву, ітд ітп

Підозрюю, якщо AI не вбʼє всі мови програмування — то і ще через 10 років я буду чути про вмирання PHP)

ps. особливо прикольно згадувати, як хоронили PHP бо вийшов розпрекрасний Ruby. ну шо там, де зараз рубі?)

Дія друга. У ній знаходиться Ruby

вивчить ще щось крім PHP ! ось і похороните його )))

бо ж який пехопе, коли, щоб було що їсти, на стройкі пахати доведеться.

WordPress це не CRM :)

Напевно описка, CMS мали написати))

Дякую, що помітили. Виправили)

Досить плодити php розробників, чим нас менше тим більше ми затребувані 😅

настав час плодити рубістів!

із Припʼяті веселіше

В панчохах 20 ден

PHP помре. Але тільки після Дункана Маклауда. ;)

чи житиме ця мова у майбутньому

В сенсі житиме? PHP ж вмер)

не один раз...

Порвали три баяна

він не помер

він перейшов у категорію «невмирущі»

Підписатись на коментарі