Autor: Urszula Ćwiklińska
Artykuł o ludziach, zespołach i sztucznej inteligencji

Czy sztuczna inteligencja zastąpi programistów?

Jakiś czas temu podczas Pystoku, spotkania białostockiej społeczności użytkowników Pythona, wysłuchałam prezentacji „Programmers’ Last Dance”, której autor postawił kilka ciekawych pytań. Dwa z nich zostały ze mną długo po zakończeniu wydarzenia i stały się inspiracją do napisania tego artykułu. Pierwsze brzmiało: czy sztuczna inteligencja zastąpi programistów? Drugie: czy współczesny inżynier jest dziś sprzedawcą („Engineers = Salespeople?”).

Zacznę więc od pytania o sztuczną inteligencję i programowanie. Jeszcze kilka lat temu mało kto zastanawiał się, czy programiści będą potrzebni za dekadę czy dwie. Zmieniały się języki programowania, pojawiały się nowe frameworki, narzędzia, chmury czy mikroserwisy, ale fundament pozostawał ten sam – ktoś musiał to wszystko zrozumieć, uporządkować i zamienić w gotowe, działające rozwiązanie. Nic więc dziwnego, że zawód programisty uchodził za bezpieczny, perspektywiczny i dobrze płatny.

Co więc sprawiło, że nagle zaczęliśmy zadawać pytania o przyszłość tego zawodu?

Coraz więcej zadań związanych z implementacją powierzamy dziś narzędziom takim jak Claude, GitHub Copilot, Gemini czy ChatGPT. Potrafią one wygenerować fragmenty aplikacji, przygotować testy jednostkowe, napisać dokumentację, a czasem nawet zaproponować architekturę lub stworzyć całe rozwiązanie.
Patrząc na to z perspektywy osoby stojącej z boku, można odnieść wrażenie, że zawód programisty stopniowo traci na znaczeniu. Skoro sztuczna inteligencja potrafi pisać kod, po co utrzymywać ludzi, którzy robili to do tej pory?

Pojawienie się AI nie eliminuje potrzeby rozumienia problemów ani umiejętności łączenia wielu technologii w spójne rozwiązanie. Model może wygenerować kod, ale nadal potrzebny jest ktoś, kto oceni, czy rzeczywiście rozwiązuje on problem, jest bezpieczny, skalowalny i możliwy do utrzymania za kilka lat. Ktoś musi również wziąć odpowiedzialność za podjęte decyzje i konsekwencje stworzonego rozwiązania. Wygenerowanie kodu jest dopiero początkiem. Znacznie trudniejsze okazuje się przewidzenie, jak produkt będzie działał za rok, dwa czy pięć lat.

Być może więc nie chodzi o to, czy sztuczna inteligencja zastąpi programistów, ale o to, w jaką stronę powinny rozwijać się ich kompetencje. Jak zmieni się ich rola w świecie, w którym samo napisanie kodu staje się coraz łatwiejsze?

Programista czy sprzedawca?

I właśnie tutaj wracam do drugiego pytania, które usłyszałam podczas prezentacji. Bo jeśli wartością programisty nie będzie już wyłącznie tworzenie kodu, to co stanie się jego największym atutem? Umiejętność rozwiązywania problemów? Zrozumienie biznesu? Komunikacja? A może zdolność przekonywania innych do własnych pomysłów?

Innymi słowy: czy współczesny inżynier musi stać się dziś sprzedawcą?

Według autora prezentacji odpowiedź jest dość oczywista. W świecie, w którym samo napisanie kodu przestaje być kompetencją wyróżniającą programistę, coraz większego znaczenia nabiera umiejętność przekonywania innych do swoich pomysłów i rozwiązań.

Nie wystarczy już samo rozwiązanie zadania. Trzeba również umieć wyjaśnić, dlaczego ma to sens, jakie niesie korzyści i dlaczego warto poświęcić czas oraz środki na jego realizację. Innymi słowy, trzeba nauczyć się mówić językiem dostosowanym do różnych grup odbiorców.

Inaczej rozmawia się z testerem, który będzie zwracał uwagę na jakość. Inaczej z administratorem odpowiedzialnym za bezpieczeństwo i utrzymanie systemu. Jeszcze inaczej z przedstawicielem biznesu, którego interesują przede wszystkim koszty, ryzyko i potencjalne korzyści.

W takim ujęciu wartość programisty nie wynika już wyłącznie z umiejętności pisania kodu, ale również z umiejętności wyjaśnienia, dlaczego go tworzy i jaką wartość ma on przynieść, językiem zrozumiałym dla wszystkich zainteresowanych.
I właśnie tutaj pojawia się we mnie zgrzyt.

Nie każdy komunikuje się tak samo

