Ethereum Decentralized Application Engineer

Duration: 5-days in-person OR 5-half-days virtual.

Workload: 35 hours (including 15 hours of homework for virtual).

Price: €2185 per person. Discounted price for groups of participants. Contact-us for details.

Description:

The Ethereum Decentralized Application Engineer course will teach you how to build applications able to interact with smart contracts stored on the blockchain. You will also learn how to develop, test, and deploy interconnected advanced and secure smart contracts on the Ethereum blockchain. After this course, you will become proficient in building a complete blockchain solution in the form of a decentralized application.

Audience: IT professionals with experience in programming.

Prerequisites: programming, experience with basic web development (HTML, CSS and JavaScript) and terminal (no blockchain knowledge required).

Requirements: computer with admin rights for installation of applications (Linux or MacOS highly recommended). For virtual classroom, fast internet and zoom client installed (webcam and microphone recommended).

What is included:

  • Intructor-led classes
  • Practice activity (homework for virtual)
  • Chat support during the course period
  • Material (PDF provided after the training)
  • Certification

Blockchain & Ethereum Basics

  • Introduction - What you will learn in this unit and an overview of blockchain and Ethereum.
  • Blockchain Basics - In this lesson, you will understand what blockchain is, how it works, current challenges, and learn important concepts such as trust, decentralization, and consensus.
  • Workshop - Participants will interact with a functional blockchain by creating accounts and submitting transactions.
  • Ethereum Basics - In this lesson, you will understand what makes Ethereum a multipurpose blockchain and learn key concepts such as smart contracts and decentralized applications.
  • Workshop - Participants will see a smart contract in action and interact with a decentralized application.

Blockchain for Your Industry (contact us for Tailor-Made)

  • Introduction - What you will learn in this unit, introduction to important entities such as EEA, and an overview of possible applications of the blockchain technology.
  • Blockchain Use Cases - With this lesson, you will know which industries blockchain affects and what are its most relevant use cases. You will also see some international case studies.
  • Workshop - Participants will explore a decentralized application that uses the blockchain technology to solve a problem in the real world or enable an important feature in its industry.
  • Blockchain Decision Framework - In this lesson, you will see different blockchain decision frameworks to help you to identify when blockchain is a valid solution to add value or solve a specific problem.
  • Workshop - Groups of participants will brainstorm business opportunities with potential applicability of the blockchain technology and select the top ones to develop business models to present to the class.

Ethereum Technical Specification

  • Introduction - What you will learn in this unit and an overview of the available Ethereum papers, EIPs and other documentation.
  • Ethereum Documentation - In this lesson, you will understand the technical details of the Ethereum Virtual Machine, its data structures, and used encodings.
  • Workshop - Participants will explore blockchain files stored in disc and analyze their data using the information provided by the Ethereum documentation.
  • Ethereum 1.X and 2.0 - In this lesson, you will understand the improvements and current state of the newest versions of the Ethereum blockchain.
  • Workshop - Participants will explore the Ethereum 2.0 and other new relevant resources for this blockchain version.

Ethereum Infrastructure & Network

  • Introduction - What you will learn in this unit and an overview of the available tools to interact with the Ethereum blockchain.
  • Ethereum Clients - In this lesson, you will learn how to use the most popular Ethereum clients and backend APIs.
  • Workshop - Participants will utilize a software client to connect and interact with a functional Ethereum blockchain.
  • Ethereum for Enterprises - In this lesson, you will learn permissioning, privacy, and other solutions for enterprises in an Ethereum environment.
  • Workshop - Participants will set up a private blockchain with multiple nodes using different consensus algorithms.

Ethereum Smart Contracts - Programming

  • Introduction - What you will learn in this unit and an overview of different Ethereum development environments and the most relevant tools.
  • Solidity Basics - In this lesson, you will learn how to create smart contracts using the Solidity programming language.
  • Workshop - Participants will develop different smart contracts using Solidity and interact with them using different tools.
  • Solidity Advanced - In this lesson, participants will go further in the Solidity features to develop more advanced smart contracts.
  • Workshop - Participants will be challenged with more complex requirements to develop advanced smart contracts using Solidity.

Ethereum Smart Contracts - Quality Assurance

  • Introduction - What you will learn in this unit and an overview of tools and techniques used to test smart contracts.
  • Solidity Compiler - In this lesson, you will understand the details of the Solidity compiler and also learn how to debug your smart contract code.
  • Workshop - Participants will explore the options of the Solidity compiler and analyze the different compiling results.
  • Testing Smart Contracts - In this lesson, you will learn how to create unit tests in Solidity and JavaScript for your smart contracts.
  • Workshop - Participants will create unit tests for a smart contract in order to ensure that its logic is properly programmed.

Ethereum Smart Contracts - Patterns

  • Introduction - What you will learn in this unit and an overview of smart contract standards and conventions.
  • Design Patterns for Smart Contracts - This lesson will show you the most important patterns that you should be using when creating your smart contracts.
  • Workshop - Participants will develop a more complex smart contract that requires multiple of the learned design patterns.
  • Standards for Smart Contracts - In this lesson, you will understand what the ERC standards are and also learn how to use some of the most relevant of them.
  • Workshop - Participants will implement a smart contract using one of the presented ERC standards.

Ethereum Smart Contracts - Security

  • Introduction - What you will learn in this unit, the particularities of smart contract development, and an overview of the options available to increase security in smart contracts.
  • Security for Smart Contracts - In this lesson, you will learn how to make your Solidity smart contracts more secure and also understand the most common attacks.
  • Workshop - Participants will identify vulnerabilities in smart contracts and use learned techniques to improve their security.
  • Vyper Basics - This lesson will show you how to use Vyper, a programming language designed to build more secure smart contracts.
  • Workshop - Participants will develop secure smart contracts using the Vyper and interact with them using different tools.

Ethereum Decentralized Applications

  • Introduction - What you will learn in this unit, what is a decentralized application, and a general view of a Dapp architecture.
  • Ethereum Front-end APIs - In this lesson, you will learn how to use frontend APIs to enable your application to interact with the blockchain.
  • Workshop - Participants will build a decentralized application using a frontend API to connect to a smart contract on the blockchain.
  • Decentralized Storage - In this lesson, you understand what are the benefits of decentralized storage and learn how to use it.
  • Workshop - Participants will use a decentralized storage network to store files for a decentralized application.

Ethereum Dapp Hackathon

  • Introduction - General goal of the hackathon, what is expected to be built, and team allocation to participants.
  • Hackathon Dapp Design - Each team will select an idea, design a blockchain-based solution, and create a plan to build it.
  • Workshop - Teams will present their ideas and plans to the class in addition to answering any questions from other teams.
  • Hackathon Dapp Development - Each team will develop a decentralized application for its blockchain-based solution by executing their plan.
  • Workshop - Teams will present their built decentralized applications to the class and answer questions from other teams.
 

IN-PERSON CLASSROOM:

VIRTUAL CLASSROOM: