Szukasz programistów blockchain? Znajdziesz ich w kilka kliknięć.

Kompleksowy przewodnik po zatrudnianiu inżyniera blockchain

2 mar 20238 min czytania

Cezary Dobrowolski

Marketer z technicznym zacięciem i futurolog. Interesuje go przyszłość blockchaina i AI w oprogramowaniu i marketingu. Nie przekonuje go tradycyjny marketing korporacyjny.

Gwałtowne nadejście Przemysłu 4.0 zrewolucjonizowało nie tylko nasze codzienne praktyki i pracę na halach produkcyjnych. Radykalnie zmieniło też globalny rynek pracy, wygaszając jedne zawody i powołując do życia inne. Inżynier blockchain to jedna z profesji, które wysunęły się na pierwszy plan wraz z pojawieniem się tej technologii i na które popyt w napędzanym zaawansowanymi technologiami świecie XXI wieku będzie tylko rósł. Skąd bierze się ten młody, ale potencjalnie potężny trend wzrostowy?

Bliższe spojrzenie na obecny stan blockchaina

Jako menedżer firmy napędzanej cyfrowo możesz pomyśleć: „Przecież nie zamierzam kopać bitcoinów ani integrować portfela kryptowalutowego z moimi bramkami płatniczymi. Po co więc szukać ze świecą specjalisty od blockchaina i słono płacić za jego usługi?”. Taki tok myślenia opiera się na rozpowszechnionym błędnym przekonaniu, które utożsamia technologię blockchain z kryptowalutami. Choć inicjatywy finansowe odpowiadają za około jednej trzeciej wartości rynku blockchain, technologia ta znajduje szerokie zastosowanie także w innych dziedzinach , niekoniecznie związanych z finansami.

 

Kompleksowy przewodnik po zatrudnianiu inżyniera blockchain - rozkład zastosowań blockchaina poza bitcoinem

 

Źródło

 

Nawet edukacja zaczęła ostatnio traktować zasady i rozwiązania blockchainowe jako poważne wsparcie w nauczaniu niektórych przedmiotów (przede wszystkim matematyki).

 

To prawda, że blockchain, którego historia sięga 1991 roku, nabrał rozpędu niecałe piętnaście lat temu wraz z uruchomieniem Bitcoina jako pierwszej kryptowaluty. Od tamtej pory te dwa pojęcia wyraźnie się jednak rozeszły, przede wszystkim w powszechnym odbiorze: kryptowaluty mają w świecie biznesu raczej mieszaną reputację, a blockchain wśród przedsiębiorców wizerunek jednoznacznie pozytywny. Mimo tej różnicy oba obszary zanotowały zdumiewający skok inwestycji w ciągu zaledwie jednego roku!

 

Kompleksowy przewodnik po zatrudnianiu inżyniera blockchain - inwestycje w sektor kryptowalut i blockchaina na przestrzeni lat

 

Źródło

 

Firmy z pierwszej ligi (na przykład IBM, Facebook, Walmart czy Microsoft) są tu pionierami — ponad 60% z nich planuje w najbliższym czasie zainwestować nie mniej niż 1 milion dolarów w projekty blockchainowe. Światowe Forum Ekonomiczne zapowiedziało, że w ciągu pięciu lat spodziewa się przechowywania 10% globalnego PKB z wykorzystaniem tej technologii. Nic więc dziwnego, że globalne wydatki na rozwiązania blockchainowe mają do 2024 roku wzrosnąć niemal pięciokrotnie i sięgnąć zawrotnych 19 miliardów dolarów. W efekcie rynek rozproszonych rejestrów (a blockchain jest jego nieodłączną częścią) wraz z głównymi zastosowaniami ma w dającej się przewidzieć przyszłości rosnąć w szybkim tempie. 

 

Kompleksowy przewodnik po zatrudnianiu inżyniera blockchain - wielkość rynku rozproszonych rejestrów w latach 2020-2030

 

