What it takes to be a blockchain developer
|Richard Harris in Blockchain Monday, April 8, 2019|
We ask Edison Lim, blockchain application lead at Zilliqa, to explain what the life of a blockchain developer is like, and what it takes to become a blockchain developer anyway.
The role of a blockchain developer is much coveted, and named as the top emerging career in the US job market last year. In fact, software engineers with specialized knowledge of blockchain technology are able to command salaries as high as $175,000 USD. With mainstream adoption on the horizon and higher education institutions working to prepare the next generations of budding developers, enthusiastic programmers, and tech innovators alike for a future where blockchain will be omnipresent, it’s clear that this demand is here to stay.
But for those outside of the industry, the role of blockchain developer is an elusive one. What does a blockchain developer actually do? What does a typical day even look like? To learn more, we spoke with Edison Lim, Blockchain Application Lead at Zilliqa, a high-throughput blockchain platform that strives to become the go-to blockchain platform for enterprises and developers seeking to leverage the potential of decentralized technology.
ADM: How did you first hear of blockchain? What drew you to the space?
Lim: Like most people, the very first time I upon the word “blockchain” was when I first came across the concept of Bitcoin in 2013 as it made headlines with the closure of Silk Road. Admittedly, I had no idea what a Bitcoin was at the time but I found myself drawn to this clever use of cryptography used to build an immutable distributed ledger that could be both secure and tamper-proof. With its application in Bitcoin, I was able to recognize the transformative power of blockchain as it could potentially give people greater financial freedom. At the time, my eyes were opened to how cheap Bitcoin transactions could be and how it could radically transform the micropayments space.
Years later, I chanced upon Ethereum, which had gone on to develop its own smart contract language, Solidity. Smart contracts ultimately became more appealing to me, due to their easily apparent utility. Smart contracts can provide greater accessibility and transparency, making it possible to build a decentralized network which can provide a level playing field for third-party developers, creators, and businesses. I even tried to build simple decentralized applications (Dapps) on the platform in my own time––back then, Ethereum’s developer experience was poor and it was challenging to create anything of use.
While attending graduate school at Carnegie Mellon University, I was fortunate to come across a graduate seminar on Advanced Cryptography during Fall 2017. With my previous understanding of blockchain, I now found myself learning about more applications of cryptography that had the potential to enable new use-cases in the blockchain industry. Eventually, I went on to write my graduate thesis on blockchain and throughout the course of my research, I began to focus on blockchain security and the importance of mitigating potential attacks. It was really during this period of writing my thesis that I mustered the motivation to really contribute to the space, insofar as working on security and streamlining user and developer experience on these platforms. After graduation, I then made the decision to work in the industry.
ADM: As blockchain still qualifies as an emerging technology, what sort of challenges do you face and what keeps you motivated? How might it be different from other technical fields?
Lim: One of the biggest challenges for anyone looking to involve themselves in a relatively nascent sector, whether it’s blockchain or otherwise, is the lack of a benchmark. You have limited points of reference, whether it’s in terms of technical pointers or leadership. If you’re working in other areas of software development, you could potentially be in a better position where other people may have done similar things as you’re doing now. In this case, the challenge would be to digest these “proven methods” and implement them well with a twist of your own. In the blockchain space, there are comparatively fewer resources to guide you along. It’s on you to innovate and be creative, and you find yourself in this unique position of needing to create many of the tools and infrastructure that you would use at work. For example, when I first joined Zilliqa, it wasn’t easy to create a testnet for development and I didn’t have an existing, functioning testnet at the time to experiment with. In turn, I created the Kaya RPC Server which is a personal, pseudo-blockchain that emulates the Zilliqa blockchain in order to help developers create and test their applications with greater ease prior to deployment. Eventually, we open-sourced the project as we thought that this tool could help many app developers to quickly test their applications before trying it out on the testnet.
ADM: How has the role of a blockchain developer changed in the past few years? Has there been a difference in job scope and responsibilities compared to when you first entered the industry?
Lim: When I first entered the blockchain industry, people were fascinated about consensus protocols, to the extent that they’d often debate about the merits of different consensus algorithms and which ones are superior. Today, you can see a greater emphasis on applications but even more so, usability.
I was recently at ETHDenver and what I found was that more and more developers are trying to tackle this issue of usability for both developers and end users. How do we reduce the number of steps for onboarding? How do we create a more seamless developer experience? How can we use layer-2 solutions to not just solve scalability problems, but also to improve user experience? These are some of the questions that developers are asking themselves today.
As a whole, the general trend today is that software iteration cycles are getting shorter. Agile methodology creates a healthy cycle where software components are continuously tested over sprints. Developers these days must know how to work well in a team and create better agile processes to ensure continuous delivery.
In addition, we have also seen the need for diverse skill sets in our team. I can’t speak for the whole industry as a whole, but our company sees the increasing need for “super” developers who are equipped with diverse skill-sets. In application engineering, other than proficiency with full-stack development, team members should know DevOps to some degree. DevOps is a culture, not a role! With blockchain increasing in popularity, developers need to have a more diverse skill set as well. It’s no longer sufficient to only have skills in either back-end or front-end programming. Over time, there’s been a rise in demand for full-stack engineers who can bridge the gap across multiple teams.
ADM: What does it take to have a career in blockchain today? Have the barriers to entry gone up or gone down?
Lim: As the industry continues to mature and blockchain projects transform into full-fledged organizations, we’ve recognized the need for different roles in companies––whether it’s marketing, business development, or legal, there’s more to the industry than just programming. Many people have this misconception that you need to be a developer to enter the blockchain industry and this isn’t true!
We need people who have the ability to see the industry with alternative points of view, whether that’s in terms of the product-market fit or the dynamics of a token economy. We also need people who have a strong understanding of user experience so that we can develop user-friendly Dapps to make blockchain more usable. With that in mind, there needs to be a tighter feedback loop between consumers and applications. Although the variety of roles has broadened over time, there is still a very high skill set requirements to enter the space. To join the industry, you need strong cognitive skills to be able to quickly grasp concepts and implement them. While challenging, it all depends on whether you’re up to it––either way, it’ll be a fun, rewarding journey.
ADM: As a developer, what is your opinion on the current state of the local blockchain industry in Singapore/Asia and how does it compare to the US or Europe?
Lim: Given the fact that the idea of decentralized networks originated from the west, the blockchain ecosystem appears to be more mature in the United States and in Europe when compared to Asia. However, Asia is not lagging behind in research––there have been many blockchain projects born out of research conducted in some of the region’s leading universities. Zilliqa’s research, for one, was produced at the National University of Singapore.
I’ve also been able to see that there are differences in some of the applications being developed in east compared to the west. In Asia, most projects have a big picture approach, solving challenges in existing industries themselves such as finance or supply chain by making certain processes more efficient. In contrast, I’ve seen more emphasis on disruptive and radical new ideas in the west, such as decentralized government systems or payment networks. Admittedly, my observations might be subjected to selection bias––I do think it would be interesting if someone could do an empirical study on this trend.
Edison Lim is a Blockchain Application Lead at Zilliqa, where he heads the development of in-house blockchain applications in the advertising and financial industry. Edison believes that blockchain is an internet of value, and is interested to explore various use-cases of blockchain and accelerate the world’s transition to decentralization. Edison holds a M.Sc from Carnegie Mellon University, where he conducted research on blockchain security.