So You Want to Work in Blockchain

Every day you watch as the price of Bitcoin makes dramatic moves and at least one new ICO pops up. Why can’t you get in on this action? Why can’t you make something completely new and exciting? And maybe make some money along the way?

The cryptocurrency market will increase greatly in 2018, so now is an excellent time to make the leap into this space. There is a strong need for solid technical talent to build actual products before launching ICO’s. The days of forming a business around a whitepaper and a landing page are over. Now, investors want to see a real business backed by real engineers and designers. This is good, both for the long-term health of the community and for legitimizing blockchain engineering as a career path.

What are employers actually looking for, though?

As someone involved in the hiring process at a cryptocurrency startup, I can outline what we look for in particular, as well as what the rest of the market is looking for.

Let’s start by taking the top ten cryptocurrencies along with my company, Topl, and discussing what programming languages and technologies they incorporate.

The top ten

Bitcoin, Ripple, Bitcoin Cash, Litecoin, Monero, and EOS all primarily use C++ to write the core blockchain.

EOS notably also uses C++ for their smart contracts, which compile to WebAssembly.

Ethereum is written in Go, and their smart contracts are written in Solidity.

NEO uses C#. Their smart contracts can currently be written in C#, F#, Java, Kotlin, and Python currently, with more options on the way.

Cardano is written in Haskell, and soon their smart contracts will be able to be written in any language.

Stellar is written in C++.

Topl uses Scala for our blockchain, and JavaScript for our smart contracts.

It appears C++ is currently leading the way for blockchain development. This is not the truth. Solidity is the real leader for now. Extending beyond the top ten, we see 91% of the market share actually rests in ERC20 tokens written in Solidity on the Ethereum platform. We’re even using Solidity at Topl to implement side-chaining to bring Ether onto our platform.

The fact of the matter is, you will most likely need to know multiple programming languages to excel in this space. The space is small but growing, and most crypto businesses are still in the startup stages. This means wearing many hats, and performing a variety of tasks.

Solidity is, well, a solid place to start if you are looking to gain experience. To get your feet wet, try writing basic smart contracts and generally interacting with a working blockchain to learn its quirks and behaviors.

We specifically look for and are looking for people that have worked on varied projects and can switch between languages effectively. Our developers mainly work with JavaScript and Scala, and should be able to use both. More importantly, they have built things before coming to work for us.

Building Things

Basic projects, little widgets, full fledged businesses. We want to see them all. This is especially true when it comes to blockchain because there are not many things to build yet. So roll out your own blockchain following a guide in Python or C++. Write some Solidity contracts. That experience will be immensely helpful. There isn’t really room to get too crazy with your projects yet though. That’s fine, most people realize that.

At Topl, we aren’t searching for overly experienced talent. What does 5+ years of blockchain experience even look like? The space is new enough that we can up-skill people quickly, as long as they have some knowledge and plenty of drive.

Things are changing quickly in this space, especially the technologies behind it. This is why it’s increasingly important to have malleable programmers who can change quickly with each paradigm shift. Like with web programming, there’s a new way to do things practically every month.

Speaking of Web Programming

One great way to get into the space is through front-end development. There is a huge need for UI/UX design and creating wallets or sites to interact with the blockchains. If they aren’t using JavaScript to write contracts like we are, they most likely still need front-end and full-stack developers. In particular they will be looking for frameworks, namely

  1. React
  2. Angular
  3. Vue
  4. JQuery

Although it is not a framework, Node.js should be included here also.

People must be able to visualize what is happening on the blockchain, so that they know how to interact with it. Otherwise having a blockchain is pointless. As a result there is a big trend away from the technology’s purely technical, hacker roots. It is now being geared more towards mainstream use cases with nice UI’s logical layouts.

Alright. You consider yourself a fast-learning hard worker. You’ve dabbled in a few programming languages. You’ve built a couple of small projects. What now?

Now, you reach out within the blockchain community. Get on Reddit. Go to meetups. Join Rocket chats and Telegrams (like ours,’t be afraid to get on Github and submit a pull request or raise an issue. We see these things and it reflects well on you to put in the extra effort.

So put your best foot forward, and let people know what you can do. Make meaningful connections. Then, you’ll get hired by a startup — or you may even found your own.