Źródło

 

Przy tak apetycznych perspektywach tej zaawansowanej technologicznie dziedziny naturalne jest, że świat IT odczuwa ogromną potrzebę kompetentnych specjalistów od blockchaina. Popyt na nich dramatycznie przewyższa jednak podaż: w 2016 roku liczba ekspertów blockchainowych na świecie wynosiła zaledwie 5,000. Od tego czasu pula talentów z pewnością się powiększyła, ale dwa lata temu LinkedIn wciąż umieszczał kompetencje inżyniera blockchain na szczycie najbardziej pożądanych kwalifikacji wśród programistów, a Glassdoor raportował 300-procentowy roczny wzrost liczby ogłoszeń o pracę w blockchainie. Skąd tak duże zainteresowanie ich usługami?

Rola inżyniera blockchain pod lupą

Z reguły specjalistów od blockchaina rekrutują firmy technologiczne lub doradcze zajmujące się danymi, żeby wykorzystać istniejącą wiedzę open source do tworzenia i wdrażania rozwiązań blockchainowych. Te zwykle dotyczą struktur danych i algorytmów, sieci komputerowych, kryptografii albo kryptowalut. Żeby robić to na odpowiednim poziomie, muszą umieć analizować potrzeby firmy i organizować procesy konfiguracji zasobów oraz infrastruktury, ze szczególnym uwzględnieniem ich bezpieczeństwa. 

 

Typowa lista obowiązków inżyniera blockchain obejmuje:

  • Zbieranie materiałów do konkretnego projektu blockchainowego.
  • Przygotowanie dokumentacji projektu.
  • Diagnozowanie problemów i testowanie tworzonych rozwiązań.
  • Utrzymanie ich elementów back-endowych i front-endowych. 
  • Projektowanie zdecentralizowanych aplikacji (dApps) opartych na technologii blockchain.
  • Ocenę w pełni wdrożonych aplikacji będących częścią blockchainowego ekosystemu organizacji i wprowadzanie w nich najnowszych usprawnień.
  • Tworzenie rozwiązań dla konkretnej platformy blockchainowej (na przykład Ethereum albo Hyperledger). 

 

Firmy, które zatrudniają ekspertów zdolnych wykonywać takie zadania, zyskują:

  • Usprawniony przepływ pracy. Kompetentne wdrożenie tej technologii upraszcza i ułatwia sporą część procesów oraz podnosi ogólną efektywność organizacji.
  • Niższe koszty. Ponieważ wszystkie wewnętrzne mechanizmy działają wydajniej, a potrzeba pośredników znika, wydatki firmy znacząco spadają.
  • Mniej oszustw. Wbrew obawom o powszechną przestępczość w tej niszy, niezmienny charakter rozproszonej bazy danych, na której opiera się blockchain, potrafi znacząco ograniczyć nadużycia wewnątrz firmy.
  • Wyższe bezpieczeństwo danych. Kryptografia, jeden z fundamentów blockchaina, gwarantuje wysoki poziom bezpieczeństwa, przez co cyberprzestępcom trudniej włamać się do systemu firmy i wykraść wrażliwe lub finansowe informacje.

Korzyści z zatrudnienia inżyniera blockchain są aż nadto oczywiste. Teraz trzeba zrozumieć, czego szukać u kandydatów na to stanowisko. 

Obowiązkowe kompetencje inżyniera blockchain

Przy weryfikacji inżyniera blockchain trzeba sprawdzić trzy kategorie kompetencji. Pierwsza grupa to ogólne umiejętności IT.

1. Podstawowe umiejętności programistyczne

To fundament, który pozwoli programiście zgłębić dowolną technologię, w tym blockchain. Nie trzeba być tu najwyższej klasy profesjonalistą; wystarczy rozumieć składnię i umieć pisać kod. Wiedza techniczna mile widziana u przyszłego inżyniera blockchain obejmuje:

  • Strukturę programowania obiektowego (OOP), która pozwala aktualizować program w razie potrzeby.
  • Najczęściej używane języki programowania (Java, JavaScript, Python, Solidity, C (C++) i Go).
  • Implementację wielowątkowości w aplikacjach różnego typu.
  • Popularne platformy blockchainowe.

