Tải bản đầy đủ (.docx) (15 trang)

Báo cáo thực tập lập trình web

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (303.68 KB, 15 trang )

ĐẠ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
LẬP TRÌNH WEB

Cơng ty thực tập:

Cơng
ty
Vietnam

Manabie

Người phụ trách:

Trần Nguyễn Đức Duy

Thực tập sinh:

Nguyễn Lê Minh

Mã số sinh viên:

18520100

TP. Hồ Chí Minh, tháng 12 năm 2022


ĐẠ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
LẬP TRÌNH WEB

Cơng ty thực tập:

Cơng
ty
Vietnam

Manabie

Người phụ trách:

Trần Nguyễn Đức Duy

Thực tập sinh:

Nguyễn Lê Minh

Mã số sinh viên:

18520100

TP. Hồ Chí Minh, tháng 12 năm 2022


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 Manabie Vietnam đã 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, em đã tiếp thu được những kiến thức quan trọng để có thể làm được một sản
phẩm phần mềm hoàn chỉnh. 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 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ề lập trình web, cịn có
những kỹ năng về làm việc nhóm, quy trình làm việc chun 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 đó 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 Lê Minh
TP.Hồ Chí Minh, tháng 12 năm 2022

1 | Page


LỜI MỞ ĐẦU
Vào thế kỷ 21, cuộc cách mạng Công nghiệp 4.0 Internet bùng nổ kéo theo rất nhiều
những đổi mới với các công nghệ kỹ thuật số sắp tới, giúp mọi việc trở nên dễ dàng, thuận

tiện hơn bao giờ hết. Điển hình có thể kể đến các ứng dụng học trực tuyến đã cung cấp
cho học sinh những điều kiện và sức mạnh to lớn song song với cách học truyền thống,
đồng thời thầy cô và phụ huynh cũng dễ dàng tương tác và nắm bắt được tình hình học
tập của các em.
Manabie với xuất phát điểm là ứng dụng học tập trực tuyến cho học sinh phổ thơng
với hệ thống bài giảng video hoạt hình vui nhộn, kích thích khả năng học tập và có nội
dung được cập nhật liên tục phù hợp với thay đổi mới.
Sau q 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 chun 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 Manabie
Vietnam - một môi trường lý tưởng, hiện đại, chuyên nghiệp, đa quốc gia - là nơi sẽ giúp
em thực hiện hóa dự định này.

2 | Page


NHẬN XÉT CỦA KHOA
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………

………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
3 | Page


MỤC LỤC
LỜI CẢM ƠN

1

LỜI MỞ ĐẦU

2


NHẬN XÉT CỦA KHOA

3

MỤC LỤC

4

CHƯƠNG 1: GIỚI THIỆU CƠNG TY THỰC TẬP

5

1.1. Giới thiệu cơng ty Manabie Vietnam

5

1.2. Sản phẩm của công ty

5

1.2.1. App manabie

5

1.2.2. Website quản lý học tập phụ huynh - giáo viên

6

CHƯƠNG 2: NỘI DUNG THỰC TẬP


7

2.1. Tìm hiểu cơng ty và các kỹ năng cơ bản trong công ty

7

2.2. Nghiên cứu kỹ thuật

7

2.2.1. Mơ hình Agile

7

2.2.2. Tìm hiểu về Web
CHƯƠNG 3: TỔNG KẾT

10
12

3.1. Thành quả

12

3.2. Bài học

12

3.3. Cảm nhận của bản thân về công ty


12

DANH MỤC TÀI LIỆU THAM KHẢO

13

4 | Page


CHƯƠNG 1:

GIỚI THIỆU CƠNG TY THỰC TẬP

Hình 1-1 Logo cơng ty Manabie

1.1.

Giới thiệu công ty Manabie Vietnam
- Tên đơn vị: Công ty Manabie Vietnam.
- Lĩnh vực hoạt động: Edtech.
- Địa chỉ: 13 Tơn Đản quận 4, tp Hồ Chí Minh.
- Trang web: />- Thời gian làm việc: Thứ 2 đến thứ 6: 09h00 - 18h00.
- 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

1.2.

Sản phẩm của cơng ty

1.2.1. App manabie


Hình 1-2 Manabie Thumbnail

- Giá trị cốt lõi:
● Truy cập không giới hạn kho video bài giảng sinh động và bộ câu hỏi trắc
nghiệm phong phú ngay trên ứng dụng thông minh
● Cải thiện kết quả học tập rõ rệt cùng đội ngũ cố vấn và giáo viên chuyên môn,
giúp xây dựng kế hoạch và mục tiêu học tập dựa trên năng lực

5 | Page


● Giáo viên theo sát và kèm cặp từng học viên, thống kê báo cáo học tập hàng
tuần, cải thiện điểm số nhanh chóng.
Download tại: />1.2.2. Website quản lý học tập phụ huynh - giáo viên
- Giá trị cốt lõi:
● Video hoạt hình độc quyền và bộ đề trên ứng dụng trực quan và dễ hiểu, học
bất cứ nơi đâu, bất cứ lúc nào!
● Lấy học viên làm trọng tâm, dựa trên phân tích dữ liệu giúp cá nhân hóa lộ
trình học tập theo sức học
● Đội ngũ chun mơn đến từ trong và ngoài nước với nhiều năm kinh nghiệm
giúp học viên đạt kết quả cao
● Trải nghiệm học tập mới mẻ, hiện đại giúp học viên phát triển tồn diên theo
xu thế giáo dục 4.0

Hình 1-3 Manabie

Địa chỉ website: />
6 | Page



CHƯƠNG 2:
2.1.

