P a g e | 1 Phạm Đăng Quang 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 DỰ ÁN COCO ỨNG DỤNG KẾT NỐI MENTEE VÀ MENTOR Công ty thực tập CrossTech Người phụ trách Phạm Trư[.]
Page |1 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 DỰ ÁN COCO - ỨNG DỤNG KẾT NỐI MENTEE VÀ MENTOR Công ty thực tập : CrossTech Người phụ trách : Phạm Trường Thiên Ân Thực tập sinh : Phạm Đăng Quang TP Hồ Chí Minh, tháng 12 năm 2022 Phạm Đăng Quang Page |2 LỜI MỞ ĐẦU Ngày nay, vị trí back-end phận thiếu ngành cơng nghiệp phần mềm nói chung phát triển web nói riêng Với tốc độ phát triển vơ mạnh mẽ, ngành phát triển web nhân tố kích thích phát triển cơng nghệ thơng tin giới, phần cứng phần mềm Cùng với xu phát triển giới, Việt Nam ngoại lệ Ngành công nghiệp phát triển phần mềm non trẻ Việt Nam phát triển mạnh mẽ, để hịa nhập với cơng ty hàng đầu giới Bên cạnh công ty phần mềm trẻ tuổi nước, công ty hỗ trợ cộng đồng CrossTech khơng nằm ngồi đua trình phát triển đưa đất nước phát triển Ngành phát triển web sinh nhu cầu người dùng internet công ty, doanh nghiệp, quan nhà nước,… thời đại chuyển đổi số nhanh chóng Và giới trẻ nguồn nhân lực quan trọng cho việc phát triển ngành phát triển web sau Vì lý này, em định chọn vị trí back-end web developer làm định hướng cho việc học tập Sau bốn năm học tập trường, mong muốn có thêm kinh nghiệm thực tế, muốn tham gia vào mơi trường chun nghiệp, em có dự định thực tập học kì Vì vậy, em định chọn CrossTech - môi trường lý tưởng, đại, động chuyên nghiệp - nơi giúp em thực dự định Phạm Đăng Quang Page |3 LỜI CẢM ƠN Trân trọng gửi lời cảm ơn Công ty CrossTech tạo điều kiện cho em có hội thực tập cơng ty Chỉ thời gian ngắn, nhờ dẫn nhiệt tình nhóm trainer, anh chị Mentor em tiếp thu kiến thức quan trọng để tham dự dự án thực tế Chân thành cảm ơn anh chị nhóm Mentor, anh trị ban điều hành bỏ nhiều thời gian,công sức để hướng dẫn chúng em hoàn thành đợt thực tập Đặc biệt cảm ơn anh Phạm Trường Thiên Ân, training Javascript, hướng dẫn, giúp đỡ cho em tận tình khó khăn cơng việc, đến khó khăn việc làm quen với môi trường mới; cảm ơn chị Nguyễn Thị Hồng Nhung, training Career, hỗ trợ chúng em nhiều vấn đề nghề nghiệp, định hướng tương lai ngành; cảm ơn anh Phùng Đức Chính, dẫn chúng em hoạt động nhóm, lên kế hoạch, kỹ thiếu Cũng xin cảm ơn thầy cô khoa Công nghệ phần mềm nhiệt tình hỗ trợ, tạo điều kiện em làm báo cáo Phạm Đăng Quang TpHCM, ngày 22 tháng 12 năm 2022 Phạm Đăng Quang Page |4 NHẬN XÉT CỦA KHOA Phạm Đăng Quang Page |5 MỤC LỤC MỤC LỤC Chương 1: Giới thiệu công ty thực tập Giới thiệu công ty CrossTech 2 Sản phẩm công ty Chương 2: Nội dung thực tập Tìm hiểu cơng ty kỹ công ty Nghiê n cứu kỹ thuật 3 Thực project Lịch làm việc Chương 3: Chi tiết dự án Giới thiệu Game Thực 11 Kế hoạch 11 TÀI LIỆU THAM KHẢO 13 TỔNG KẾT 14 Phạm Đăng Quang Page |6 Chương 1: Giới thiêu công ty thực tập Giới thiệu công ty Crosstech CrossTech thành lập năm 1999 Việt Nam, công ty cung cấp sản phẩm phần mềm tốt tảng đào tạo giáo dục miễn phí Sau ??? năm thành lập, CrossTech phát triển thành công ty đáng tin cậy với hợp tác nhiều đối tác lớn trường đại học miền đất nước Sản phẩm công ty CrossTech cung cấp ứng dụng dựa tảng đào tạo giáo dục định hướng quan trọng công ty Các ứng dụng khai CrU, Coco,… Cơng ty cung cấp khố học, workshop triền khai thành viên cơng ty liên kết với nhiều Mentor chất lượng từ nhiều công ty, trường đại học tiếng NashTech, WoflFun, Cosina Games, Casso, CMC Cloud,…… Phạm Đăng Quang Page |7 Nhờ thỏa thuận hợp tác với với nhiều bên khác nhau, CrossTech cung cấp đến cộng đồng nhiều khoá học chất lượng, chương trình intership nhiều lĩnh vực khác Phạm Đăng Quang Page |8 Chương 2: Nội dung thực tập Đợt thực tập với vị trí Back-end NodeJs Inter nhằm mục đích giúp sinh viên thực tập đào tạo tồn diện lập trình web, đồng thời rèn luyện kỹ mềm làm việc nhóm, thuyết trình, giao tiếp Tại cơng ty, sinh viên có hội học tập, khám phá làm việc môi trường làm việc động, chuyên nghiệ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 cịn 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 CrossTech, 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 Nghiên cứu kỹ thuật 2.1 2.2 Các công cụ làm việc Thời gian : ngày Nội dung : Tìm hiểu công cụ sử dụng trình làm việc Trong thời gian này,Mentor hướng dẫn thực tập sinh tìm hiểu cơng cụ giúp ích cho cơng việc sau Một số phần mềm số Jira - sử dụng làm việc nhóm, Visual studio code – trình soạn thảo, biên tập mã nguồn sử dụng rộng rãi, Postman - ứng dụng thao tác với API (Application Programing Interface) Thực : Thực hành sử dụng phần mềm nêu Kết : Lập trình sử dụng cơng cụ miễn phí, giúp dễ dàng kết hợp công cụ với nhau, vận hành linh hoạt ứng dụng hỗ trợ Tìm hiểu ngơn ngữ Javascript nâng cao Thời gian : ngày (1 tuần) Phạm Đăng Quang Page |9 Nội dung : Được training kỹ thuật Javascript nâng cao, kiến thức quan trọng cho việc tối ưu server - Lập trình hướng kiện Các kiến thức lập trình hướng kiện, đặc tính module hố, thiết kế function, mơ hình mvc, serverless,… Ngồi ra, thực tập sinh hướng dẫn cách thiết kế module cho controller ứng dụng - Error handling: Quản lý error phần quan trọng việc phát triển server vị trí backend, nodejs nói chung javascript nói riêng - Asynchronus programing Thao tác, xử lý kiện async, await, promise lập trình bất đồng - DAO : Data Access Object kỹ thuật giúp thao tác với lớp database server giúp cho việc phát triễn dễ dàng tách biệt với layor khác ứng dụng Thực : - Tham gia đầy đủ buổi training công ty - Áp dụng thực tế vào dự án kiến thức học Kết : - 2.3 Nâng cao kỹ lập trình với ngơn ngữ Javascript Có kiến thức quan trọng cho việc lập trình web sau Ngồi cịn biết thêm số quy tắc việc viết code cho chuẩn, dễ đọc, dễ hiểu API Testing Nội dung: Các kiến thức API testing RESTful api - Khái niệm RESTful: Năm khái niệm RESTful, tiêu chuẩn dùng việc thiết kế API cho ứng dụng web (Web services) để tiện cho việc quản lý resource Nó trọng tài nguyên hệ thống (tệp văn bản, âm thanh, ảnh, video liệu di động,….), bao gồm trạng thái tài nguyên khác định dạng truyền tải qua HTTP Phạm Đăng Quang P a g e | 10 Ngồi ra, trainer cịn cung cấp cho thực tập sinh khái niệm RESTful status code, controller, route, request…, khái niệm quan trọng lập trình web - Testing Manual: Làm để kiểm thử thủ công phần làm ra, kiểm thử trường hợp dựa theo yêu cầu đưa BA, kiểm sốt hạn chế sai sót trước chuyển giao cho phận QA Thực : - Tham gia đầy đủ buổi trainning Áp dụng vào dự án thực tế Coco viết api, kiểm thử, … Tìm kiếm tài liệu mạng để tìm hiểu thêm Kết : 2.4 Hiểu khái niệm lập trình web với API Cung cấp API testing đến phận QA FE Truy xuất database sử dụng ORM Nội dung : Các kỹ thuật truy xuất database MySql với Object-relational mapping - Định nghĩa Object-relational mapping: Object-relational mapping kỹ thuật/ chế lập trình sử dụng ánh xạ CSDL vào đối tượng ngơn ngữ lập trình Javascript, Java, C++,… - Truy xuất liệu với Object-relational mapping: Được trainner hướng dẫn truy xuất data từ database MySql - Thiết kế database với Object-relational mapping: Để lập trình ứng dụng web cần phải có sở liệu Ở dự án Coco sử dụng MySql cho việc lưu trữ liệu phía server Thiết kế sở liệu giúp thực chức dự án quản lý liệu Thực : - Tham gia đầy đủ buổi training Phạm Đăng Quang P a g e | 11 - Thiết kế áp dụng table vào sở liệu sẵn có dự án Coco Kết quả: • Áp dụng thành cơng table thiết kế vào database thực chức dự án Coco 2.5 Áp dụng Firebase vào gửi thông báo Nội dung : Áp dụng Firebase vào gửi thông báo đến người dùng sử dụng app mobile - Firebase: Back-end as service cung cấp cho nhà phát triển hàng loạt dịch vụ công cụ giúp nhà phát triển xây dựng ứng dụng, tăng trưởng người dùng kiếm lợi nhuận từ - Firebase admin SDK: Là tập hợp nhiều thư viện phía server giúp nhà phát triển tương tác với firebase thông qua nhiều môi trường phát triển khác thực hành động: tạo ghi liệu, gửi tin nhắn thông qua qua Firebase cloud, tạo xác minh mã xác thực Firebase , truy cập tài nguyên Google cloud,… Thực : - Tham gia đầy đủ buổi training Thiết kế áp dụng firebase vào chức gửi thông báo đến người dùng dự án Coco Kết quả: • Áp dụng thành cơng firebase vào ứng dụng hai phía Coco mobile Coco admin Thực project Sau tháng training thực hành, thực tập sinh nắm kiến thực Javascript, Nodejs, Sequelize Trong tháng thứ hai, trainer hướng dẫn thực tập sinh áp dụng kiến thức học để phát triển tính dự án Coco Phạm Đăng Quang P a g e | 12 Chi tiết đồ án nói phần sau Lịch làm việc Tuần Cơng việc Người hướng dẫn Tìm hiểu cơng ty, cách tổ chức công ty - Làm quen với công cụ làm việc công ty - Học cách trao đổi, làm việc qua email - Tìm hiểu ngơn ngữ lập trình Javascript nâng cao - Thực hành Javascript - Làm test Javascript - Tìm hiểu API Testing - Thực hành số cách testing - Manual testing - Tìm hiểu Sequelize - Thực hành tạo table sử dụng Sequelize Giai đoạn tham gia dự án: - Lên kế hoạch - Hiện thực chức - Tạo table lưu trữ chức thông qua Sequelize - Thiết kế API cung cấp cho bên QA, FE, QC Chị Nguyễn Thị Hồng Nhung - Mức độ hoàn thành Nhận xét người hướng dẫn Anh Phạm Trường Thiên Ân Chị Lại Thị Hồng Thơm Anh Phạm Hoàng Việt Anh Phạm Trường Thiên Ân Anh Phạm Hoàng Việt Phạm Đăng Quang P a g e | 13 Chương 3: Chi tiết Dự án Coco Giới thiệu dự án Dự án Coco ứng dụng cung cấp khố học có phí trả phí cho cộng đồng lập trình trẻ hướng đến đối tượng quan tâm đến ngành công nghệ thông tin nhiều ngành nghề khác Coco xây dựng tảng kết nối cộng đồng mentor mentee, cung cấp chương trình định hướng mentor bám sát thực tế, hỗ trợ cho mentee, cung cấp khố học cam kết chất lượng đầu vào, đưa đến tiện ích tối ưu cho bạn trẻ, giúp định hướng nghề nghiệp, trở thành mentor tương lai 1.1 Tầm nhìn • Coco phấn đấu trở thành tảng kết nối mentor mentee hang đầu Việt Nam cách tập trung vào phát triển chất lượng, dịch vụ, mạng lưới Mentor rộng lớn, đa dạng lĩnh vực, khoá học bám sát thực tế, đáp ứng nhu cầu người dùng • Tiên phong đổi mới, sáng tạo, phát triển tính cần thiết theo kịp xu hướng, thói quen người dùng để từ nhanh chóng chiếm lĩnh thị trường để thu hút khách hang 1.2 Sứ mệnh • Giúp bạn trẻ tìm kiếm người đồng hành lĩnh vực • Là nơi kết nối sinh viên Mentor có thành tích xuất sắc người chuyên gia lĩnh vực • Hỗ trợ bạn trẻ định hướng đường nghề nghiệp, khám phá thân, từ phát huy hết lực • Mang đến cho người dùng hội hấp dẫn việc làm, hoạt động xã hội, tin tức cập nhật Phạm Đăng Quang P a g e | 14 Business model doanh thu • Business Model : B2C2C • Doanh thu chương trình mentor-mentee đến từ ➢ Affiliate Marketing khóa học ➢ Quảng cáo : hình thức quảng cáo ➢ Quyên góp ➢ Headhunt(Từ hỗ trợ định hướng nghề nghiệp)liên kết với đối tác để tạo cầu nối ➢ Bán khóa học(Crosstech+) Giao diện sảm phẩm Coco mobile • Khu vực đăng nhập Phạm Đăng Quang P a g e | 15 • Khu vực trang chủ Phạm Đăng Quang P a g e | 16 • Khu vực cộng đồng tin nhắn Phạm Đăng Quang P a g e | 17 • Khu vực thơng báo Phạm Đăng Quang P a g e | 18 • Khu vực cá nhân Phạm Đăng Quang P a g e | 19 • Khu vực thơng tin cá nhân Phạm Đăng Quang P a g e | 20 Giao diện sảm phẩm Coco admin • Đăng nhập • Quản lý tài khoản người dùng Phạm Đăng Quang P a g e | 21 • Quản lý tài khoản hệ thống • Quản lý khoá học Phạm Đăng Quang P a g e | 22 • Quản lý thơng báo • Quản lý tiện ích • Quản lý hồ sơ Phạm Đăng Quang P a g e | 23 TÀI LIỆU THAM KHẢO NodeJs https://nodejs.org/en/ Sequelize https://sequelize.org/docs/v6/getting-started/ MySql https://www.mysql.com/ Firebase https://firebase.google.com/ Javascript https://developer.mozilla.org/en-US/docs/Web/JavaScript Phạm Đăng Quang P a g e | 24 TỔNG KẾT Như vậy, khoảng thời gian thực tập em tham gia vào dự án thực tế triển khai vào áp dụng nhiều công nghệ việc phát triển vận hành sảm phẩm Chân thành cảm ơn giúp đỡ anh chị nhóm trainer CrossTech, nỗ lực anh chị Mentor để tham gia phát triển ứng dụng Phạm Đăng Quang ... 11 - Thiết kế áp dụng table vào sở liệu sẵn có dự án Coco Kết quả: • Áp dụng thành cơng table thiết kế vào database thực chức dự án Coco 2.5 Áp dụng Firebase vào gửi thông báo Nội dung : Áp dụng. .. vào ứng dụng hai phía Coco mobile Coco admin Thực project Sau tháng training thực hành, thực tập sinh nắm kiến thực Javascript, Nodejs, Sequelize Trong tháng thứ hai, trainer hướng dẫn thực tập. .. Object-relational mapping: Để lập trình ứng dụng web cần phải có sở liệu Ở dự án Coco sử dụng MySql cho việc lưu trữ liệu phía server Thiết kế sở liệu giúp thực chức dự án quản lý liệu Thực : - Tham