2. Kompetencje w bezpieczeństwie i szyfrowaniu

Ta umiejętność pozwoli kandydatowi budować bezpieczne systemy i aplikacje. Obejmuje:

  • Znajomość najważniejszych protokołów bezpieczeństwa (Secure Socket Layer (SSL) i Transport Layer Security (TLS)).
  • Biegłość w technikach szyfrowania i deszyfrowania danych oraz uwierzytelnianiu wieloskładnikowym.
  • Rozumienie koncepcji klucza publicznego i prywatnego.
  • Znajomość podstawowych pojęć sieciowych (routing, sieci peer-to-peer, przesyłanie pakietów itd.)
  • Świadomość działania Security Hash Algorithm, czyli różnicy między SHA-1 a SHA-2, oraz umiejętność doboru odpowiedniego rozwiązania. 

3. Znajomość struktur danych

To fundament każdej aplikacji, więc wykwalifikowany programista poza umiejętnością pracy z modelami drzewiastymi musi mieć doświadczenie z:

  • Listami wiązanymi. Jak sama nazwa zdradza, ten wzorzec organizacji danych to struktura, w której węzły są ze sobą połączone. Model idealnie sprawdza się przy małych zbiorach danych, które można przeglądać w obu kierunkach (od początku, czyli węzła głowy, do końca, czyli węzła ogona, i odwrotnie). Efekt jest szczególnie przydatny w algorytmach wyszukiwania i sortowania.

  • Listami jednokierunkowymi. Ten podtyp obejmuje listy, w których węzeł ma tylko jedno odniesienie (do następnego węzła). Takiej struktury używa się, gdy przeglądanie listy w obu kierunkach jest mniej ważne niż oszczędność pamięci. 

  • Tablicami haszującymi. Dzięki funkcji haszującej łatwo w nich znaleźć potrzebne dane i uzyskać do nich dostęp. Takie tablice są nieocenione, gdy priorytetem jest szybkie pobieranie danych albo dostęp swobodny.

  • Grafami acyklicznymi (dwudzielnymi). Nie zawierają cykli i służą przede wszystkim do modelowania problemów świata rzeczywistego. 

Nową umiejętnością IT cenioną przez pracodawców jest znajomość koncepcji Big Data (takich jak Hadoop i MapReduce), która pozwoli specjaliście od blockchaina sprawnie przetwarzać ogromne ilości informacji.

 

Druga grupa umiejętności wiąże się z wiedzą typowo blockchainową. Należą tu kompetencje związane z poniższymi fundamentami.

1. Rozproszone rejestry

Technologia polega na przechowywaniu danych w sieci wielu punktów końcowych (komputerów) zamiast gromadzenia ich w jednym wirtualnym miejscu. Dzięki temu wszyscy uczestnicy blockchaina mogą przeglądać dowolną zawartość rejestru.

2. Mechanizmy konsensusu

Dzięki nim uczestnicy blockchaina mogą uzgodnić stan rejestru i dodawać do niego nowe dane. Dwa najpopularniejsze mechanizmy konsensusu to proof of work (PoW) i proof of stake (PoS).

3. Smart kontrakty

To logika biznesowa stojąca za operacjami w blockchainie, zapisana jako fragment kodu. Pozwala automatycznie realizować umowy i transakcje między stronami bez pośredników. Dzięki temu mogą one przejrzyście wymieniać pieniądze, majątek, udziały albo inne aktywa w sposób, którego nie da się edytować ani modyfikować. Inżynier blockchain powinien umieć je pisać w Truffle albo Solidity.

4. Niezmienność

