А що значить бути програмістом?

У 18 років я поставив собі за мету стати програмістом. На той час це була сфера, де працювало багато цікавих людей і де можна було заробити хороші гроші. Більшою мірою вона була цікава мені саме через можливість мати солідний дохід. Тому я шукав найшвидший і найпростіший шлях входу в ІТ.

Я дивився на професію програміста через призму технологій та мов програмування. Моя ідентичність звучала як «JavaScript-розробник», потім — «React-розробник». Фокус був на тому, щоб заповнити резюме популярними технологіями й бути затребуваним на ринку. Я почувався білкою в колесі: постійно гнався за найновішою версією фреймворка чи бібліотеки, яка обіцяла бути кращою за попередню. І весь час був фоновий страх щось пропустити й випасти з тренду.

Через війну в моїй країні довелося зробити вимушену паузу і стати на її захист. Спочатку в армії не було навіть думок про програмування чи майбутнє. Коли я адаптувався і ми налагодили робочі процеси, з'явилося трохи простору, і я час від часу починав думати про те, що буде далі. І щоразу разом із цими думками приходили тривога й страх: технології, які я знав, уже неактуальні, а навички я втратив через відсутність практики. Тривогу підсилювали новини від колег — в ІТ сильні скорочення через стрімкий розвиток ШІ. Мовляв, він пише код досить добре, тож така кількість людей у команді більше не потрібна. Мені було сумно: я розумів, що, можливо, вже не вийде повернутися у сферу, в якій мені так подобалося працювати, — бо буду вже некомпетентним, а для джуна застарим.

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

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

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

Кожен із нас тепер ніби архітектор, у якого з'явилися невтомні працівники, готові робити все, що ти скажеш. Проте тобі важливо розуміти, що саме і як ти будуєш, бо сперечатися вони не стануть — просто зроблять.

Виникає логічне питання: якщо ШІ так добре пише код, то чи є взагалі сенс вчити мови програмування та писати код власноруч?

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

Наприклад, вивчення JavaScript дало мені розуміння функціонального програмування. Працюючи з React, я зрозумів, що таке композиція. Вивчаючи TypeScript, я поглибив розуміння типів даних.

Уже пішов третій рік, як я не працюю програмістом. Проте вміння самостійно вчитися й шукати оптимальні шляхи до розв'язання задач у повсякденному житті — незамінні навички, які я значною мірою розвинув саме завдяки програмуванню.

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

У 18 років я шукав, як швидше зайти в ІТ. Тепер я дивлюся на програмування як на справу життя. Для мене це подорож, а не кінцева точка. Безперервний процес, а не ціль.

Ще у XVIII столітті Семюел Джонсон сказав:

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

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


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

Усім мир ✌️