Популярность решений с применением блокчейна растет с каждым днём. А, значит, и сотрудники, занимающиеся их разработкой, все более востребованы.
Если еще семь лет назад мало кто знал, какие обязанности у блокчейн-разработчика, то сегодня представители этой профессии объединяются в профессиональные сообщества, общаются на форумах и штурмуют карьерные сайты в поисках лучшего работодателя. В статье расскажу, почему сейчас неправильно ассоциировать блокчейн-разработчиков исключительно с криптовалютами, что нужно для самостоятельного освоения профессии и как вырастет спрос компаний на этих специалистов в обозримом будущем.

Сперва о главном — избавимся от прочной ассоциации блокчейна исключительно с криптовалютами. Значение блокчейна в цифровом мире давно расширилось. Так, с его помощью предотвращают DDoS-атаки и взломы, обеспечивают дополнительную безопасность хранения данных в облаке посредством децентрализованных сетей, рекламируют товары и услуги без посредников. В индустрии развлечений блокчейн открывает больше возможностей для защиты авторского права артистов, а в финансовом секторе — увеличивает безопасность транзакций в банковской системе. Появилось такое понятие, как ДАО — децентрализованная автономная организация. Такие сообщества существуют на базе блокчейна, контролируются всеми участниками, имеют общий счет и свод правил, прописанный в специальном документе. Решения в ДАО принимаются только после того, как свое мнение выскажут все участники — блокчейн позволяет сделать эту процедуру прозрачной, ведь голосование в ДАО проходит с помощью смарт-контрактов (компьютерных протоколов, самостоятельно проводящих сделки и контролирующих их исполнение с помощью математических алгоритмов). В качестве примеров таких организаций можно привести децентрализованные криптобиржи и инвестиционные фонды.
Получается, что представление о технологии в разрезе одних только криптовалют устарело, хотя появилось небезосновательно — именно на блокчейне основано большинство из существующих криптовалют. Сейчас технологию в большей степени связывают с распределенностью, прозрачностью операций и, как следствие, с методом обеспечения доверенной среды для большого числа участников.
Самое емкое и исчерпывающее объяснение сведу к следующему: это специалист, создающий и оптимизирующий решения на основе технологии блокчейна. Он может пойти по нескольким карьерным траекториям, например, стать разработчиком смарт-контрактов, core-разработчиком, профессионалом в блокчейн-аналитике или разработчиком распределенных приложений.
Какая база необходима и из каких специальностей перейти в профессию проще всего, нарастив необходимые теоретические и практические навыки?
Сперва задумайтесь над тем, чтобы получить сильную академическую подготовку в компьютерных науках (математике, теоретической информатике, информационной безопасности и криптографии, архитектуре и алгоритмах). А если вы уже разработчик и хотите освоить блокчейн-разработку, то хорошая новость — переквалифицироваться будет проще всего. Для старта карьеры в блокчейне необходим опыт программирования на одном из языков –– Solidity, Go, Rust или JavaScript.
Начать можно с разработки нескольких смарт-контрактов. После проверить их, развернув локальную сеть Ganache, или в официальных тестнетах (например, Goerli для Ethereum), опубликовать на Github. Эта опция бесплатная, ведь эфир для тестнетов можно получить в специализированных кранах — сервисах, которые выдают пользователю вознаграждение в виде криптовалюты за выполнение определенных действий (ввод капчи, просмотр рекламы и т. д.). Но надо понимать, что валютами тестнетов нельзя расплатиться в обычной жизни — их стоимость в эквиваленте реальных денег равна нулю.
Имея бэкграунд в разработке (к примеру, свыше двух лет), сделать вышеописанное получится всего за несколько месяцев и без посторонней помощи. Нужно лишь иметь в виду, что существуют языки программирования сервера, фронта, аналитического движка, а есть языки для написания и аудита смарт-контрактов. Структурированно о знании языков и технологий для разных специализаций в блокчейн-разработке — в таблице ниже.
| Programming Language | Smart Contract Development | Backend Development | Web Frontend Development | Blockchain Execution Layer Clients |
|---|---|---|---|---|
| JavaScript | Нет | Да | Да | - |
| Python | Нет | Да | Нет | Hyperledger Sawtooth |
| C# | Нет | Да | Да | Ethereum Nethermind |
| C++ | Solana | Да | Нет | Bitcoin Core, EOSIO Nodeos, Stellar Core |
| Kotlin | Corda | Да | Нет | Corda Node |
| Go | Нет | Да | Нет | Ethereum Geth, Hyperledger Fabric, Binance Smart Chain |
| TypeScript | Нет | Да | Да | Lisk, Celo |
| Rust | Solana | Да | Нет | Polkadot Substrate, Stellar Core, Solana |
| Solidity | Ethereum, Polygon, Binance Smart Chain | Нет | Нет | - |
| Cairo | Ethereum (StarkNet L2) | Нет | Нет | - |
Чтобы претендовать на должность блокчейн-разработчика, нужно уметь программировать (и не обязательно уходить с головой в full-stack — достаточно одного из упомянутых языков), разбираться в архитектуре, знать технологии, лежащие в основе блокчейна и иметь практический кейс разработки смарт-контрактов (очень желательно).
Список хард-скиллов, о которых спросят на собеседовании, примерно такой: