Đăng ký Đăng nhập
Trang chủ Giáo dục - Đào tạo Cao đẳng - Đại học Công nghệ thông tin Báo cáo thực tập xây dựng product pulsely...

Tài liệu Báo cáo thực tập xây dựng product pulsely

.PDF
28
1
73

Mô tả:

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH 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 XÂY DỰNG PRODUCT PULSELY Công ty thực tập Người phụ trách hướng dẫn Thực tập sinh MSSV GEEK UP TECHNOLOGY JSC Nguyễn Minh Trung Nguyễn Đức Hướng 19521592 TP.Hồ Chí Minh, tháng 06 năm 2022 LỜI MỞ ĐẦU Vào thế kỷ 21, Cuộc Cách mạng Công nghiệp 4.0 Internet nói chung và ngành công nghiệp Phát triển Ứng dụng di động là một phần không thể thiếu của thế giới. Với tốc độ phát triển vô cùng mạnh mẽ, ngành Phát triển Ứng dụng di động đã và đang nắm vai trò chủ chốt trong nền kinh tế thế giới, và tiềm năng của ngành vẫn còn có thể đi xa hơn trong tương lai khi mọi người có thể thực hiện mọi thứ với chiếc điện thoại di động thông minh. Cùng với xu thế phát triển của thế giới, Việt Nam cũng không phải ngoại lệ. Ngành công nghiệp Phát triển Ứng dụng di động của Việt Nam đang phát triển rất mạnh mẽ, đủ sức hòa nhập, hợp tác với những công ty hàng đầu về xây dựng ứng dụng điện thoại trên thế giới. Sau quá trình học tập và rèn luyện tại khoa Công nghệ phần mềm trường Đại học Công nghệ Thông tin chúng em đã được trang bị các kiến thức về chuyên môn và kỹ năng mềm. Với mong muốn bổ sung thêm kinh nghiệm và các kỹ năng làm việc trong một môi trường chuyên nghiệp, em lên kế hoạch cho một khóa thực tập trong học kỳ này. Sau khi tìm hiểu về lịch sử phát triển và văn hóa thì em quyết định chọn Công Ty Cổ phần Công nghệ Geek Up - một môi trường lý tưởng, hiện đại, chuyên nghiệp - là nơi sẽ giúp em thực hiện hóa dự định này. 1 LỜI CẢM ƠN Em xin chân thành cảm ơn nhà trường và quý thầy cô trường Đại học Công Nghệ Thông Tin đã tận tâm hướng dẫn, giảng dạy cho em những kiến thức chuyên môn cũng như kỹ năng mềm trong hơn 3 năm ngồi trên giảng đường đại học, từ đó đã xây dựng cho em nền tảng vững chắc tạo giúp em thực hiện hóa ước mơ. Trân trọng gửi lời cảm ơn Công ty Cổ phần Công nghệ Geek Up đã tạo điều kiện cho em có cơ hội được thực tập tại công ty, cho em trải nghiệm một môi trường làm việc cực kỳ chuyên nghiệp và hiệu quả. Cùng với các người đồng đội trong kỳ thực tập, em mong rằng chúng em đã để lại một dấu ấn, những kỷ niệm đẹp trong kỳ thực tập vừa qua. Chỉ trong một thời gian ngắn, nhưng nhờ sự chỉ dẫn nhiệt tình của các anh chị hướng dẫn, nhóm thực tập chúng em đã tiếp thu được những kiến thức quan trọng để có thể làm được một Trusted Product. Chân thành cảm ơn các anh chị trong nhóm hướng dẫn đã bỏ ra 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 này. Bên cạnh kinh nghiệm quý báu về kỹ năng chuyên môn về Phát triển WebApp, còn có những kỹ năng về làm việc nhóm, quy trình làm việc chuyên nghiệp. Các anh chị hướng dẫn đã dạy em những kỹ thuật cần thiết trong giao tiếp và truyền đạt cho em những kinh nghiệm của anh chị trong quá trình làm việc, trao đổi với khách hàng và tinh thần trách nhiệm với công việc và với đồng đội. Các anh chị đã tạo cho em nhiều cơ hội để ứng dụng những kiến thức đó ngay vào thực tế để xây dựng dự án thực tiễn đi từ lúc ban đầu, nâng cao trình độ, cũng như tốc độ lập trình và trí thức thêm một bậc. Em xin chân thành cảm ơn! Nguyễn Đức Hướng TP.Hồ Chí Minh, tháng 06 năm 2022 2 NHẬN XÉT CỦA KHOA …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… ………………………………………………………………..…………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………..………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………..………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… ……………………………………………………..……………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… ………………..…………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… ………………………………………………………………………………..…………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………..………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… 3 LỜI MỞ ĐẦU ............................................................................................................................................ 1 LỜI CẢM ƠN ............................................................................................................................................ 2 NHẬN XÉT CỦA KHOA .......................................................................................................................... 3 Chương 1: Giới thiệu công ty thực tập ................................................................................................... 5 1. Giới thiệu công ty GEEKUp .......................................................................................................... 5 2. Sản phẩm của công ty ..................................................................................................................... 6 Chương 2: Nội dung thực tập ................................................................................................................. 9 1. Tìm hiểu công ty và các kỹ năng cơ bản trong công ty .................................................................. 9 2. Nghiên cứu kỹ thuật ..................................................................................................................... 10 2.1. Tìm hiểu thư viện ReactJs, DvaJs & AntDesign trong phát triển ứng dụng Web ................ 10 2.2. Git và các quy tắc sử dụng .................................................................................................... 12 2.3. Phát triển Ứng dụng Web trên thư viện ReactJs ................................................................... 13 2.4. Mô hình Agile ....................................................................................................................... 13 3. Thực hiện project .......................................................................................................................... 15 4. Lịch làm việc ................................................................................................................................ 15 Chương 3: Chi tiết về project Pulsely .................................................................................................. 20 1. Giới thiệu về Pulsely .................................................................................................................... 20 2. Vì sao cần có Pulsely? .................................................................................................................. 20 3. Cấu trúc của Pulsely ..................................................................................................................... 20 4. Mục tiêu của Pulsely .................................................................................................................... 21 5. Các chức năng chính của Pulsely ................................................................................................. 22 TỔNG KẾT .............................................................................................................................................. 26 1. Thành quả ..................................................................................................................................... 26 2. Cần cải thiện trong thời gian tới ................................................................................................... 26 3. Cảm nhận của bản thân về công ty ............................................................................................... 26 TÀI LIỆU THAM KHẢO ........................................................................................................................ 27 4 Chương 1: Giới thiệu công ty thực tập 1. Giới thiệu công ty GEEKUp ● Tên đơn vị: Công ty Cổ phần Công nghệ Geek Up (GEEK UP TECHNOLOGY JSC) ● Lĩnh vực hoạt động: Xuất bản phần mềm ● Địa chỉ: ○ Trụ sở chính: 244/31 Huỳnh Văn Bánh, Phường 11, Quận Phú Nhuận, Thành phố Hồ Chí Minh ○ Chi nhánh: 27B / 9 Nguyễn Đình Chiểu, Phường Đa Kao, Quận 1, Thành phố Hồ Chí Minh ● Trang web: www.geekup.vn ● Email: [email protected] ● Điện thoại: +84 28 6262 4400 ● Thời gian làm việc: Thứ 2 đến thứ 6: 08h30 - 17h30 ● Slogan: “Insightful development” ● Sứ mệnh: Xây dựng các sản phẩm phần mềm mang lại nhiều giá trị cho người dùng ● Giá trị cốt lõi ○ Honesty: Sống hết mình với đam mê, là chính mình và phấn đấu hướng tới những giá trị chung. ○ Geeks Get it done: Luôn cố gắng hoàn thành công việc đạt kết quả mong đợi. ○ High standard: Luôn thử thách bản thân để nâng cao trình độ chuyên môn. ○ Stay Hungry, Stay Foolish: Không dừng lại với khả năng hiện tại, luôn tiếp tục trau dồi học hỏi. 5 2. Sản phẩm của công ty TP BANK - Ngân hàng số hàng đầu Việt Nam Nâng cao trải nghiệm người dùng cho Ngân hàng số tiên phong Thiết kế giao diện, trải nghiệm người dùng cho hệ sinh thái các ứng dụng của TPBank, ứng dụng TPBank đã được xếp hạng Top 1 lĩnh vực tài chính Việt Nam trên App Store/ Play Store năm 2020. 6 The Coffee House - Chuỗi cà phê tăng trưởng nhanh số 1 tại Việt Nam Nền tảng Loyalty platform đầu tiên cho chuỗi cafe hàng đầu Việt Nam Hiện thực hóa chương trình khách hàng thân thiết của The Coffee House từ phiên bản MVP kiểm thử đầu tiên, giúp họ chuyển đổi hoạt động kinh doanh từ offline sang online. 7 SMRT - nhà điều hành giao thông công cộng đa phương thức hàng đầu ở Singapore Nền tảng giao thông công cộng thay đổi trải nghiệm di chuyển của 6 triệu người dân Singapore GEEK Up hợp tác với Tập đoàn SMRT xây dựng nền tảng mới mang đến trải nghiệm giao thông công cộng thuận tiện tại Singapore. 8 Chương 2: Nội dung thực tập Đợt thực tập với chủ đề “Xây dựng Product Pulsely” và mục tiêu là xây dựng server, client trên nền tảng Web và Mobile (Android), đồng thời rèn luyện những kỹ năng mềm như làm việc nhóm, thuyết trình, giao tiếp. Tại công ty, sinh viên có cơ hội được học tập, khám phá và làm việc trong một môi trường phát triển Product chuyên nghiệp. 1. Tìm hiểu công ty và các kỹ năng cơ bản trong công ty Thời gian : 3 ngày Nội dung : Giới thiệu về công ty, cách tổ chức của công ty Được nghe người phụ trách giới thiệu về công ty, quá trình thành lập và phát triển, quy trình làm việc để deliver một sản phẩm, cách thức tổ chức của công ty, tinh thần của mọi người trong công ty Geek Up, các vị trí hiện tại trong công ty, cách mọi người trong công ty làm việc với nhau,… Ngoài ra, thực tập sinh còn được giới thiệu về cách thức làm việc trong công ty như thời gian đi làm, các quy định cần phải tuân thủ, các bước cần thực hiện trước khi bắt đầu vào làm, trong quá trình làm việc và khi kết thúc một ngày làm việc. Tìm hiểu về các công cụ sẽ được sử dụng trong quá trình làm việc. Cũng trong thời gian này, các anh chị hướng dẫn thực tập sinh tìm hiểu các công cụ phục vụ cho từng mục đích cụ thể khi làm việc. Hầu hết các công cụ đều là sản phẩm lưu hành nội bộ công ty, ngoài ra còn có các ứng dụng, phần mềm hỗ trợ như Google Meet – phục vụ cho mục đích gặp và trao đổi trực tiếp trong bối cảnh WFH, Zoom – phục vụ cho nhu cầu tham gia các buổi Workshop, Seminar hay Meeting diễn ra thường xuyên và đều đặn trong công ty. Kết quả : Hiểu thêm về công ty Geek Up, quá trình thành lập và phát triển cho đến hiện tại. Cách vận hành trong công ty, cách phối hợp với nhau giữa các thành viên. Có thêm các kỹ năng về việc quản lý dự án, tinh thần trách nhiệm, kỹ năng giao tiếp qua các công cụ do công ty cung cấp. 9 2. Nghiên cứu kỹ thuật 2.1. Tìm hiểu thư viện ReactJs, DvaJs & AntDesign trong phát triển ứng dụng Web Thời gian : 1 ngày song song với thực hành trong suốt quá trình thực tập. Nội dung : Được training về các kỹ thuật liên quan đến ngôn ngữ lập trình Javascript và các thư viện hỗ trợ xây dựng ứng dụng Web bao gồm: ● ReactJs: Cấu trúc của một Project ReactJs, các Hooks được ReactJs cung cấp (useState, useEfffect,..), cách chia tách các Component hợp lý ● DvaJs: Là một thư viện giúp quản lý trạng thái của ứng dụng (State Management) tương tự Redux-Saga. Hiểu được cách thức quản lý trạng thái: ○ Khi truy cập đến trang Web bằng một URL, ReactJs sẽ dược vào route được gọi để render ra đúng page người dung yêu cầu. ○ Khi người dung thực hiện một hành động nào đó ảnh hưởng đến trạng thái của ứng dụng (Thêm mới câu hỏi, sửa câu hỏi,..), một Action sẽ được dispatch đến Effect / Reducer để xử lý. ■ Effect: Xử lý các tác vụ với Server (Call API để nhận / thay đổi dữ liệu) nhờ cơ chế bất đồng bộ ■ Reducer: Thay đổi trực tiếp trạng thái (State) của ứng dụng Web ○ State sẽ kết nối trực tiếp đến Route Component để cung cấp dữ liệu cho trang Web. UI trên web sẽ được cập nhật liên tục khi State thay đổi ● ● Ant Design (AntD): Một UI Library tương tự Material UI. Hiểu được cách sử dụng các component mà AntD hỗ trợ, đặc biết là Form được AntD cung cấp hỗ trợ rất mạnh cho việc quản lý tạo Form và xác thực dữ liệu trên form. Ngoài ra, Coach cũng hỗ trợ việc tìm hiểu về Less (Một CSS-Preprocessor) để hiện thực UI và custom các Component của AntD theo ý muốn. Thực hiện: ● Tham gia đầy đủ các buổi training của team cùng Coach. ● Làm các bài thực hành, kiểm tra về kiến thức đã học. Kết quả: ● Nâng cao kỹ năng lập trình với ngôn ngữ Javascript. ● Có được những kiến thức quan trọng cho việc phát triểu ứng dụng Web sau này. 10 ● Nắm được những tiêu chuẩn khi thiết kế một trang Web, phù hợp với người dung cuối. ● Ngoài ra còn được biết thêm một số quy tắc trong việc viết code sao cho đúng chuẩn, dễ đọc, dễ hiểu, dễ bảo trì. 11 2.2. Git và các quy tắc sử dụng Thời gian : 0.5 ngày song song với thực hành trong suốt quá trình thực tập. Nội dung : Được training về các kỹ thuật liên quan đến việc sử dụng Git một cách hiệu quả. ● Git là tên gọi của một Hệ thống quản lý phiên bản phân tán (Distributed Version Control System – DVCS) là một trong những hệ thống quản lý phiên bản phân tán phổ biến nhất hiện nay. DVCS nghĩa là hệ thống giúp mỗi máy tính có thể lưu trữ nhiều phiên bản khác nhau của một mã nguồn được nhân bản (clone) từ một kho chứa mã nguồn (repository), mỗi thay đổi vào mã nguồn trên máy tính sẽ có thể ủy thác (commit) rồi đưa lên máy chủ nơi đặt kho chứa chính. Và một máy tính khác (nếu họ có quyền truy cập) cũng có thể clone lại mã nguồn từ kho chứa hoặc clone lại một tập hợp các thay đổi mới nhất trên máy tính kia. Trong Git, thư mục làm việc trên máy tính gọi là Working Tree. ● Ngoài ra, có một cách hiểu khác về Git đơn giản hơn đó là nó sẽ giúp ta lưu lại các phiên bản của những lần thay đổi vào mã nguồn và có thể dễ dàng khôi phục lại dễ dàng mà không cần copy lại mã nguồn rồi cất vào đâu đó. Và một người khác có thể xem các thay đổi của bạn ở từng phiên bản, họ cũng có thể đối chiếu các thay đổi của bạn rồi gộp phiên bản của bạn vào phiên bản của họ. Cuối cùng là tất cả có thể đưa các thay đổi vào mã nguồn của mình lên một kho chứa mã nguồn. ● Cơ chế lưu trữ phiên bản của Git là nó sẽ tạo ra một “ảnh chụp” (snapshot) trên mỗi tập tin và thư mục sau khi commit, từ đó nó có thể cho phép bạn tái sử dụng lại một ảnh chụp nào đó mà bạn có thể hiểu đó là một phiên bản. Đây cũng chính là lợi thế của Git so với các DVCS khác khi nó không “lưu cứng” dữ liệu mà sẽ lưu với dạng snapshot. ● Cấu trúc branch: ○ Master: là nhánh chính, run trên production. ○ Development (/dev): là nhánh replica cho nhánh master cộng với các nhánh feature đang được phát triển ○ Feature (/dev/feature-home): được tách từ nhánh dev, chức năng sau khi được phát triển sẽ được merge vào dev trước khi merge vào master Thực hiện : ● Tham gia đầy đủ các buổi training của công ty. ● Áp dụng tốt vào quá trình deliver dự án. Kết quả : ● Hiểu và thành thạo kỹ năng sử dụng Git. 12 2.3. Phát triển Ứng dụng Web trên thư viện ReactJs Thời gian: 2 ngày song song với thực hành trong suốt quá trình thực tập. Nội dung: Được training về các kiến thức căn bản cần thiết và các kỹ năng, những điểm cần chú ý trong quá trình phát triển ứng dụng Web. Song song với kiến thức và kỹ năng của lập trình ứng dụng web, thực tập sinh còn được training về cách sử dụng hiệu quả text editor VSCode cùng các extension đi kèm, cách thao tác với terminal để khởi chạy project ReactJs và tải các dependency phù hợp. ● React giúp tạo các UI tương tác một cách dễ dàng. Thiết kế các khung nhìn đơn giản cho từng trạng thái trong ứng dụng của bạn, và React sẽ cập nhật và render đúng các thành phần phù hợp khi dữ liệu của bạn thay đổi. ● Việc khai báo các khung nhìn tường minh sẽ khiến cho mã của bạn dễ sử dụng hơn và dễ dàng gỡ lỗi hơn. Thực hiện : ● Tham gia đầy đủ các buổi training. ● Áp dụng tốt vào quá trình deliver dự án. Kết quả : ● Hiểu được những khái niệm cơ bản trong lập trình ứng dụng Web và áp dụng tốt vào quá trình deliver sản phẩm. 2.4. Mô hình Agile Thời gian: 2 ngày song song với thực hành trong suốt quá trình thực tập. Nội dung : Được training về các kiến thức chung và tìm hiểu về việc áp dụng mô hình vào quy trình làm việc nhóm trong quá trình thực tập. Đây là mô hình làm việc mà công ty GEEK Up đã apply vào sử dụng trên mọi product của công ty. Khái niệm Agile (viết tắt của Agile Software Development) có nghĩa là phương thức phát triển phần mềm linh hoạt, được ứng dụng trong quy trình phát triển phần mềm với mục tiêu là đưa sản phẩm đến tay người dùng càng nhanh càng tốt. Rất nhiều nơi định nghĩa Agile như một phương pháp. Thực chất, Agile giống như một phương pháp luận, một triết lý dựa trên hơn nguyên tắc phân đoạn vòng lặp (iterative) và tăng trưởng (incremental). Ngày nay, triết lí Agile đã vượt xa khỏi khu vực truyền thống của mình là phát triển phần mềm để đóng góp sự thay đổi trong cách thức làm việc, quản lí, sản xuất ở các ngành khác như sản xuất, dịch vụ, sales, marketing, giáo dục... và trở thành một phương thức quản lý dự án phổ biến nhất hiện nay với nhiều đại diện được gọi là các phương pháp “họ Agile”. ● 4 tôn chỉ cần tuân thủ trong phương pháp Agile 13 ○ Cá nhân và sự tương hỗ quan trọng hơn quy trình và công cụ: Trọng tâm đặt lên con người, xây dựng tương tác và hỗ trợ giữa các thành viên trong nhóm. Những thành viên có năng lực, chịu tương trợ nhau trong công việc sẽ mang đến thành công cho dự án. ○ Sản phẩm dùng được tốt hơn tài liệu đầy đủ: Tập trung thời gian để làm ra phần mềm hoàn chỉnh đáp ứng hoàn hảo yêu cầu khách hàng. ○ Cộng tác với khách hàng quan trọng hơn đàm phán hợp đồng: Hiểu được khách hàng cần gì để tư vấn và điều chỉnh sản phẩm thay vì chỉ dựa vào các điều khoản trong hợp đồng. ○ Phản hồi thay đổi hơn là bám sát kế hoạch: Agile khuyến khích thích nghi với sự thay đổi, đó có thể là thay đổi về công nghệ, nhân sự, deadline,... ● 12 nguyên tắc quan trọng trong Agile ○ Đáp ứng toàn diện nhu cầu khách hàng thông qua việc giao hàng sớm và sản phẩm có giá trị. ○ Thay đổi yêu cầu được chào đón, thậm chí là rất muộn trong quá trình phát triển. ○ Giao phần mềm chạy được cho khách hàng một cách thường xuyên. ○ Nhà kinh doanh và các kỹ sư phần mềm cần làm việc cùng nhau trong suốt dự án. ○ Xây dựng dự án xung quanh các cá nhân có động lực. Cung cấp sự hỗ trợ cần thiết, môi trường làm việc và niềm tin để hoàn thành công việc. ○ Trao đổi trực tiếp là cách truyền đạt thông tin hiệu quả nhất. ○ Thước đo chính của tiến độ là phần mềm chạy tốt. ○ Phát triển liên tục và bền vững. ○ Cải tiến sự linh hoạt bằng cách quan tâm đến kỹ thuật và thiết kế. ○ Nghệ thuật tối đa hóa lượng công việc chưa xong - Sự đơn giản là cần thiết. ○ Nhóm tự tổ chức ○ Thích ứng thường xuyên với những thay đổi. ● Điểm mạnh: ○ Thực hiện thay đổi dễ dàng ○ Không cần phải nắm mọi thông tin ngay từ đầu ○ Bàn giao nhanh hơn ○ Chú ý đến phản hồi của khách hàng và người dùng ○ Cải tiến liên tục ● Agile ở GEEK Up ○ Sprint Planning (Họp Kế hoạch Sprint- Iteration): Nhóm phát triển gặp gỡ với Product Owner để lên kế hoạch làm việc cho một Sprint (xem thêm 14 phần Sprint bên dưới). Công việc lập kế hoạch bao gồm việc chọn lựa các yêu cầu cần phải phát triển, phân tích và nhận biết các công việc phải làm kèm theo các ước lượng thời gian cần thiết để hoàn tất các tác vụ. Chia nhỏ công việc thành các backlog (task) để có thể theo dõi tiến độ dự án dễ dàng hơn. Scrum sử dụng cách thức lập kế hoạch từng phần và tăng dần theo thời gian, theo đó, việc lập kế hoạch không diễn ra duy nhất một lần trong vòng đời của dự án mà được lặp đi lặp lại, có sự thích nghi với các tình hình thực tiễn trong tiến trình đi đến sản phẩm. ○ Daily Scrum (Họp Scrum hằng ngày): Scrum Master tổ chức cho Đội sản xuất họp hằng ngày trong khoảng 15 phút để Nhóm Phát triển chia sẻ tiến độ công việc cũng như chia sẻ các khó khăn gặp phải trong quá trình phát triển phần mềm suốt một Sprint. ○ Sprint Review (Họp Sơ kết Sprint): Cuối Sprint, nhóm phát triển cùng với Product Owner sẽ rà soát lại các công việc đã hoàn tất (DONE) trong Sprint vừa qua và đề xuất các chỉnh sửa hoặc thay đổi cần thiết cho sản phẩm. ○ Sprint Retrospective (Họp Cải tiến Sprint): Dưới sự trợ giúp của Scrum Master, nhóm phát triển sẽ rà soát lại toàn diện Sprint vừa kết thúc và tìm cách cải tiến quy trình làm việc cũng như bản thân sản phẩm. Thực hiện : ● Tham gia đầy đủ các buổi training. ● Áp dụng tốt vào quá trình deliver dự án Kết quả: ● Hiểu được những khái niệm của agile và áp dụng tốt vào quá trình deliver sản phẩm. 3. Thực hiện project Sau một tuần được training và thực hành, thực tập sinh đã nắm được những kiến thực cơ bản về Java, Android, Git, và Agile. Trong thời gian còn lại, thực tập sinh đã được hướng dẫn áp dụng những kiến thức đã học để cùng nhau deliver dự án. 4. Lịch làm việc Tuần Công việc Người hướng dẫn - Tìm hiểu về công ty, cách tổ chức của công Chị Uyên Phan Anh Nguyễn Minh Trung ty. - Làm quen với cách làm việc theo mô hình Anh Đặng Vũ Minh Hiếu Anh Đào Vũ Quốc Trung Agile của công ty. 1 Chị Hoài Thương - Làm quen với các công cụ làm việc trong Chị Thảo Đoàn công ty (Phần mềm riêng chuyên dụng trao Anh Chris Nguyễn 15 - - - 2-3 (Iteration 1) - - - đổi thông tin của công ty, Cổng lưu trữ các document của squad, email của công ty,…). Cài đặt môi trường để chuẩn bị cho dự án. Học cách trao đổi, làm việc qua email. Tham gia các buổi gặp gỡ ngoài giờ cùng công ty: Tuesday Workshop, Thursday Workshop, Friday Meetup, MiniWorkshop Tìm hiểu về ReactJs, ngôn ngữ Javascript Anh Nguyễn Minh Trung trong phát triển ứng dụng Web, cách thức Anh Đặng Vũ Minh Hiếu hoạt động của DvaJs, UmiJs, cách sử dụng Anh Đào Vũ Quốc Trung các component của AntDesign. Tìm hiểu RESTful API. Tìm hiểu về Git và các tool liên quan. Cùng các thực tập sinh lập ra quy ước chung khi sử dụng Git khi collab với nhau Phân tích và lên kế hoạch triển khai Pulsely cùng các thực tập sinh. Chia nhỏ dự án Pulsely ra thành các Iteration nhỏ và các backlog nhỏ trong từng Iteration Thống nhất cách làm việc của squad trong quá trình deliver Pulsely. Thiết kế một số bản vẽ design UI cho Client Web Tham gia Daily Scrum mỗi ngày để trình bày tiến độ công việc cho đồng đội, những dự định tiếp theo trong ngày và những khó khăn gặp phải Integrate API với Server để hoàn thành các chức năng cơ bản đầu tiên của dự án Cuối Iteration 1, dự án đã có thể sử dụng trên main flow. Ở client Web đã có thể đăng nhập bằng tài khoản, tạo Pulse và thêm các câu hỏi như mainflow đã có kế hoạch Cùng squad thực hiện Iteration Review và Iteration Retrospective để cùng nhìn lại trong 2 tuần đầu tiên thực hiện dự án, đã làm ra được sản phẩm như thế nào, và team đã collab với nhau tốt hay chưa 16 - - - 4-5 (Iteration 2) - - - - 6-7 (Iteration 3) - - Tham gia các buổi gặp gỡ ngoài giờ cùng công ty: Tuesday Workshop, Thursday Workshop, Friday Meetup, MiniWorkshop Tiếp tục phân tích và lên kế hoạch triển khai Pulsely cùng các thực tập sinh trong giai đoạn tiếp theo của dự án Thiết kế một số bản vẽ design UI cho Client Web Tham gia Daily Scrum mỗi ngày để trình bày tiến độ công việc cho đồng đội, những dự định tiếp theo trong ngày và những khó khăn gặp phải Integrate API với Server để triển khai các chức năng tiếp theo Trình bày sản phẩm cùng dự án, các kế hoạch cho Project Owner Cuối Iteration 2, dự án đã hoàn thành mainflow và fix tất cả các bug còn tồn đọng ở Iteration 1. Cùng squad thực hiện Iteration Review và Iteration Retrospective để cùng nhìn lại sau 2 tuần đầu tiên thì 2 tuần tiếp theo này đã thực hiện dự án, đã làm ra được sản phẩm như thế nào, và team đã collab với nhau tốt hay chưa, rút thêm kinh nghiệm cùng nhau Tham gia các buổi gặp gỡ ngoài giờ cùng công ty: Tuesday Workshop, Thursday Workshop, Friday Meetup, MiniWorkshop Tìm hiểu thêm về các kỹ thuật nâng cao trong lập trình ứng dụng Web như hiện thực Animation phức tạp khi trình chiếu Pulse Live, near-realtime, hiện thực các trang Summary biễu diễn kết quả của Pulse. Tiếp tục phân tích và lên kế hoạch triển khai Pulsely cùng các thực tập sinh trong giai đoạn tiếp theo của dự án Tham gia Daily Scrum mỗi ngày để trình bày tiến độ công việc cho đồng đội, những 17 Chị Uyên Phan Anh Nguyễn Minh Trung Anh Đặng Vũ Minh Hiếu Anh Đào Vũ Quốc Trung Chị Hoài Thương Chị Uyên Trần Chị Uyên Phan Anh Nguyễn Minh Trung Anh Đặng Vũ Minh Hiếu Anh Đào Vũ Quốc Trung Chị Hoài Thương Chị Song Vân - - - - - - 8-9 (Iteration 4) - - dự định tiếp theo trong ngày và những khó khăn gặp phải Integrate với Server để triển khai các chức năng tiếp theo Cuối Iteration 3, dự án đã hoàn thành các chức năng quan trọng khác theo như kế hoạch Cùng squad thực hiện Iteration Review và Iteration Retrospective để cùng nhìn lại sau 4 tuần thì 2 tuần tiếp theo này đã thực hiện dự án, đã làm ra được sản phẩm như thế nào, và team đã collab với nhau tốt hay chưa, rút thêm kinh nghiệm cùng nhau Tham gia các buổi gặp gỡ ngoài giờ cùng công ty: Tuesday Workshop, Thursday Workshop, Friday Meetup, Mini Workshop Giai đoạn nước rút của dự án. Tìm kiếm và sửa các lỗi còn tồn đọng ở các Iteration trước. Triển khai các kế hoạch improve product Tiếp tục phân tích và lên kế hoạch triển khai Pulsely cùng các thực tập sinh trong giai đoạn cuối của dự án Tham gia Daily Scrum mỗi ngày để trình bày tiến độ công việc cho đồng đội, những dự định tiếp theo trong ngày và những khó khăn gặp phải Integrate với Server để triển khai các chức năng cuối cùng Cuối Iteration 4, dự án đã hoàn thành các chức năng quan trọng khác theo như kế hoạch Cùng squad thực hiện Iteration Review và Iteration Retrospective để cùng nhìn lại sau 6 tuần thì 2 tuần cuối cùng này đã thực hiện dự án, đã làm ra được sản phẩm như thế nào, và team đã collab với nhau tốt hay chưa, rút thêm kinh nghiệm cùng nhau 18 Chị Uyên Phan Anh Nguyễn Minh Trung Anh Đặng Vũ Minh Hiếu Anh Đào Vũ Quốc Trung Chị Hoài Thương Chị Uyên Trần Tham gia các buổi gặp gỡ ngoài giờ cùng công ty: Tuesday Workshop, Thursday Workshop, Friday Meetup, MiniWorkshop Giai đoạn cuối: - Trình bày sản phẩm cùng dự án cho Project Owner - Trình bày sản phẩm cho cả công ty Geek Up xem trong 10 tuần vừa qua, các thực tập sinh đã làm được những gì - Thực hiện các bước cuối cùng để đóng project. Bàn giao project - Tạm biệt mọi người. Gửi lời cảm ơn và tri ân đến toàn thể công ty Geek Up - Chuẩn bị tài liệu báo cáo thực tập. Củng cố kiến thức qua đợt thực tập. Rút kinh nghiệm và tự đánh giá bản thân. - 10 19 Chị Uyên Phan Anh Nguyễn Minh Trung Anh Đặng Vũ Minh Hiếu Anh Đào Vũ Quốc Trung Chị Hoài Thương Chị Uyên Trần
- Xem thêm -

Tài liệu liên quan