NỘI DUNG THỰC TẬP

Tìm hiểu cơng ty và các kỹ năng cơ bản trong công ty
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: Giới thiệu về công ty, cách tổ chức của công ty
Được bộ phận tuyển dụng giới thiệu về cơng ty, nhân sự, bộ phận lãnh đạo, q trình

thành lập và phát triển, quy trình làm việc, cách tổ chức của cơng ty, văn hóa, phúc lợi
của nhân viên…
Ngồ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. 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 khi work from home, tham gia các buổi Workshop,
Tech Talk 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, 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.
2.2.

Nghiên cứu kỹ thuật

2.2.1. 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 q trình thực tập. Đây là mơ hình làm việc mà
cơng ty đã apply vào sử dụng trên mọi product của công ty.

7 | Page


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”.
Bốn tôn chỉ cần tuân thủ trong phương pháp Agile:
- 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 q 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.
8 | Page


- 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 để hồ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 ở Manabie:
- 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 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 q trình phát triển phần mềm suốt
một Sprint.
9 | Page


- 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 đã hồ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à sốt lại tồ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.
Kết quả: Tham gia đầy đủ các buổi training, 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.
2.2.2. Tìm hiểu về Web
Thời gian: 3 ngày
Nội dung: Nắm kiến thức tổng quát về client-server, các lý thuyết liên quan, tìm
hiểu và triển khai lên dự án thực tế, kèm theo đó là testing các chức năng đã hồn thiện.
Client-server: là mơ hình mạng máy tính gồm có 2 thành phần chính đó là máy
khách (client) và máy chủ (server). Server chính là nơi giúp lưu trữ tài nguyên cũng như
cài đặt các chương trình dịch vụ theo đúng như yêu cầu của client. Ngược lại, Client bao
gồm máy tính cũng như các loại thiết bị điện tử nói chung sẽ tiến hành gửi yêu cầu đến
server.
Unit test: là một loại kiểm thử phần mềm trong đó các đơn vị hay thành phần riêng

lẻ của phần mềm được kiểm thử. Kiểm thử đơn vị được thực hiện trong quá trình phát
triển ứng dụng. Mục tiêu của Kiểm thử đơn vị là cô lập một phần code và xác minh tính
chính xác của đơn vị đó.
Về các thư viện xây dựng web:
Client - Reactjs: là một thư viện JavaScript front-end mã nguồn mở và miễn
phí để xây dựng giao diện người dùng dựa trên các thành phần UI riêng lẻ. Nó
được phát triển và duy trì bởi Meta và cộng đồng các nhà phát triển và công ty cá
nhân
Server - Golang: là ngôn ngữ lập trình mã nguồn mở, được thiết kế tại
Google bởi Robert Griesemer, Rob Pike, and Ken Thompson.
10 | Page


Database - Postgresql: là một hệ quản trị cơ sở dữ liệu quan hệ và đối tượng
dựa trên POSTGRES, bản 4.2, được khoa điện toán của đại học California tại
Berkeley phát triển

11 | Page


CHƯƠNG 3:
3.1.

TỔNG KẾT

Thành quả
Hoàn thành sản phẩm với team gồm 14 thành viên, trải nghiệm thực tế quá trình

phát triển một ứng dụng. Áp dụng tốt quy trình Agile, làm việc nhóm hiệu quả. Nâng cao
kỹ năng giao tiếp.

Học hỏi và phát triển rất nhiều về kiến thức lẫn kỹ năng trong lập trình web. Hiểu và
áp dụng tốt được SOLID Principles, Event Driven Architecture, Git, CI/CD pipeline...
Hơn hết, được phát triển khả năng làm việc nhóm, tư duy trong lập trình, kỹ năng xử lý
tình huống dần được hồn thiện.
Cảm nhận được tâm huyết của mọi người trong quá trình xây dựng một sản phẩm,
tinh thần trách nhiệm của mỗi cá nhân làm nên một tập thể lớn. Được trải nghiệm tất cả
các công việc phát triển sản phẩm từ việc lên các ý tưởng, xây dựng concept, lên kế hoạch
cho đến các công việc hằng ngày, trao đổi giữa các thành viên, rút kinh nghiệm sau mỗi
giai đoạn ngắn. Từ những bước nhỏ nhưng khơng thể thiếu đó, các thành viên đã cùng
nhau tạo nên một sản phẩm hoàn chỉnh.
3.2.

Bài học
Sau khi hoàn thành kỳ thực tập, tự bản thân em và các anh chị trong công ty đánh

giá là có kiến thức cơ bản tốt về lập trình nhưng cần phải rèn luyện thêm, học thêm nhiều
kiến trúc hệ thống, thiết kế hạ tầng để xây dựng nền tảng vững chắc tạo bàn đạp để phát
triển cho tương lai.
3.3.

Cảm nhận của bản thân về công ty
Em cảm thấy thật sự may mắn khi có cơ hội thực tập tại công ty. Em đã được hướng

dẫn và hỗ trợ tận tình bởi các anh chị, có cơ hội làm việc với những dự án thực tế và học
được nhiều kiến thức, nâng cao kinh nghiệm chuyên môn. Công ty cũng đã cung cấp các
cơ hội học hỏi và phát triển kỹ năng qua các chương trình huấn luyện và các sự kiện trong
công ty. Em xin chân thành cảm ơn công ty đã cho em cơ hội thực tập, làm việc tại công
ty.
12 | Page



DANH MỤC TÀI LIỆU THAM KHẢO
[1]

Agile là gì? Scrum là gì? Các cơng cụ quản lý dự án theo Agile mà bạn nên biết

13 | Page



×