Jak wspomniano wyżej, danych w blockchainie nie da się zmienić. Raz dodane, zostają tam na zawsze. Żeby coś dodać, trzeba utworzyć nowe zdarzenie, a wszystkie wcześniejsze informacje są odporne na edycję i usunięcie.

5. Sharding

W blockchainie sieć dzieli się na mniejsze części (shardy), dzięki czemu łatwiej nią zarządzać i rośnie wydajność baz danych, w których połączone są wszystkie węzły. Transakcje przetwarza najpierw niewielka część węzłów, a następnie skalowane są na resztę blockchaina, co pozwala obsługiwać wiele transakcji jednocześnie.

6. Blockchainy publiczne i z uprawnieniami

Blockchainy publiczne nie wymagają uprawnień i pozwalają każdemu dołączyć oraz stać się węzłem, bo nie zarządza nimi żaden centralny organ. Żeby dołączyć do blockchaina z uprawnieniami, potrzebna jest zgoda organu zarządzającego, po której otrzymuje się konkretny klucz do operowania na tamtejszych danych. Każdy typ ma swoje plusy i minusy. 

 

Z jednej strony blockchainy z uprawnieniami są bezpieczniejsze, ale mniej przejrzyste, bo zależą od decyzji odległego centrum. Z drugiej — dane w blockchainach publicznych trudniej sfałszować, ale są też otwarte na manipulację przez podmioty trzecie.

7. Tokeny

To cyfrowe aktywa, które może wyemitować każdy uczestnik blockchaina i które są w nim przechowywane. Reprezentują pieniądze, majątek albo dowolną inną jednostkę wartości. Zwyczajowo w publicznym blockchainie występują dwa rodzaje tokenów.

  • Monety. Oznaczają własność wirtualnego aktywa i pełnią funkcję jednostki płatniczej w transakcjach między uczestnikami blockchaina, podobnie jak pieniądz fiducjarny w świecie fizycznym.

  • Paliwo. Ten rodzaj wirtualnej waluty służy do opłacania kosztów wydobycia.

8. dApps

Ten skrót oznacza zdecentralizowane aplikacje (decentralized apps) — aplikacje oparte na Ethereum, które działają w blockchainie i są wykonywane przez jego węzły. 

 

Trzecia grupa umiejętności wymaganych od inżyniera blockchain to biegłość w specjalistycznych narzędziach deweloperskich, takich jak:

  • Etherscan. Serwis pozwalający monitorować blockchain, wyszukiwać w nim transakcje i sprawdzać salda adresów.

  • Blockchain Explorer. Dzięki niemu obejrzysz transakcję, sprawdzisz oczekujące transakcje pod adresem portfela i dodasz do sieci nowe bloki, mogąc monitorować ich szczegóły.

  • Composer. Narzędzie służy do budowania aplikacji blockchainowych i zarządzania nimi dzięki funkcjom obejmującym tworzenie smart kontraktów, testy jednostkowe i zarządzanie pakietami.

  • Caliper. Mierzy wydajność węzłów blockchaina: szybkość dodawania nowych bloków, status połączeń portów, synchronizację węzłów itd.

  • Remix IDE. To środowisko programistyczne służy do pisania, testowania i wdrażania smart kontraktów.

  • Testnety. Jak można się domyślić, to narzędzie do testowania dAppów, które nie korzysta z tokenów.

Jeśli kandydat na inżyniera blockchain będzie pracować z Ethereum, musi też być biegły w:

  • Solidity— języku programowania do pisania smart kontraktów.
  • Truffle— frameworku deweloperskim, którego funkcje pozwalają kompilować, testować i wdrażać smart kontrakty.
  • Drizzle— bibliotece Pythona do budowania dAppów.
  • Mist— desktopowym portfelu umożliwiającym operacje na etherze, którego wbudowana przeglądarka pozwala wdrażać dAppy.
  • Solo— narzędziu wiersza poleceń pozwalającym uruchamiać węzły.
  • Geth— narzędziu o tym samym zadaniu co Solo, ale używanym też jako repozytorium danych, które może inicjować transakcje oparte na smart kontraktach.
  • MetaMask— działającym zarówno jako rozszerzenie przeglądarki umożliwiające uruchamianie aplikacji, jak i cyfrowy portfel do przechowywania i wymiany etheru oraz tokenów.
  • Ganache— prywatnym blockchainie Ethereum pozwalającym wdrażać smart kontrakty, tworzyć konta testowe i nimi zarządzać, wykonywać testy automatyczne itd. 

Wiesz już, jakich umiejętności szukać u kandydata na inżyniera blockchain. Kolejny krok to przyjrzenie się miejscom, w których można go znaleźć.

Gdzie szukać inżynierów blockchain: zwięzły kompas

Pierwszy dylemat, który trzeba rozstrzygnąć, gdy zamierzasz zatrudnić inżyniera blockchain , to wybór między rekrutacją wewnętrzną a outsourcingiem.

 

Pierwsze podejście wybierają głównie duże firmy, które są w stanie zapewnić wewnętrznemu zespołowi stałe obłożenie pracą i wypłacać regularne wynagrodzenie. Zupełnie nie sprawdza się ono w małych organizacjach i startupach na diecie budżetowej, których na taki luksus nie stać i które potrzebują inżyniera blockchain tylko sporadycznie, do jednorazowego projektu. W takim przypadku outsourcing jest dokładnie tym, czego trzeba. 

 

Samozatrudnionych specjalistów IT możesz szukać na różnych platformach freelancerskich, takich jak Upwork czy Toptal. Poszukiwania mocno przyspieszą, jeśli zawęzisz je do miejsc wyspecjalizowanych. Na początek sprawdź społeczności ekspertów blockchainowych (na przykład BitcoinTalk, Reddit czy StackExchange) i spróbuj znaleźć odpowiednich ludzi na niszowych konferencjach, takich jak Blockchain Expo, Bitcoin Miami czy LA Blockchain Summit. 

 

Żeby jednak poszukiwania nie ciągnęły się w nieskończoność i żeby wyeliminować ryzyko trafienia na nieuczciwych naciągaczy, warto zwrócić się do blockchainowych marketplace'ów i portali z ogłoszeniami. Wiarygodny marketplace zaoferuje dużą pulę wstępnie zweryfikowanych inżynierów blockchain (i innych specjalistów IT) o odpowiednich kompetencjach i doświadczeniu w dziedzinie, w której zamierzasz ich zatrudnić. 

Podsumowanie

Licząca ponad trzydzieści lat technologia blockchain przeżywa dziś boom i znajduje różnorodne zastosowania w wielu branżach. Mimo istotnych korzyści, jakie może przynieść organizacjom, wykwalifikowanych specjalistów w tej niszy wciąż nie ma wielu, a ich znalezienie kosztuje czas i wysiłek. Zwracając się do wyspecjalizowanych marketplace'ów, dotrzesz do najlepszych inżynierów blockchain, którzy mają potrzebną wiedzę i opanowali narzędzia niezbędne do realizacji na wysokim poziomie projektu blockchainowego o dowolnym zakresie i złożoności.

Cezary Dobrowolski

Cezary jest pasjonatem technologii i muzykiem. Fascynuje go przyszłość blockchaina i AI w oprogramowaniu, marketingu i sprzedaży. Nie przepada za korporacyjnymi schematami, a po godzinach zajmuje się futurologią.

Zobacz wszystkie wpisy autora
Newsletter 9-1
Newsletter Ideamotive
Twój dwutygodniowy przegląd najgorętszych newsów technologicznych
CEE IT 2022

Outsourcing i offshoring IT w Europie Środkowo-Wschodniej: raport 2022

Białoruś • Polska • Rumunia • Ukraina

Czytaj teraz

Szukasz wyjątkowych specjalistów do swojego zespołu?

W naszej sieci czekają sprawdzeni programiści blockchain.