Kỹ năng ứng dụng chuỗi khối

Kỹ năng cho Kỹ sư xây dựng ứng dụng chuỗi khối - Blockchain Application Engineer

  1. CƠ BẢN (xem và học khóa Xây dựng ứng dụng BlockChain cơ bản - devbc18)

    • Đọc hiểu yêu cầu khách hàng

    • Phân tích yêu cầu khách hàng ra yêu cầu bài toán ứng dụng chuỗi khối

    • Lập các chiến lược: xem clip: https://www.youtube.com/watch? v=VrAjSjIN-5Q&list=PL0ANjPcxElLj6IBG_hP99O3U3jWv-B7at&index=2

    • Tham khao: https://hyperledger-fabric.readthedocs.io/en/release-2.2/

    • Tham khao: https://ethereum.org/en/developers/docs/

    • Tham khao: https://docs.corda.net/docs/corda-os/4.8/tutorials-index.html

    • Tham khảo kỹ thuật: mô hình phát triển: waterfall, agile,

      • Kỹ thuật: tạo ứng dụng phần mềm công nghệ thông tin nói chung (Google ra): phân rõ 3 lớp: logic client, logic backend, logic smartcontract

      • Kỹ thuật: lựa chọn mô hình chuỗi khối có sẵn hoặc tạo mới: Openchain, Multichain, H.Fabric, Bitcoin, Ethereum...

      • Kỹ thuật: áp dụng công nghệ bảo mật áp dụng: RSA, MD5, TLSv1.2

      • Kỹ thuật: lựa chọn thuật toán đồng thuận (có trên blockchain) phù hợp với tài nguyên bạn có

      • Kỹ thuật: lập trình với ngôn ngữ smartcontract mà mạng blockchain hỗ trợ; các logic cần xử lý trên mạng; logic cần xử lý phần backend; logic cần xử lý trên client

      • Kỹ thuật: phân tích công nghệ máy trạm phù hợp khi là html, js; UI trên ngôn ngữ client

      • Kỹ thuật: phân tích loại giao thức (protocol) phù hợp với từng kiểu giao dịch, ra vào mạng blockchain đã chọn

      • Kỹ thuật: các kỹ thuật cảnh báo tiến trình, xử lý tiến trình, cảnh báo tài nguyên trong quá trình xử lý; biết khi nào xử lý nào api nào đang lỗi; tài nguyên nào đang thiếu

      • Kỹ thuật: kỹ thuật replay khi có một giao dịch bị lỗi; bảo toàn giao dịch luôn phải được thực hiện khi từ client tới mạng blockchain

      • Kỹ thuật: kỹ thuật chuyển đổi request sang pubsub, queue; tránh bị rủi ro độ trễ, mất mát gọi api, dính vào api

  2. Chuẩn bị kiến thức cập trình xử lý dữ liệu

    • Lập trình cơ bản với ngôn ngữ phù hợp với team frontend, backend app, backend blockchain

    • Lập trình cơ bản với thư viện, database, framework sẵn có: Ethereum, Hyperledger Fabric, MS SQL, CouchDB, NodeJS, Go, .NET, Java...

  3. Chuẩn bị máy móc, môi trường làm việc

  4. Thiết kế bài toán

    • Tạo lược đồ UML

  5. Phát triển bài toán

    • Tạo môi trường CI

  6. Đánh giá kiểm định bài toán

    • Đánh giá kết quả kiểm tra, test trên mạng chuỗi khối

  7. MỞ RỘNG (xem và học khóa Devbc19, Devbc20)

    • Tạo mạng chuỗi khối riêng

    • Phân tích tối ưu tốc độ giao dịch

    • Thay đổi kiểu đồng thuận