Blockchain and smart contracts are expected to drive the revolution in financial services.
The numbers suggest that’s happening. According to CoinDesk, $1.1bn was invested in blockchain and Bitcoin in the first quarter of 2016.
With this in mind, software developers looking for a new direction might want to take their skills to the blockchain.
The core code for Bitcoin, the first application of the blockchain, is in C++. But that was 2009, and in 2016, you need to go with Go.
“I’ve heard it described as ‘what the developers of C would come up with after using Python for a decade on Google-scale infrastructure,” Ethan Buchan, CTO of blockchain app development firm Tendermint – which codes in Go – said in an interview. “I think that’s pretty much what happened.”
Go is an open-source language created by Google engineers to build servers. It’s designed to be lightweight, has good concurrency support, and supports quick deployment. This makes it particularly effective for decentralized tech like the blockchain.
Code choice is strategically important for startups. The primary codebase of Ethereum, which pioneered smart contracts, is written in Go. Distributed tools such as IPFS and Consul use Go too. Development is geared toward user needs: The most recent release, 1.7, was cut in size to accommodate Raspberry Pi owners.
Beginners have an advantage when it comes to the implementation of blockchain-driven financial services.
“While the techies are working on big themes like scalability, to no avail so far, beginners should fill the gap of blockchain’s too-steep learning curve by working on making it more user-friendly to the mass,” Davide De Rosa, author of the popular blockchain tutorial Basic Blockchain Programming, said in an interview.
Meltem Demirors, Director of Digital Currency Group, writes on Medium that there are “tremendous opportunities” for women in blockchain technology, and that the industry should look outside of finance and technology to develop: “I’ve seen some of the best ideas come from diverse teams of people who have various backgrounds.”
What is the blockchain?
PWC: Blockchain infographics
The idea of smart contracts
Basic Blockchain Programming
Women in blockchain tech
With developers in short supply, attitude, background knowledge, and demonstrated experimentation on the blockchain is more important than actual paid experience.
Tendermint’s Buchan says he looks for candidates “well versed in distributed computing, cryptography, and consensus science, though in general we are open to strong programmers with an aptitude for self-directed learning.”
Marc Warne, founder of London-based Bitcoin transfer site Bittylicious, says that candidates should experiment. “I’d just see what they’ve built on top of the blockchain, even just minor projects they might just be tinkering with, or fancy contracts.”
For your blockchain and smart contract developments, you should research current issues – such as the Ethereum hard fork – and be able to defend a position. “For a really entry level job, I might want to chat with them about ideas and ideologies,” says Warne.
Quora: Best open source blockchain projects to contribute to
Wikipedia: Distributed computing projects
Follow on Twitter
Laura Shin (presenter of Unchained blockchain podcast)
Many cities have blockchain and Bitcoin meetups on the site, according to De Rosa.