What does a blockchain developer do? Which programming language is used in blockchain?