Чому у програмістів важка робота

На одному з проектів, який ми розробляємо, об'єм коду сторонніх бібліотек — 85%. Тобто це ті бібліотеки, які потрібно встановити у проект, щоб решта 15% коду з чимось працювали. Всього таких бібліотек 93.

Оскільки ринок програмного забезпечення дуже великий і привабливий (сотні мільярдів доларів), то на ньому багато гравців і конкуренція там відверто кривава.

Гравці намагаються робити інновації, створювати нові функції у продуктах, покращення, щоб вигідно відрізнятися від своїх конкурентів. У більшості випадків усі ці покращення по суті — повна нісенітна дурниця.

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

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

І це дуже швидко набридає.

Чи можна зупинитися і не оновлювати бібліотеки? Не раджу. З часом старі бібліотеки перестають підтримуватися виробниками. Спочатку неможливо зібрати продукт. А потім уже й зібрані перестають працювати. Другий аспект: на ринку затребувані спеціалісти, які вміють працювати з сучасними технологіями, а не з мовою Алгол 68 чи Delphi (пам'ятаєте, як хайпувала технологія?)

Так, програмістам добре платять. Але якщо розглядати мотивацію крім грошей, співробітники ще мотивуються успіхом: успішно виконані проекти, а на короткій дистанції — успішно закриті завдання.

І з цим також велика проблема: оскільки, якщо потрібно постійно інтегрувати нові бібліотеки, з якими немає досвіду, то дуже сильно хромає як оцінка трудовитрат, так і надійність отриманих рішень. Програміст змушений постійно вивчати особливості нових бібліотек, підлаштовуватися під них. І те, що неможливо передбачити, яким буде результат завдання з точки зору трудовитрат і надійності — це дуже сильно демотивує. Сучасний програміст рідко йде з роботи щасливим: “Я завершив свої завдання і я зробив роботу добре”.

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

Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Володимир Обрізан
Володимир Обрізан@obrizan

120Прочитань
0Автори
2Читачі
На Друкарні з 24 серпня

Більше від автора

Вам також сподобається

  • А міг би бути секс

    Фройд казав, шо сексуальність — це здатність приводити в дію генітальне. Я б внесла поправочку...

    Публікація містить описи/фото насилля, еротики або іншого чутливого контенту.

    Теми цього довгочиту:

    Секс
  • Java. Logging

    Наприклад, метрикою може бути кількість викликів до бази даних або кількість отриманих запитів за секунду (rps — requests per second). Ці метрики, коли вони збираються протягом часу, можуть допомогти зрозуміти поведінку та продуктивність додатку.

    Теми цього довгочиту:

    Програмування
  • λanguage: Неформальний опис мови

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

    Теми цього довгочиту:

    Js

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Вам також сподобається

  • А міг би бути секс

    Фройд казав, шо сексуальність — це здатність приводити в дію генітальне. Я б внесла поправочку...

    Публікація містить описи/фото насилля, еротики або іншого чутливого контенту.

    Теми цього довгочиту:

    Секс
  • Java. Logging

    Наприклад, метрикою може бути кількість викликів до бази даних або кількість отриманих запитів за секунду (rps — requests per second). Ці метрики, коли вони збираються протягом часу, можуть допомогти зрозуміти поведінку та продуктивність додатку.

    Теми цього довгочиту:

    Програмування
  • λanguage: Неформальний опис мови

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

    Теми цього довгочиту:

    Js