Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 18 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
18
Dung lượng
795,65 KB
Nội dung
18 TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO THỰC TẬP LẬP TRÌNH HỆ THỐNG WEB TRÊN NỀN TẢNG NODEJS VÀ ONFLOW BLOCKCHAIN Công ty thực tập : TEGO GLOBAL Người phụ trách : Nguyễn Tấn Lực (Technical Leader) Thực tập sinh : Hồ Trung Nhân (Fresher Engineer) TP Hồ Chí Minh, tháng năm 2022 Hồ Trung Nhân Mục lục Mục lục Chương I: Giới thiệu công ty Giới thiệu công ty Tego Global Lĩnh vực làm việc Chương II: Nội dung thực tập Tìm hiểu công ty kỹ công ty Giới thiệu, làm quen với thành viên nhóm dự án Kế hoạch thực tập Lịch thực tập làm việc Chương III: Những kiến thức học trình thực tập .9 Kiến thức Golang Kiến thức Microservices 10 Kiến thức Git Technology 11 Kiến thức ngôn ngữ Cadence – Onflow Blockchain 12 Chương IV: Chi tiết project .14 Dự án Coderhub : 14 Dự án Sport Moment: 15 Chương V: Đánh giá nhận xét 17 Kết đạt được: 17 Những hạn chế : 17 Định hướng tương lai: 17 Chương VI: Tổng kết .18 Hồ Trung Nhân LỜI CẢM ƠN Sau trình học tập rèn luyện trường Đại học công nghệ thông tin để trau dồi kiến thức kỹ năng, em nhận nhiều quan tâm giúp đỡ q thầy cơ, gia đình bạn bè Với lịng biết ơn sâu sắc nhất, em xin gửi lời cảm ơn đến trường quý thầy cô khoa Hệ thống thông tin truyền đạt vốn kiến thức làm tảng cho em trình thực tập Em xin cảm ơn thầy cô Công ty cổ phần giải pháp công nghệ Tego Global tạo điều kiện cho em có hội tham gia thực tập cơng ty Trong q trình thực tập Cơng ty Tego Global, em trang bị kiến thức kinh nghiệm việc làm việc làm việc nhóm, làm việc với người nước ngoài, hiểu cách vận hành phát triển ứng dụng thiết bị di động nghiệp vụ khác công ty, giúp em mở mang khai sáng kiến thức có nhiều kinh nghiệm mà em chưa biết tới Em xin cảm ơn anh Nguyễn Tấn Lực, anh Nguyễn Duy Tuấn Quang anh chị dự án công ty đặc biệt giúp đỡ em, bảo em tận tình qua dự án khác trình thực tập Những kiến thức kinh nghiệm giúp em hồn thiện có thêm kinh nghiệm quy trình phát triển phần mềm Tuy nhiên, kinh nghiệm thực tiễn cịn hạn chế, báo cáo khơng thể tránh sai sót Chính vậy, em mong nhận ý kiến đóng góp Thầy, Cơ để em hoàn thiện thân tốt Xin chân thành cảm ơn thầy anh chị công ty Hồ Trung Nhân Hồ Trung Nhân Chương I: Giới thiệu công ty Giới thiệu công ty Tego Global • Tên công ty : Công ty cổ phần giải pháp cơng nghệ Tego Global • Website cơng ty : https://tego.global • Địa cơng ty : 28 Nguyễn Q Đức, Phường An Phú, thành phố Thủ Đức, Hồ Chí Minh • Văn Phịng: TM1.15, đường D1 tịa nhà Linh Tây, phường Linh Tây, thành phố Thủ Đức, Hồ Chí Minh • Điện Thoại : (+84) 38 730 6060 • Năm thành lập : 2015 • Mục tiêu sứ mệnh công ty : Tego Global công ty outsource có trụ sở thành phố Hồ Chí Minh Kể từ năm 2015 , Tego giúp cơng ty tồn cầu thương hiệu lâu đời hình dung lại hoạt động kinh doanh họ cách xây dựng giải pháp hiệu hỗ trợ công nghệ Hồ Trung Nhân Sứ mệnh Tego chuyển đổi công nghệ kĩ thuật số cho khách hàng cách tập hợp tài hàng đầu, chuyên môn sâu ngành cống hiến cá nhân để đáp ứng cầu kinh doanh riêng khách hàng Lĩnh vực làm việc Vì cơng ty outsource nên lĩnh vực làm việc tego global da dạng Bảo trì phát triển hệ thống : Java , C# , Nodejs , Angular , Python , Ruby on Rails, Golang, PHP…, hệ thống blockchain cardion , etherium, solana, onflow,… Tương tác với bao gồm hệ thống Mobile, Web, Game,…các dịch vụ bên thứ : Google cloud , AWS, Azure ,… Một số sản phẩm bật : Ngồi cơng ty cịn làm nhiều dự án product cơng ty : Coderhub, … Hồ Trung Nhân Chương II: Nội dung thực tập Tìm hiểu cơng ty kỹ công ty Thời gian : ngày Nội dung : Giới thiệu công ty, cách tổ chức công ty Được nghe người phụ trách giới thiệu cơng ty, q trình thành lập phát triên (như nhắc đến trên), quy trình làm việc từ cao xuống thấp, cách thức tổ chức cơng ty Ngồi ra, thực tập sinh giới thiệu cách thức làm việc công ty thời gian làm, quy định cần phải tuân thủ, cách sử dụng email công việc Kết : Hiểu thêm cơng ty Tego số dự án, q trình thành lập phát triển Có thêm kỹ việc sử dụng email công việc, làm việc có kế hoạch, có kỷ luật, có trách nhiệm Giới thiệu, làm quen với thành viên nhóm dự án Thời gian : ngày Nội dung : Giới thiệu Cell Team MAC, anh Nguyễn Tấn Lực làm leader Giới thiệu thành viên team, sản phẩm dự án team triển khai Kết : Làm quen thành viên team hiểu sản phẩm, dự án team làm Hồ Trung Nhân Kế hoạch thực tập Tuần 1-2 Kế hoạch thực tập tuần • Training Golang, Setup dự án Người Hướng Dẩn Nguyễn Tấn Lực Coderhub • Đọc thêm án, học thêm Nguyễn Tấn Lực Microservices • Nhận task, đọc source dự án • Tương tác với github, gitlab API để Nguyễn Tấn Lực lấy thông tin repository user 6-7 • Bàn giao hồn thành task cho project Nguyễn Tấn Lực • Tham gia dự án Sport Moment Nguyễn Duy Tuấn • Thảo luận cung cấp thông Quang tin dự án • Làm quen với ngơn ngữ cadence, học thêm blockchain • Tham gia sửa lỗi nhỏ Smart Contract Nguyễn Duy Tuấn Quang Hồ Trung Nhân Từ tuần • Thực task theo sprint team Nguyễn Tấn Lực , Nguyễn Duy Tuấn Quang Lịch thực tập làm việc Thời gian thực tập : • Ngày bắt đầu : 31/12/2021 • Ngày kết thúc : 31/3/2022 Thời gian làm việc : • Ca sáng : 9h -> 12h • Ca chiều 13h30 -> 18h • Số ca thực tập tuần : từ thứ -> thứ Hồ Trung Nhân Chương III: Những kiến thức học trình thực tập Kiến thức Golang Go ngơn ngữ lập trình Google thiết kế phát triển Nó kỳ vọng giúp ngành công nghiệp phần mềm khai thác tảng đa lõi vi xử lý hoạt động đa nhiệm tốt Ưu điểm • Hỗ trợ khai báo kiểu liệu động • Tốc độ biên dịch nhanh • Hỗ trợ tác vụ đồng thời Hồ Trung Nhân 10 • Ngơn ngữ đơn giản, ngắn gọn , dễ học, nắm bắt vịng vài tuần Tuy nhiên muốn ngơn ngữ trở nên đơn giản mà nhà phát triển loại bỏ số tính (mà cho hữu ích) có ngơn ngữ khác như: Nhược điểm • Không hỗ trợ thừa kế • Không hỗ trợ tải toán tử ghi đè phương thức Kiến thức Microservices Trong tiếng anh, micro có nghĩa nhỏ, vi mơ Vậy Microservice, tên nó, chia khối phần mềm thành service nhỏ hơn, triển khai server khác Mỗi service xử lý phần công việc Hồ Trung Nhân 11 kết nối với thông qua các giao thức khác nhau, http, SOA, socket, Message queue (Active MQ, Kafka) để truyền tải liệu Trước Microservices xuất hiện, ứng dụng thường phát triển theo mơ hình Monolithic architecture (Kiến trúc khối) Có nghĩa tất module (view, business, database) gộp project, ứng dụng phát triển theo mơ hình kiến trúc khối thường phân chia làm nhiều module Nhưng đóng gói cài đặt thành khối (monolithic) Lợi ích mơ hình kiến trúc khối dễ dàng phát triển triển khai Nhưng bên cạnh có nhiều hạn chế ví dụ khó khăn việc bảo trì, tính linh hoạt khả mở rộng kém, đặc biệt với ứng dụng doanh nghiệp có quy mơ lớn Đó lí đời kiến trúc Microservices Kiến thức Git Technology Git hệ thống quản lý phiên phân tán (Distributed Version Control System – DVCS), hệ thống quản lý phiên phân tán phổ biến Git cung cấp cho lập trình viên kho lưu trữ (repository) riêng chứa toàn lịch sử thay đổi Command quen thuộc : • Git add • Git push Hồ Trung Nhân 12 • Git commit … Kiến thức ngôn ngữ Cadence – Onflow Blockchain Cadence ngơn ngữ lập trình định hướng tài nguyên giới thiệu tính cho lập trình hợp đồng thơng minh giúp nhà phát triển đảm bảo mã code họ an toàn, bảo mật, rõ ràng dễ tiếp cận Cadence lấy cảm hứng từ Move, ngơn ngữ lập trình phát triển nhóm Libra Các đặc điểm cụ thể ngơn ngữ sau: Hoạt động an tồn có hệ thớng ổn định khoẻ mạnh • Hoạt động an tồn có hệ thống ổn định khoẻ mạnh • Ngơn ngữ lập trình hướng tài ngun, hoạt động theo chế tương thích với mơ hình tài nguyên đảm bảo tài nguyên (và tài sản liên quan Hồ Trung Nhân 13 chúng) tồn vị trí thời điểm, khơng thể chép bị xóa • Tích hợp điều kiện trước sau với chức giao dịch • Tính bảo mật cao hệ thống kiểm soát truy cập nghiêm ngặt Hồ Trung Nhân 14 Chương IV: Chi tiết project Dự án Coderhub : Giới thiệu : Coderhub dự án NFT giới mở, mục tiêu giúp người dùng có tìm kiếm dự án freelance để làm lúc nhàn rỗi Hiện version đầu , coderhub hổ trợ chủ yếu cho developer Những version đầu coderhub(Do bảo mật thơng tin nên em khơng thể đưa hình ảnh minh hoạ hơn) Coderhub bao gồm nhiều phần nhỏ bao gồm : • Thế giới 3D để tất người dung tương tác với game RPG mang thiên hướng chi bi trực quan sinh động • Hệ thống website tạo, nhận bounty cho phép người dùng kiếm tiền, bỏ tiền thuê freelancer làm việc • Hệ thống avatar tạo nên công nghệ AI tự động nhận diện khuôn mặt thành nhân vật 3D world Hồ Trung Nhân 15 • Hệ thống NFT, Crypto currency xây tảng Ethereum việc mua giao nhận bounty minh bạch Và tiền sử dụng để mua vật phẩm ảo game, chuyển thành sản phẩm ngồi đời thật • Hệ thống Internal Git, giúp lưu trử source code người người dụng tạo bounty, xử lý commit developer • Hệ thống backend viết cơng nghệ microservices tương tác dự cơng nghệ gRPC Rabbit MQ tảng golang, cho phép tất thành phần khác tương tác với cách nhanh chóng , hổ trợ nhiều concurrency user Dự án Sport Moment: Giới thiệu : Sport Moment dự án NFT để lưu trữ khoảnh khắc đẹp(Moment) cầu thủ bóng rổ AFL Người dùng mua bán Moment sưu tầm để tạo thành sưu tập mang lại giá trị mặt tinh thần lớn cho tin đồ bóng rổ Dự án có liên kết với nhiều CLB/liên đồn bóng rổ : NBL ,AFL, Melbourne Victory,… Hồ Trung Nhân 16 SportMoment viết dựa framework nestjs, nextjs,strapi cms onflow blockchain Hồ Trung Nhân 17 Chương V: Đánh giá nhận xét Kết đạt được: • Có thêm nhiều kinh nghiệm chun mơn : Golang, Cadence, gRPC • Kỹ làm việc nhóm, phân chia cơng việc, thời gian • Kỹ sử dụng review code member team, • Cơ q trình hoạt động project thực tế, • Nhìn nhận vấn đề đưa giải pháp cho dự án • Biết cách xây dựng Server quản lý source git technology Những hạn chế : • Vì kĩ thuật cịn yếu nên số task chưa hồn thành deadline • Chưa làm onsite nhiều thời điểm dịch bệnh Định hướng tương lai: • Cảm thấy thích thú phát triển tiếp với công việc mảng SmartContract cụ thể Onflow • Học thêm nhiều kinh nghiệm xử lí vấn đề nhanh chóng • Học thêm ngơn ngữ moblie Cadence(Ngơn ngữ lập trình smart contract onflow), Golang • Cải thiện kĩ ngoại ngữ để giao tiếp với khách hàng nước Hồ Trung Nhân 18 Chương VI: Tổng kết Như vậy, vòng vài tháng ngắn ngủi, em tham gia vào nhiều project khác Tego Global vai trò khác Hoàn thành task yêu cầu cấp đề Hoàn thành tháng thử việc trở thành nhân viên thức Tego Global Chân thành cảm ơn anh, chị công ty hỗ trợ em hoàn thành tập, giúp đỡ em nhiều đời sống Hồ Trung Nhân ... phát triển hệ thống : Java , C# , Nodejs , Angular , Python , Ruby on Rails, Golang, PHP…, hệ thống blockchain cardion , etherium, solana, onflow, … Tương tác với bao gồm hệ thống Mobile, Web, Game,…các... khoa Hệ thống thông tin truyền đạt vốn kiến thức làm tảng cho em trình thực tập Em xin cảm ơn thầy Công ty cổ phần giải pháp công nghệ Tego Global tạo điều kiện cho em có hội tham gia thực tập. .. tình qua dự án khác trình thực tập Những kiến thức kinh nghiệm giúp em hồn thiện có thêm kinh nghiệm quy trình phát triển phần mềm Tuy nhiên, kinh nghiệm thực tiễn hạn chế, báo cáo khơng thể tránh