October 12, 2023

Becoming a Cardano Blockchain Backend Developer

EMURGO

Becoming-a-Cardano-Blockchain-Backend-Developer-1

In Cardano, blockchain developers have a specialized role where they can focus on on-chain, off-chain, frontend, backend, and more. In previous blogs as part of the Cardano developer roadmap series, we have discussed these roles.

In this blog, we discuss the role of the Cardano backend developer. The backend is a complex part of the decentralized application or dApp, as it touches on aspects related to the entire architecture of an application. 

The role also involves packaging a piece of code so it can be reused in other machines. All the different dependencies that make up a dApp are complex and replicating them in another computer can be challenging. Typically, maintenance of existing codebase can also be a major part of developmental activities. Here, the backend developer has an important part to play.

A backend blockchain developer is also another career path that developers from traditional industries use to enter into the blockchain. It’s not as common as web development, but still many have found their way following this route.

Let’s discuss the details of the backend developer.

The backend of a dApp
Becoming-a-Cardano-Blockchain-Backend-Developer-2

A dApp is made of many parts. In the case of Cardano, we have the on-chain validator, the off-chain code, a website, and maybe a database. The backend developer has to take all these different parts and make them work.

While a dApp is in development, most code will be in a local system while it’s being written and tested. Once the dApp has been production-ready, all that code needs to go into a server so it can accept requests 24/7.

That means integrating all the parts we discussed before and deploying them in a new environment. This can be a very complicated task as it requires managing the dependencies each portion of the dApps needs. Among the different ways to do this, in the Cardano ecosystem we commonly use Docker and/or NixOS:

  • Docker

In traditional development industries, Docker is a very familiar tool. It’s a way to create containers of programs where all the necessary dependencies are included, so it may easily deploy in a new environment. 

Docker is used in Cardano as a means to take the dApp code from a testing environment to the production one. This is a role that many projects need and also one that is demanded by the industry overall. 

  • NixOS

There is another way to package programs and that is NixOS. It’s a more ambitious project as it aims to be an operating system that uses functional programming principles to work, so its application goes far beyond creating containers. 

Yet, in that capacity, as a functional programming operating system, NixOS has found success as a way to create containers for projects. In the Cardano ecosystem, NixOS has many users as the regular way to compile Plutus code is using it. 

Anyone looking to apply their knowledge of NixOS to a practical setting will find a lot of work in Cardano. NixOS has become an integral part of the ecosystem and many have adopted NixOS for much more than compiling Plutus code. 

As a way to create containers, NixOS is an important tool for backend programmers. For this reason, it has become a bridge between people from NixOS and Cardano to share knowledge about functional programming. It can be a big opportunity to break into both ecosystems.

 

Read more: How to become a Cardano blockchain frontend developer

Managing decentralized storage

Another task that is not specific to a backend developer, but often falls on them because it shares some concepts with databases, is decentralized storage. Since the start of decentralized blockchain technology, many projects have looked to use its principles to open the internet and take away from the big cloud computing monopolies. 

Now many technologies have created solutions around this idea such as IPFS, Arweave, SiaTech, and many others that provide decentralized storage and web hosting solutions. 

Many dApps require such services, especially around the world of non-fungible tokens (NFTs). NFTs are an asset class where there is a piece of media represented on-chain by a token. This media is outside the blockchain ledger itself, in most cases it’ll be on one of the decentralized storage providers. 

To pair each NFT in storage with each token minted on the network, either a local database management system has to be set up, or a 3rd party IPFS pinning service can be utilized. This is even more important when we are using a validator to mint NFT on demand. 

The NFT doesn’t exist before being minted by the user, but the image (or other type of media) has to be ready for when the minting event happens. So, a system that takes one of the images from decentralized storage and pairs that with a recently minted NFT has to be created ahead of time. 

In most cases, this requires a database that manages this relation. Here, backend developers have the experience from traditional development and can have the knowledge required to give solutions to NFT projects. 

Train to become a backend blockchain developer with EMURGO Academy
Blog CTA Banner EMURGO Academy Dark

Enroll now with EMURGO Academy

 

EMURGO Academy, the education unit of Cardano founding entity EMURGO, has created a tailored online program to speed up the journey of a blockchain developer. The program includes the steps to install NixOS as a part of the Plutus development toolbelt required for compiling Plutus code. It also discusses the several ways decentralized storage is used in the creation of NFTs.

The program goes over the path required to deploy a smart contract to the Cardano network and the common dependencies used in such cases. The aim is to fast-track the journey for a new blockchain developer and introduce them to Cardano. 

Backend development is a much-needed role in the world of traditional technology. In blockchain development, it’s also a position in high demand. The different projects in Cardano require the knowledge only backend developers have. 

Cardano development naturally encourages specialization, there are clear roles that need to be filled for dApp development. Each one is a career path for those looking to enter into the ecosystem from diverse backgrounds.  

To get more course information and sign up, visit EMURGO Academy’s site here.        

About EMURGO

Disclaimer 

You should not construe any such information or other material as legal, tax, investment, financial, or other advice. Nothing contained herein shall constitute a solicitation, recommendation, endorsement, or offer by EMURGO to invest.

Related articles