Wizja przedstawiona przez prelegenta opiera się na kompetencjach, których sztuczna inteligencja nadal nie posiada – empatii, rozumieniu drugiego człowieka oraz umiejętności dostosowania komunikacji do odbiorcy. Jednocześnie zakłada, że każdy programista jest w stanie rozwinąć podobny poziom tych kompetencji. Że każdy nauczy się dostosowywać sposób rozmowy do odbiorcy, sprawnie przełączać się między językiem technicznym a biznesowym i przekonywać innych do swoich pomysłów.

Tymczasem ludzie różnią się nie tylko wiedzą, doświadczeniem czy umiejętnościami technicznymi. Różnią się również sposobem komunikowania się oraz naturalnymi predyspozycjami społecznymi.

Jedni z łatwością odnajdują się podczas prezentacji, warsztatów czy spotkań z klientami. Potrafią intuicyjnie wyczuć potrzeby rozmówcy i dostosować do niego swój przekaz. Dla nich zmiana stylu komunikacji jest czymś naturalnym.

Inni mogą być wybitnymi specjalistami, a jednocześnie mieć ogromną trudność z przełożeniem swoich myśli na język oczekiwany przez różne grupy odbiorców. Nie dlatego, że nie rozumieją problemu. Nie dlatego, że nie dostrzegają konsekwencji swoich decyzji. Po prostu ich sposób komunikowania się ze światem jest inny.

Szczególnie mocno widać to w przypadku osób introwertycznych i neuroatypowych. Przez lata branża technologiczna była miejscem, w którym mogły budować swoją pozycję dzięki temu, co potrafiły stworzyć, przeanalizować lub zaprojektować.

To właśnie dlatego po prezentacji zapytałam prelegenta o osoby neuroatypowe, bo im dłużej słuchałam o komunikacji, empatii i konieczności dostosowywania przekazu do różnych odbiorców, tym bardziej miałam wrażenie, że w swojej wizji „programisty przyszłości” zwyczajnie o nich zapomniał. Absolutnie nie winię go o to. Sama przeszłam drogę od programistki do właścicielki małej firmy, dostosowując swój styl komunikacyjny do moich rozmówców. Wiem jednak, że nie każdy człowiek jest w stanie równie swobodnie poruszać się pomiędzy światem technologii, biznesu i relacji. I nie każdy musi.

Siła zespołu czy siła jednostki?

Może błąd w nowym podejściu polega na założeniu, że przyszłość inżyniera IT należy do jednoosobowych armii. Programistów-orkiestr, którzy potrafią wszystko sami zaprojektować, zakodzić z pomocą AI, a na koniec jeszcze to wszystko sprzedać. W rzeczywistości kluczem do sukcesu mogą okazać się zespoły hybrydowe, oparte na komplementarności. Zamiast zmuszać wybitnego, ale introwertycznego inżyniera do bycia rekinem biznesu, znacznie efektywniej jest stworzyć wokół niego środowisko, w którym ktoś inny weźmie na siebie rolę „tłumacza” i zbuduje ten komunikacyjny most. Siła dobrych zespołów tkwi w różnorodności, a próba sprowadzenia wszystkich programistów do roli sprzedawcy to prosta droga do utraty największych technicznych talentów.

Być może więc pytanie nie brzmi, czy każdy programista powinien stać się sprzedawcą. Być może warto zapytać, czy naprawdę każdy musi nim zostać.
A jeśli rzeczywiście oglądamy dziś „ostatni taniec programisty”, to czy na parkiecie pozostanie miejsce również dla tych, którzy potrafią tworzyć świetne rozwiązania, czy tylko dla tych, którzy potrafią je sprzedać?

Mój głos na dopingu AI

Loading the Elevenlabs Text to Speech AudioNative Player...
Zaplecze wizualne, UMS Fusion, Urszula Ćwiklińska, Ana Kaciun

Kim jesteśmy?

Cześć, jesteśmy Ana i Ula. Tworzymy zespół samowystarczalny: razem kreujemy content, tworzymy strony www i zapewniamy klientom wsparcie techniczne. Ogarniamy branding. Pasjonuje nas sztuczna inteligencja i jej zastosowanie w pracy i w życiu. Chcesz współpracować z nami? Umówmy się na bezpłatną konsultację.

Zaplecze wizualne, UMS Fusion, Urszula Ćwiklińska, Ana Kaciun

Kim jesteśmy?

Cześć, jesteśmy Ana i Ula. Tworzymy zespół samowystarczalny: razem kreujemy content, tworzymy strony www i zapewniamy klientom wsparcie techniczne. Ogarniamy branding. Pasjonuje nas sztuczna inteligencja i jej zastosowanie w pracy i w życiu. Chcesz współpracować z nami? Umówmy się na bezpłatną konsultację.