Come 2009, and mysteriously out of the blocks emerged a cryptocurrency, Bitcoin, coded using a technique described in 1991 as blockchain. Bitcoin attracted sustained attention, and blockchain, which until then was largely unnoticed, basked in the dawn of a new era of promise.
To understand the promise of this technology, let’s decode how it brings about digital transformation. Blockchain stores data in ‘blocks’, linked together chronologically to form a ‘chain of blocks’. Its promise and genius lies in its ability to decentralise data, ensure its trustworthiness, and let users interact without intermediaries. Moreover, blockchain can be used to record and track anything of value, right from cross-currency payments and insurance claims to citizen and medical records.
It is no wonder then that blockchain-related start-ups joined the fray right after its popularisation and, today, a career as a blockchain engineer or developer is one that is considered one of the most in demand. Not only is blockchain considered highly scalable, as per a survey by Deloitte Insights, but is also one of the fastest growing skills, as per a survey by Upwork. From start-ups to tech giants and industry leaders, from e-commerce companies to financial and global banking firms, everyone is hiring those with blockchain-related skills.
The good news is that blockchain uses programming languages like Java, C++, Go and Python, which opens up the field to proficient developers. Well-known blockchain architect, Eugene Kyselev, for instance, is a Java-turned-blockchain developer who points out that blockchain lends itself across industries, be it cloud storage, logistics, and banking & investment, among others.
To make the most of the opportunities in this sphere, you too can make the shift from Java to blockchain. However, since you cannot transfer your technical skills across the wall, so to speak, use Java as a springboard to find an entry point into the world of blockchain. To help you get started, here are 4 things that you as a Java developer, can do right now to level up in blockchain.
Get a handle on blockchain by studying Bitcoin & Ethereum
While some wonder whether Bitcoin would detract from the true significance of blockchain, seeing blockchain in action and decoding your way through the Bitcoin platform can be an engaging way to start learning blockchain basics. Bitcoin’s public ledger uses blockchain as a foundation and unravelling the technology can give you a grasp on essential blockchain concepts such as proof of work and timestamps. Good starting points are the Bitcoin whitepaper and developer guides.
Closely behind Bitcoin is Ethereum. Studying this cryptocurrency is important to imbibing blockchain fundamentals as this technology isn’t exhausted by or limited to Bitcoin alone. To get a solid theoretical foundation, you can read the Ethereum whitepaper, head to the Ethereum developer resources, and simultaneously study videos of Vitalik Buterin, Ethereum’s co-founder. You can also look up some leading books such as Mastering Bitcoin, Mastering Ethereum, Blockchain Revolution, and the Blockchain Developer to gain more perspective.
Explore Java-based blockchain projects like BitcoinJ & FundRequest
You may not find Java as popular in developer communities, but the NEM cryptocurrency was implemented with Java and with over 7 million Java developers (at least) in the world, you’ll definitely be able to find some common ground soon. Moreover, there already are more than a handful of Java-based blockchain projects such as:
Not sure where to start? Try Corda. It is open-source and the community has a blog illustrating how you can get started with your first blockchain application if all you know is Java. Once you get a taste for blockchain, you can deep-dive into the technology using Corda as the entryway and get certified as a blockchain professional through a Corda blockchain training programme. This can be of career importance to you as according to r3, Corda’s creators, “only Corda allows businesses to build interoperable blockchain networks that transact directly, and privately.”
Master emerging blockchain technologies like Solidity & Hyperledger
Another emerging technology to leverage as a Java developer is Hyperledger Fabric, in which contracts are referred to as Chaincode. Hyperledger supports the use of Java for chaincode implementation (not prior to v.1.3), and you can head over to GitHub to gain insights on developing Java smart contracts. The idea in all of this is that you can use Java as a pivot or starting point, but eventually you want to become conversant in several languages and technologies.
Take courses like IBM Bitcoin 101: Quick-start guide for developers
Eugene Kyselev in his interview with JAXenter mentions the worth of the course ‘IBM Bitcoin 101: Quick-start guide for developers’ and this could be a quick guide you can turn to. Udemy, Coursera, and EdX are also replete with online courses, and through these platforms you can even get certification from the likes of Princeton University and Berkeley University of California. You can check these out and sign up for one to get up to speed quickly.
After perusing through this roundup of the ways in which a Java developer can embrace the blockchain revolution, a question you may have is whether you should, in fact, invest your time, effort, and money in learning blockchain. Some believe that being a Java developer offers equal compensation. Nevertheless, learning blockchain has its incentive owing to the growth and potential of the technology, and also because it will help you step out of being just a Java developer to being a software developer.
When it comes to matching your advanced multi-faceted skill sets to the needs of the industry, you can rely on Talent500’s dynamic skill assessment and machine learning algorithms. These seamlessly pair your skills to the needs of Fortune 500 companies in search of the top 10% of talent. So, get started now and level up your skills!