Whatever your opinion about cryptocurrencies, the fact that blockchain is an immensely powerful technology about to make a permanent mark on the world is undeniable. It is important to note that money – digital currency – is only one form that blockchain technology can take. The protocols that blockchain technology proposes can be morphed and configured to suit a variety of tasks, not just exchanged as a cashless form of money.
Bill Gates says that blockchain technology will be a game-changer in the upcoming decade. The technology’s versatility is what makes it such a innovative field. It can be applied to any kind of industry, so long as it has the right logic and robust technical architecture to support it.
Despite the agreement, at least among tech insiders, that blockchain is a technology whose utility has only had its surface scratched, there is a dearth of talent in the field. The virulent replication of cryptocurrencies on a daily basis belies the actual availability of genuine talent in the field. Both public blockchain projects, like STEEM and Verge, and private blockchain projects, like Hyperledger, are always on the lookout for new minds to help solve their technical challenges.
Why Become a Blockchain Developer?
Our world is changing in ways that makes the rapidity of the Industrial Revolution seem like a snail’s pace. Around the turn of the 19th century, manual laborers in the agriculture industry suffered from the advent of mechanized farming equipment. The efficiency of the assembly line soon became the norm, automating what humans previously did at a much higher success rate.
We are experiencing the same kind of revolution again, only this time it is Artificial Intelligence and blockchain technology that are replacing humans. It is also happening at a much quicker pace and on a much larger scale. The time will soon come when many of today’s jobs will be automated by intelligent computer systems.
Computer skills, and especially programming skills, will be necessary for having a fruitful career in the coming decades. Of course there will be other career fields, but it is certain that most industries will require some form of computer expertise, and anyone without these skills will find themselves at a disadvantage on the job market.
It is also noteworthy how communication technology, and the power and decentralized permission that blockchain gives, allows any individual in the world to create a business singlehandedly and conduct transactions safely without oversight. This was never possible before the internet, and such a way of operating is increasingly becoming the trend.
As for a career in blockchain itself, there are several advantages to considering one.
The fundamental technology of blockchain has applications in every kind of industry. The role of a blockchain developer can very roughly be compared to that of a website developer. Every kind of organization – academic, financial, supply chain, entertainment, news – needs a website, but the employees themselves (at the time the internet rose to prominence) lacked the skills needed to develop a website. It’s no different with blockchain. The applications of the technology can benefit every industry, and at some point, every company will need a dedicated individual or team to help them work with the technology.
Both LinkedIn and UpWork have seen a great surge in cryptocurrency-related job opportunities. The former had 9.4 times more job posts related to the field in 2017 than it did in 2014. According to ComputerWorld, the median annual salary of a blockchain developer in Silicon Valley is $158,000.
The blockchain industry itself has been predicted to be worth a few hundred billion dollars by 2025. That figure is a very rough prediction, as we do not know how governments and institutions will react to blockchain’s sweeping transformations. However, it is certain that it will revolutionize multiple industries and business processes. In other words, it may be hyped, but it should certainly not be underestimated.
Don’t go into the field thinking that cryptocurrency is all that one should eye when contemplating a career in blockchain. There are several types of sub-specialties in the field, including decentralized applications and distributed ledger technology. The field is also so nascent that research on the fundamentals of the protocols is still being conducted.
The point we’re trying to make is that by focusing solely on cryptocurrencies, one ignores the enormous potential of blockchain as a technology. There’s plenty of opportunity to make contributions elsewhere, and it would bring huge benefits to the industry itself if more individuals gave other blockchain specialties a thought.
What Are the Career Options for a Blockchain Developer?
There are several kinds of roles available for a blockchain developer.
Core blockchain developers focus on the fundamental technology and protocols – the “core” of the blockchain. Blockchain developers work on the actual implementation and decentralized application programming. To someone who is new to the blockchain, this distinction may not be very clear, but it is a significant one.
We mentioned earlier how there are opportunities to work on either public blockchains or private blockchains. The former involves the kind of work you’re probably more familiar with – actual coins with their ICOs and services offered to the public.
STEEM, ICON and Ethereum are all examples of public blockchains. Private blockchains are blockchains run for specific companies. For example, Barclays is looking into blockchain technology and is conducting heavy research into it. They have been experimenting to see how it can best benefit their customers. Trade finance and identity integration seems to be two areas are of keen interest.
What Are the Required Skills?
Obviously, this field is computer science intensive. Blockchain is pure programming, and different blockchains and coins are built on different languages. Bitcoin runs on C++, and Ethereum works on both C++ and Python. Some blockchains are attempting to broaden their appeal by supporting several languages (for example, Dragonchain supports Java, Python, NodeJS and C#). You have plenty of options available as far as language is concerned, but you will have to be sufficiently skilled at it.
You’ll also need web development skills as a blockchain developer. This includes HTML, CSS, NodeJS and MongoDB. There is a lot of back-end work involved with blockchain development. Networking and security skills are an added bonus, as blockchain developers work closely with employees from these fields.
Now, what about the actual work? Incredibly, you can build your own blockchain in under half an hour. Watch the video below:
Granted, this is a very simple blockchain that has little practical application, but it gives you a taste of the coding involved in blockchain development. Here’s another video teaching you how to build smart contracts on Ethereum:
As for books to learn from, Andreas M. Antonopoulos’ Mastering Bitcoin is a fantastic introduction to the technical side of things. It is freely available as an eBook.
To sum up, you’re going to first need to know one of the programming languages – Java, Python, JavaScript etc. If you’re interested in programing smart contracts on Ethereum, you might want to learn the language Solidity. It is also necessary to brush up your web development knowledge. Once this is done, use some of the various resources online to build your first blockchain, smart contract or decentralized application.
How Do You Get a Job?
First, you’ll have to ensure you’ve got the basic skillset. No matter the demand for developers, it’s still necessary to have the fundamentals down. Blockchain is a complex technology, unlike our analogy of web development which is far simpler.
Broadly speaking, there are two paths that you can take in order to enter the blockchain world: as a developer or as something like a consultant (where you act as a subject-matter expert for businesses). We will only focus on the first in this article.
The technical path, where you essentially set out to become a software developer, is one in which you become a programmer of smart contracts, decentralized applications and blockchain code. It will require all of the knowledge we mentioned in the last section. If you know JavaScript, it may ease the process for you because it bears similarities to Solidity. This will give you the opportunity to work with the Ethereum platform to develop smart contracts.
As with all programming opportunities, newbies are very much welcome. However, a seasoned developer with years of programming insight is more likely to succeed than an initiate with more experience with smart contracts. What companies and projects value is a strong fundamental understanding of programming and the logic that blockchains operate on. This should not discourage rookies – even seasoned developers started out with no experience. Learning and actual coding is the key.
Online hiring platforms have seen an upsurge in cryptocurrency-related job postings. Both LinkedIn and Upwork have numerous blockchain developer postings. AngelList is another excellent source for blockchain developer opportunities. Ripple is also hiring at this time. Blocktribe is a website dedicated solely to blockchain jobs.
Furthermore, because there is a strong tie-in with the community in the blockchain world, you might be able to land a gig by offering your services as a volunteer for a project. Teams are always happy to have an extra pair of hands, if you’ve got sufficient skill and knowledge. Check Reddit pages, Telegram, Slack and Discord channels, and tweet to project team members. Of course, don’t forget to check the websites of different projects – many of them list vacancies.
As with any role in the modern world, networking is an essential part of career development. The blockchain community is a very tight one. If you’ve got a genuine interest in developing a career and working hard, chances are you’ll find an opportunity through the meetups that are regularly held across the world. Not only will you interact with and learn from seasoned blockchain developers, you will also possibly gain an entry into the world as an actual developer. You will have the chance to have your questions answered and your work reviewed, which is invaluable.
Conclusion
There will never be a better time to enter the blockchain world as an insider. Everyone on the inside is still learning about the technology, and the chance to make a difference is very real. Even blockchain veterans like Vitalik Buterin are continuously learning about the technology.
However, the fundamental tools to develop software on blockchains – and blockchains themselves – are the same tools most programmers know today. The repository of knowledge is wide, with video tutorials and comprehensive textual guides available on the internet. There’s nothing stopping you from becoming a blockchain developer, so give it a go if you are interested in the field and think you can handle the technical demands.