Masz już konto? Zaloguj się
Artykuły

Programiści „10x” oraz „1000x”

Opublikowany 31 sierpnia 2023

Słyszałeś określenie "10x programmer"? Chodzi o programistów, którzy są w stanie rozwiązywać problemy w czasie 10x krótszym niż pozostali. Często mówi się, że to mit. Czy na pewno? A co powiesz na programistów 1000x?

Przede wszystkim odpowiedzmy sobie na pytanie czy w ogóle koncepcja programisty "10x" jest realna. W końcu często tempo rozwiązywania problemów rośnie razem z doświadczeniem. Natomiast nadal nie o to tutaj chodzi, ponieważ koncepcja ta, dotyczy właśnie "senior developerów", którzy z jakiegoś powodu wyróżniają się na tle pozostałych.

Wydaje się, że coś takiego może nie być możliwe, albo nawet jeżeli jest, to
i tak zdarza się wyjątkowo rzadko oraz wymaga pewnego rodzaju geniuszu. Jednocześnie jest wiele osób, które uważają że "10x programmers" to po prostu mit.

Moim celem nie jest tutaj przekonanie Cię o tym, czy tak jest czy nie, tylko pokazanie pewnej perspektywy, która w mojej opinii jest dość interesująca. Nie będziemy też tutaj omawiać złożonych wskaźników dotyczących sposobów mierzenia efektywności programistów, bo nie zależy mi tutaj na szczegółach, lecz szerokiej perspektywie.

Otóż jesteśmy w stanie wyobrazić sobie programistów 10x. Myślę, że nie jest to poza zasięgiem wyobraźni a może nawet w niektórych przypadkach jesteśmy w stanie wskazać osoby (lub inni patrzą tak na nas), które można określić jako "10x". Natomiast co ze wspomnianymi programistami 1000x?

Ta koncepcja została poruszona przez Navala Ravikanta - znanego inwestora z Doliny Krzemowej, który zainwestował na wczesnym etapie m.in. w Ubera, Twittera czy Notion. On sam jest postacią, którą moim zdaniem warto obserwować. O programistach 1000x wspomniał przynajmniej w kilku miejscach, natomiast ja przeczytałem o niej w książce "Almanack of Naval Ravikant"

Forget 10x programmers. 1,000x programmers really exist, we just don’t fully acknowledge it. See @ID\AA\_Carmack, @notch, Satoshi Nakomoto, etc.

To cytat z książki, gdzie jak widzisz Naval nie tylko mówi o programistach 1000x ale również wskazuje wybitne osoby, które w mojej opinii zasługują na takie miano.

Bez wątpienia np. John Carmack, który stoi za Doomem, Quake'm a później za Oculus VR, nie tylko wyróżnił się niesamowitymi umiejętnościami ale znacznie wpłynął na całą branżę gier a teraz wirtualnej rzeczywistości. Wystarczy zobaczyć jak niesamowitym sprzętem jest teraz Oculus Quest 2.

Natomiast najważniejsze nie są jego programistyczne umiejętności (które
i tak są niezwykłe) ale Naval zwrócił tutaj uwagę na jeden fakt. Programiści 1000x są w stanie małym fragmentem kodu albo jakąś małą aplikacją przynieść wartość biznesową na poziomie pół miliarda dolarów. Brzmi niewiarygodnie?

Sam spotkałem się z sytuacją, gdzie jeden pomysł lub mała aplikacja, oszczędzała dziesiątki godzin pracy managerów w średniej wielkości firmie. W tym przypadku przygotowanie rozwiązania zajęło ~6 godzin, choć wydawałoby się, że potrzebny jest tutaj skomplikowany system, którego development zajmie miesiące.

Oczywiście nadal z określeniem "1000x programmers" można się nie zgadzać ale tak w zasadzie, to chciałbym dać Ci wskazówkę, która według mojego doświadczenia, rzeczywiście może pewnego dnia sprawić, że ktoś powie o Tobie to samo, co Naval o Johnie Carmack'u.

Według mnie ogromną dźwignią rozwoju programisty jest połączenie specjalizacji i generalizacji. Czy to w ogóle jest możliwe? Moim zdaniem jest i wymaga ogromnej ciekawości, umiejętności szybkiej nauki i zmiany kontekstu oraz zainteresowań wykraczających poza programowanie. Mowa tutaj o szerokim spojrzeniu ponad edytor kodu i rozwijanie swojej wiedzy w zakresie ekonomii, biznesu, psychologii czy nawet obszaru UX. Oczywiście nie chodzi o to aby być ekspertem w każdej z tych dziedzin, lecz o to aby być w stanie "z lotu ptaka" spojrzeć na nie wszystkie. Taka perspektywa pozwala rozwiązywać problemy w całkowicie niesamowity
i nieszablonowy sposób, ponieważ po prostu widzisz to, czego nie widzą inni.

Jeżeli interesuje Cię ten temat, bardzo polecam Ci dwie książki: Range (David Epstein) oraz Simplify (Richard Koch).

Mam nadzieję, że zarysowana przeze mnie perspektywa dała Ci wartość
a być może też wpłynie na to jak patrzysz na swój rozwój jako programista.

Powodzenia!