Чому нам дійсно потрібні програмісти?
Розробник Джозеф Круз замислився над тим, чому світу справді потрібні програмісти. Пропонуємо вам переклад його його авторського блогу від нашої редакції. Далі — слово автору.
Коли я починав працювати програмістом у невеликій компанії, робочий процес був схожий: зранку бос вислуховує наші звіти, за потреби обговорює нові завдання.
Потім, одразу після планової наради, він мчить кудись у своїх надважливих справах. Потім з’являється після обіду на п’ятнадцять хвилин, або ми бачимо його тільки наступного ранку, і нагальні питання вирішуються по телефону.
Програмісти — це такі люди, які можуть придумати собі роботу з повітря. Але, звичайно, кращого результату можна досягти, якщо є чітке завдання і ти можеш займатися ним цілий день. В принципі, так і сталося.
Проекти вийшли різні. Більшість з того, що ми програмували, виявилося марним і потім припадало пилом у репозиторіях. Хоча в момент постановки завдання це здавалося найважливішим, з дедлайнами, штрафами і т.д.
За шість років роботи в цій компанії я пам’ятаю лише два по-справжньому вартісних проекти, які були цінні самі по собі, а потім працювали на благо суспільства. Решта були як завдання: копай звідси і до обіду.
Поступово я зростав, збільшувалася кількість корисних і марних завдань. У нас з’явився відділ системних адміністраторів. Мобільні адміністратори їздили по різних компаніях і налаштовували мережі, поштові сервери, антивіруси.
Я помітив цікаву особливість: коли з’являвся новий клієнт і потрібно було впровадити правильну технологію після того, як старий адміністратор пішов, у мене відразу з’являлися більш термінові завдання, не пов’язані безпосередньо з цією компанією. Треба було просто розібратися ще з кількома гемороями в різних програмних кодах.
Спочатку я думав, що це збіг обставин, тому просто швидше друкував на клавіатурі, вкладався в дедлайни і вислуховував гнівні догани від боса, якщо запізнювався з дедлайнами.
Потім, коли хвиля цих незрозумілих завдань почала чітко корелювати з появою нових клієнтів або великими поламками у клієнтів, я почав замислюватися, чи не пов’язано це якимось незрозумілим для мене чином.
Що, якщо я виконую функцію якогось центрального процесора, який повинен виконувати елементарні операції, і при цьому дивним чином вирішуються високорівневі завдання самої компанії? Причому, часто було зовсім неважливо, виправляю я баг у працюючій системі чи пишу якусь невідому обробку даних, яка потрібна раз на рік. Треба було просто добре подумати і вирішити.
Завіса таємниці трохи піднялася, коли мій маленький відділ найняв ще одного програміста, щоб допомогти мені. Спочатку я пояснив йому, що він може зробити, щоб разом швидше вирішити проблему.
Після того, як він почав працювати, мене охопила така пекельна жага покращити свій код і виправити застарілі помилки, до яких у мене ніколи не доходили руки, що у мене не було іншого вибору, окрім як це зробити. Здавалося, що всі ці завдання матеріалізуються і перестають бути просто записами в таск-трекері, а стають цілком матеріальними проблемами.
Ага, саме так. Так будується ієрархія й підтримується субординація. Якщо у вас є підлеглий, ви можете делегувати йому завдання.
Коли підлеглий виконує це завдання, ви отримуєте прибуток від його виконання. Якби на місці програміста був двірник, то в результаті його роботи у нас був би чистий двір. Але програміст — це працівник інтелектуальної праці, і в результаті його роботи ми отримуємо чистий розум.
З цієї чистоти і порядку ми можемо чіткіше бачити всі недоліки, які раніше не помічали. Коли програміст береться за вирішення наших проблем, він дозволяє нам звільнити місце в нашій свідомості для нових проблем.
Оскільки ми чітко розуміємо, що нам не потрібно про це думати, її вирішує хтось інший, а на її місці може бути створена нова проблема. Таким чином ми зміцнюємо свої обчислювальні здібності.
Повернімося до наших адміністраторів, які налаштовують Windows в бухгалтерії клієнта. Напевно, у нього виникають різноманітні труднощі: не встановлені драйвери, не працює мережа, порожній картридж принтера.
Всі ці проблеми він може вирішити самостійно, але було б чудово, якби хтось постійно щось вигадував за нього.
Щоб адміністратор чудесним чином інтуїтивно натискав усі кнопки, і все запускалося з першого разу. Цим чудодійним вирішувачем є програміст, який якимось чином ловить такі проблеми від адміністратора і вирішує їх у вигляді хитромудрого коду.
Незрозумілість, швидше за все, вписується в ієрархічну структуру компанії та підпорядкованість одних працівників іншим. Напевно, так влаштовані люди.
Висновок
З цього можна зробити висновок, чому після, здавалося б, успішного написання коду завдання і проекти часто йдуть на смітник, а вас ніколи не звільняють. Просто ви (програмісти) не потрібні для створення проектів. Ви потрібні для того, щоб генерувати рішення і постачати ефір цією правильною енергією, щоб інші могли використовувати її і швидко вирішувати свої проблеми.
Успішні проекти — це як побічні продукти. Сукупність ваших рішень добре вписується в певний шаблон, який можна використовувати багато разів. Так з’явилися програмні продукти: Windows, Linux, Word, Excel та інші.
Favbet Tech – це ІТ-компанія зі 100% українською ДНК, що створює досконалі сервіси для iGaming і Betting з використанням передових технологій та надає доступ до них. Favbet Tech розробляє інноваційне програмне забезпечення через складну багатокомпонентну платформу, яка здатна витримувати величезні навантаження та створювати унікальний досвід для гравців.
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: