Компилируемые, относительно низкоуровневые языки бэкенда, такие как C/C++, являются хорошей отправной точкой для начала программирования в Solidity. Тем, кто имеет опыт веб-разработки или опыт работы с такими языками, как JavaScript и Python, придется приспособиться к более низкоуровневому мышлению Solidity, где вы можете оказаться непосредственно оперирующим битами переменной. Тем не менее, программист блокчейна, работающий в полномасштабном режиме, должен обладать обоими навыками, поскольку именно через библиотеки web3.js, ethers. js и web3.py осуществляется большинство взаимодействий со смарт-контрактами Solidity. Хороший разработчик может работать как с бэкендом контрактов Solidity, так и с фронтендом на JS/Python, но отличный разработчик может работать со всем стеком. Библиотека контрактов OpenZeppelin также является отличным источником для использования, поскольку она избавляет разработчиков от необходимости писать некоторые общие контракты, например, контракт токенизации.