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
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
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...
Chuẩn bị máy móc, môi trường làm việc
Cấu hình và môi trường nên đi thuê (xem bài này)
Thiết kế bài toán
Tạo lược đồ UML
Phát triển bài toán
Tạo môi trường CI
Đá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
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