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

Báo cáo thực tập lập trình java 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 (274.78 KB, 24 trang )

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 JAVA WEB

Cơng ty thực tập: Công ty TNHH PALTech
Người phụ trách: Nguyễn Minh Khôi
Thực tập sinh: Phạm Võ Di Thiên

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


1

LỜI MỞ ĐẦU
Công nghệ thông tin trong giai đoạn hiện nay đang phát triển như một ngành kinh tế mũi
nhọn hàng đầu trên thế giới. Điều xảy ra trong vòng vài năm qua ở Việt Nam là sự đầu tư ô ạt
vào công nghệ. Công nghệ thông tin đã và đang là một yếu tố thể thiếu đối với bất kỳ công ty
nào. Đặc biệt công nghệ thông tin ngày càng giữ vai trò quan trọng trong vấn đề quản lý tại các
tổ chức nhất là tại các lĩnh vực thu thập thông tin. Tuy ngành công nghệ thông tin ở nước ta mới
chỉ phát triển trong vài năm trở lại đây và đang từng bước phát triển nhưng những bước phát
triển đó đã cho thấy tiềm năng lớn lao trong lĩnh vực công nghệ thông tin ở nước ta, trong đó
phát triển hệ thống thơng tin đang là thế mạnh của đất nước.
Nhờ vào những lí do trên mà ngày nay, hầu hết các doanh nghiệp đều đã trang bị cho
mình một website nhằm tiếp loại bỏ cách thức quản lý thông tin truyền thống bằng sức người
thay vào đó là sử dụng cơng nghệ của máy tính.
Lập trình Web sẽ là công việc xây dựng nên một website dành cho doanh nghiệp, giúp
doanh nghiệp quản lý hiệu quả, đồng thời cũng giúp gia tăng số lượng khách hàng tiếp cận với
sản phẩm và dịch vụ của công ty.


Theo như em tìm hiểu thì lập trình web yêu cầu cơ bản 2 yếu tố:
1. Kiến thức nền về ngôn ngữ, thuật toán.
2. Kỹ năng thiết kế Website (Font-end, Back-end)
Trong vơ vàng con đường để đạt được nó. Em bị cuốn hút bởi ngơn ngữ Java và mong
muốn có một cơ hội để có thể trờ thành một lập trình viên Java.
Từ định hướng và lựa chọn đó, sau ba năm học tập vất vả, ba năm nghiên cứu, tìm hiểu,
học hỏi và rèn luyện tại trường, vì khát khao có thêm kinh nghiệm và kĩ năng làm việc thực tế,
cũng như muốn được tham gia phát triển web trong một mơi trường chun nghiệp, năng động,
mang đầy tính học hỏi, em có đã dự định chọn cuối năm 3 đại học là thời điểm chín mùi để thực
hiện khóa thực tập đầu tiên trong cuộc đời mình. Vì vậy, PALTECH là công ty được em lựa
chọn để bắt đầu những bước đi đầu tiên trong con đường mơ ước trở thành một lập trình viên
chuyên nghiệp. Hành trình sẽ rất khó khăn và có nhiều thứ để học hỏi, nhưng với sự tận tình và
vui vẻ của các anh chị đồng nghiệp giúp em cảm thấy đây là một quyết định sáng suốt và đúng
đắn.


2

LỜI CẢM ƠN
Xin trân trọng gửi lời cảm ơn chân thành và sâu sắc đến Công ty TNHH PALTech đã cân
nhắc và quyết định mang lại cho em cơ hội quý báu để được học tập, rèn luyện, học hỏi và
phụng sự tại quý công ty.
Thực tập là thời gian khơng q dài cũng khơng q ngắn, nhưng nó đủ để em nhận ra và
bù đắp những thiếu sót của bản thân trong cả kĩ năng lập trình hay thậm chí là kĩ năng mềm.
Trong suốt q trình thực tập ln tồn tại những khó khăn thử thách và cả những tranh cãi,
nhưng các anh chị đồng nghiệp vẫn thoải mái và đưa ra cho em những cái nhiều thấu đáo của
vấn đề.
Cảm ơn đặc biệt đến anh Lê Minh Đức, anh Hoàng Minh Nghĩa và đặc biệt là anh
Nguyễn Minh Khôi đã hướng dẫn, giúp đỡ cho em tận tình cả những khó khăn trong cơng việc,
đến những khó khăn việc làm quen với môi trường mới; cảm ơn chị Lê Nguyệt Ánh Thùy Linh

và chị Tôn Thị Thanh Thảo và team QC, đã training và cung cấp kiến thức cơ bản về nghiệp vụ
các project lớn của công ty, hỗ trợ chúng em hiểu các project. Trân trọng và chân thành cảm ơn
anh Nguyễn Duy Khánh, đã chỉ dẫn chúng em về cách làm báo cáo, lên kế hoạch, những kỹ
năng khơng thể thiếu về lập trình web nói chung về cơng việc tại vị trí Java Web Developer tại
quý công ty; sâu sắc cảm ơn anh Ngô Văn Tự đã dẫn đầu cả team developer nói chung và cho
nhóm thực tập sinh chúng em nói riêng trong các task công việc và phát triển các project; cảm
ơn anh Hồ Duy Khánh và anh Lê Tấn Đạt đã training cho em những kiến thức quan trọng về
MySql, Angular và HTML để em có thể có kiến thức làm các task trong thời gian qua. Và hơn
nữa là các bạn thực tập sinh chung khóa với em là Vịng Minh Huỳnh và bạn Nguyễn Khánh
Linh đã giúp đỡ em rất nhiều trong những vấn đề gặp phải ở công ty.
Cuối cùng xin cảm ơn quý thầy cô trong khoa Công nghệ phần mềm đã tạo điều kiện cho
em làm bài báo cáo này một cách tường tận với một tinh thần chia sẻ.

Phạm Võ Di thiên
TpHCM, ngày 20 tháng 12 năm 2022


3

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

.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................
.........................................................................................................................................................


4

MỤC LỤC
Chương 1: Giới thiệu công ty thực tập....................................................................................................7
1.

Giới thiệu công ty PALTech..........................................................................................................7

2.

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


Chương 2: Nội dung thực tập..................................................................................................................8
1.

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

2.

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

Các công cụ làm việc............................................................................................................9

2.1.2.

Tìm hiểu về sự kết hợp Cơng nghệ và một số kinh nghiệm khi lập trình..........................9

2.1.3.

Lập trình trên IntelliJ........................................................................................................10

2.1.4.

Tìm hiểu MySQL................................................................................................................11

2.1.5.

Tìm hiểu về Angular2, JS..................................................................................................12

2.1.6.


Tìm hiểu về SpringBoot.....................................................................................................14

2.1.7.

Tìm hiểu về Bootstrap........................................................................................................15

3.

Thực hiện project.........................................................................................................................16

4.

Lịch làm việc.................................................................................................................................16

Chương 3: Chi tiết về project và cách làm việc....................................................................................18
1.

Giới thiệu về AQS........................................................................................................................18
1.1.

Các môi trường của project...................................................................................................18

1.2.

Một số hình ảnh project.........................................................................................................19

2.

Thực hiện......................................................................................................................................20


3.

Kế hoạch........................................................................................................................................20

TỔNG KẾT.............................................................................................................................................22
TÀI LIỆU THAM KHẢO......................................................................................................................23


5

Chương 1: Giới thiệu công ty thực tập

1. Giới thiệu công ty PALTech


Tên công ty: Công ty TNHH PAL TECH (PAL TECH Company Limited)



Địa chỉ: 20 Sông Thao, Phường 2, Tân Bình, Thành phố Hồ Chí Minh



Website: />


Điện thoại: 028 3848 7077

PAL TECH được thành lập vào năm 2015 tại Thành phố Hồ Chí Minh, là một
cơng ty CNTT cung cấp và phát triển các nền tảng phần mềm có khả năng mở rộng,

chất lượng tuyệt vời và tiết kiệm cho các nhu cầu hoạt động kinh doanh khác nhau.
PAL TECH là công ty về công nghệ thông tin cung cấp và phát triển các nền tảng
phần mềm có thể mở rộng, chất lượng và kinh tế cho các nhu cầu hoạt động kinh
doanh khác nhau. Công ty cung cấp dịch vụ kỹ thuật chất lượng cho tất cả các loại tổ
chức từ các doanh nghiệp vừa và nhỏ (SME) cả trong và ngoài nước; cung cấp các
giải pháp chiến lược và sáng tạo để thêm giá trị kinh doanh cho khách hàng.
PALTech được dành riêng để xác định lại doanh nghiệp của hách hàng trên mạng
toàn cầu để tăng trưởng và sản xuất cao hơn thông qua lợi thế cạnh tranh về tốc độ,
chi phí và khả năng thích ứng. Đây chủ yếu là một công ty phát triển phần mềm có
chun mơn về các giao dịch an tồn với tần suất cao, khối lượng lớn trên web.


6

2. Sản phẩm của công ty
PALTech thiết kế, tạo ra và duy trì những Website chạy trên đa nền tảng – thứ mà
các doanh nghiệp khách hàng sử dụng để quản lí, thống kê về tài sản của họ và cũng
như



tạo

ra

các

bảng

báo


cáo

về

chúng.


7

Chương 2: Nội dung thực tập
Đợt thực tập “Lập trình Java Web” nhằm mục đích giúp sinh viên thực tập được đào tạo
tồn diện về lập trình Web cùng Angular và Springboot, đồng thời rèn luyện những kỹ năng
mềm như làm việc nhóm, 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 web chuyên nghiệp, trẻ và năng động.

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
1.

Đượ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 (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ủa cơng ty.
2.

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ách sử dụng

email trong công việc…
3.

Training về các nguyên tắc và quy định về Quản lí an tồn hệ thống

thơng tin – Information Security Management System (ISMS) cho nhân viên mới.
Bộ nguyên tắc có liên quan đến các tính chất như sẵn sàng, bảo mật, tính
tồn vẹn của thơng tin. Ngồi ra việc an tồn thơng tin cịn bao gồm có các tính chất
khác như trách nhiệm, xác thực, tính tin cậy và xác nhận
Kết quả: Hiểu thêm về cơng ty, biết được quy trình làm việc, biết sử dụng
kết hợp Email và Slack trong công việc. Làm việc có kế hoạch và có trách nhiệm hơn.
Ngồi ra còn biết thêm một số quy tắc làm việc chung ở môi trường công ty.

2. Nghiên cứu kỹ thuật
2.1.1. Các công cụ làm việc
Thời gian: 4 ngày


8

Nội dung: Tìm hiểu về một số cơng cụ, phần mềm sẽ được sử dụng trong
quá trình làm việc.
Trong thời gian một ngày đầu, bộ phận Infra sẽ giúp em cài đặt tồn bộ mọi
thứ về vị trí làm vệc, máy móc và cài các phần mềm trong whitelist (danh sách các
phần mềm được phép cài đặt và sử dụng trong máy tính làm việc cá nhân tại cơng ty).
Bên cạnh đó, bộ phận Infra cũng hỗ trợ cung cấp và update các tài khoản cần
thiết để em có thể truy cập và sử dụng những trang web hay phần mềm hỗ trợ cho q
trình làm việc tại cơng ty như Jira, Aws, Jenkin, Gitlab, Log web, Slack, IntelliJ,
Tortoise SVN và TortoiseGit, Notepad++…
Sau đó ngày, anh Nguyễn Minh Khơi – buddy của em sẽ hỗ trợ chỉ dẫn em

về các flow làm việc cũng như sử dụng các phần mềm trang web đó. Anh đã giải
thích về cơng dụng của một số trang web như Log, Jenkin, AWS-Jenkin. Anh đã chỉ
dẫn các kết nối database với workbench bằng các tài khoản đặc biệt cho dev cũng như
chỉ dẫn tường tận mẹo tổ chức các folder trong công việc.
Đặc biệt là về khoản merge code, phải tuân thủ theo một số quy tắc khi kết
hợp với Jira để tạo ra một flow chuẩn để dễ dàng quản lý, bảo trì và hỗ trợ QC test dễ
dàng hơn.
Thực hiện: Thực hành sử dụng các phần mềm đã nêu trên.
Kết quả:


Biết sử dụng kết hợp các cơng cụ để hỗ trợ q trình xây dựng website.



Biết được flow làm việc của công ty để dễ dàng quản lý, bảo trì code.

2.1.2. Tìm hiểu về sự kết hợp Công nghệ và một số kinh nghiệm khi lập trình.
Thời gian: xuyên suốt quá trình làm việc từ đầu tới cuối
Nội dung: Được training về các kỹ thuật Java nâng cao. Học cách sử dụng
các công nghệ mới Angular và Spring trong xuyên suốt quá trình làm việc. Hơn
nữa, trong quá trình thực hiện task, trước khi code được merge lên môi trường mới
phải được review qua, và trong giai đoạn đó em đã được học hỏi nhiều thứ từ anh
Lê Minh Đức, anh Huỳnh Minh Trí và các hướng tiếp cận và giải quyết bài toán tối


9

ưu hơn. Nâng cao khả nâng lập trình Back-end. Cơng ty luôn tạo cho em điều kiện
tốt nhất đề học tập và làm việc trong một môi trường không áp lực.

Thực hiện:
- Tham gia đầy đủ các buổi training của công ty.
- Ghi nhớ những kiến thức vừa được bản thân tìm hiểu và áp dụng vào các
task
Kết quả:
- Nâng cao kỹ năng lập trình với ngơn ngữ Java.
- Nâng cao sự thành thạo với Angular kết hợp Spring.
- Có được những kiến thức quan trọng cho việc lập trình web.
- Biết được một số quy tắc trong lập trình, các thuật toán tối ưu cho từng vấn
đề khác nhau.
- Ngồ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 cũng như các làm quen các extension bắt code xấu như
sonar.
2.1.3. Lập trình trên IntelliJ
Nội dung: Các kỹ thuật dùng intelliJ, kết hợp các extension hay phần mềm
để thực hiện kết nối backend, ... như là sử dụng glassfish.
IntelliJ IDEA là một IDE Java để phát triển các phần mềm máy tính. Nó
được phát triển bởi JetBrains, nó được cấp phép Apache 2 cho phiên bản cộng
đồng, và một phiên bản thương mại độc quyền. Cả hai có thể được sử dụng cho
phát triển thương mại.
Thực hiện:
- Tham gia đầy đủ các buổi training.
- Kết hợp với Glassfish trong việc fix bug hay các task mới


10

Kết quả:
- Đã có thể sử dụng khá thành thạo công cụ IDE IntelliJ để phục vụ trong
công cuộc xây dựng website.

2.1.4. Tìm hiểu MySQL
Thời gian: 2 ngày
Nội dung: Training về hệ quản trị CSDL MySQL và ngôn ngữ SQL
MySQL là một hệ thống quản trị về cơ sở dữ liệu với mã nguồn mở (được gọi
tắt là RDBMS) và đang hoạt động theo mơ hình dạng client-server.
MySQL đang tạo ra bảng để có thể lưu trữ dữ liệu và định nghĩa về sự liên
quan giữa những bảng đó
Client sẽ trực tiếp gửi yêu cầu SQL bằng một lệnh đặc biệt có trên MySQL.
Ứng dụng tại server sẽ tiến hành phản hồi thông tin cũng như trả về những
kết quả trên máy client.
SQL là viết tắt của Structured Query Language, nghĩa là ngôn ngữ truy vấn
cơ sở dữ liệu.
Ngôn ngữ định nghĩa dữ liệu (Data Definition Language - DDL): cho phép
khai báo cấu trúc bảng, các mối quan hệ và các ràng buộc: lệnh tạo bảng
(CREATE), lệnh sửa cấu trúc bảng (ALTER), lệnh xố bảng (DROP).
Ngơn ngữ thao tác dữ liệu (Data Manipulation Language - DML): cho phép
thêm (INSERT), xóa (DELETE), sửa dữ liệu (UPDATE).
Ngôn ngữ truy vấn dữ liệu (Structured Query Language – SQL): cho phép
truy vấn dữ liệu: truy vấn tổng quát, dùng phép kết, truy vấn con, hàm tính tốn,
gom nhóm…
Trigger: Trigger thường được sử dụng để kiểm tra ràng buộc (check
constraints) trên nhiều quan hệ (nhiều bảng/table) hoặc trên nhiều dòng (nhiều
record) của bảng.


11

Stored Procedured: Là đoạn chương trình kịch bản (programming scripts)
với các câu lệnh SQL nhúng (embedded SQL) được lưu dưới dạng đã được biên
dịch và thi hành thực tiếp bởi MySQL. SP cho phép lưu trữ các logic ứng dụng

trên CSDL. Khi gọi SP lần đầu tiên, MySQL sẽ tạo một lịch thực thi và lưu trữ nó
trong bộ nhớ đệm. Ở những lần gọi hàm tiếp theo, MySQL sử dụng sử dựng lại
lịch thực thi được lưu rất nhanh với hiệu xuất đáng tin cậy.
Thực hiện:
-

Tham gia đầy đủ các buổi training

-

Viết các SP truy vấn dữ liệu.

-

Tìm đọc thêm về các tài liệu liên quan.
Kết quả:
Biết cách sử dụng MySQL Workbench, biết cách truy vấn, tìm kiếm dữ liệu

bằng ngơn ngữ SQL.
2.1.5. Tìm hiểu về Angular2, JS
Thời gian: 3 ngày
Nội dung: Training các kiến thức về front-end.
Các nội dung về HTML, SCSS.
Các kiến thức cơ bản về ngôn ngữ lập trình Javascript
Framework Angular:
Phiên bản bản Angular 2 ra đời nhằm thay thế Angular Js với các khái niệm
mới nhằm đơn giản hóa và tối ưu cho q trình phát triển sử dụng framework này.
Angular 2 thay đổi hoàn toàn so với AngularJS bằng việc thay Controllers và
$scope (AngularJS) bằng components và directives. Components = directives +
template, tạo nên view của ứng dụng và xử lí các logic trên view. Angular 2 hoàn

toàn được viết bằng Typescript. Angular 2 nhanh hơn AngularJS, hỗ trợ đa nền
tảng đa trình duyệt, cấu trúc cdoe được tổ chức đơn giản và dễ sử dụng hơn.


12

Ngôn ngữ sử dụng: JavaScript
Cách tổ chức các file: một component được cấu thành từ file Typescript,
HTML và SCSS.
Các khái niệm cơ bản:
Components là một khối code trong app Angular. Nó là sự kết hợp của bộ
template html và nhúng kèm code TypeScript (hoặc Javascript). Một số thuộc tính
của Component: selector, template, styles, …
Binding là cách kết nối giữa HTML và dữ liệu theo kiểu 2 chiều, nghĩa là
HTML input thay đổi thì biến Javascript sẽ ngay lập tức nhận được giá trị trả về
và ngược lại, giá trị trong Javascript thay đổi thì ngay lập tức màn hình HTML
thay đổi theo.
Xử lí sự kiện: gắn 1 sự kiện của control HTML với một hàm Javascript.
Một

số

lifeCycleHook:

ngOnInit,

ngOnChanges,

ngAfterViewInit,


ngOnDestroy ,…
Cách truyền data giữa các component trong Angular: Từ parent component
xuống child component và ngược lại, từ 2 sibling component, …
Thực hiện:
-

Tham gia các buổi training của công ty.

-

Đọc các tài liệu.

-

Đọc và phân tích code từ dự án.

Kết quả:
Biết cách triển khai front-end với Angular.
Hiểu được các kiến thức cơ bản về front-end.


13

2.1.6. Tìm hiểu về SpringBoot
Thời gian: 4 ngày
Nội dung: Tìm hiểu chung về Spring Framework, đặc biệt là các kiến thức cơ
bản của SpringBoot.
Spring là framework mã nguồn mở được phát triển dựa trên nền tảng là Java,
giúp đơn giản hóa việc xây dựng và phát triển các ứng dụng Java doanh nghiệp.
Nó cung cấp mơ hình lập trình và cấu hình tồn diện cho các ứng dụng doanh

nghiệp dựa trên Java hiện đại - trên bất kỳ loại nền tảng triển khai nào.
Spring Boot là một module nằm trong Spring Framework, nó cung cấp giao
diện và khả năng phát triển các ứng dụng độc lập với rất ít các bước cấu hình
rườm rà hoặc gần như bằng khơng. Spring Boot được đóng gói với rất nhiều thư
viện phụ thuộc các module nền tảng của Spring Framework nhưng được giảm
thiểu đi các mã nguồn dài dòng, phức tạp nhằm cung cấp sự thuận tiện và phù hợp
với từng mục đích khi phát triển ứng dụng.
Các thành phần quan trọng:
Controller: trả về View (có chứa data sẵn, dạng trang HTML), hoặc Model
thể hiện dưới dạng API cho View.
Service: chứa các code tính tốn, xử lý. Khi Controller u cầu, thì Service
tương ứng sẽ tiếp nhận và cho ra dữ liệu trả cho Controller (trả về Model).
Controller sẽ gửi về View như trên.
Repository: Service cịn có thể tương tác với service khác, hoặc dùng
Repository để gọi DB. Repository là thằng trực tiếp tương tác, đọc ghi dữ liệu
trong DB và trả cho service.
Thực hiện:
-

Tham gia các buổi training


14

-

Đọc code ở một số package

-


Tự tìm hiểu ở document
Kết quả:
Biết được flow hoạt động của code và project.

2.1.7. Tìm hiểu về Bootstrap
Thời gian: 2 ngày
Nội dung: Tìm hiểu về Bootstrap
Bootstrap là một bộ sưu tập miễn phí của các mã nguồn mở và công cụ dùng
để tạo ra một mẫu webiste hồn chỉnh. Với các thuộc tính về giao diện được quy
định sẵn như kích thước, màu sắc, độ cao, độ rộng…, các designer có thể sáng tạo
nhiều sản phẩm mới mẻ nhưng vẫn tiết kiệm thời gian khi làm việc với framework
này trong quá trình thiết kế giao diện website .Rất dễ để sử dụng: Nó đơn giản vì
nó được base trên HTML, CSS và Javascript chỉ cẩn có kiến thức cơ bản về 3 cái
đó là có thể sử dụng bootstrap tốt.
Tương thích với trình duyệt: Nó tương thích với tất cả các trình duyệt
(Chrome, Firefox, Internet Explorer, Safari, and Opera). Tuy nhiên, với IE
browser, Bootstrap chỉ hỗ trợ từ IE9 trở lên. Điều này vô cùng dễ hiểu vì IE8
khơng support HTML5 và CSS3.
Thực hiện:
-

Tham gia các buổi training của công ty.

-

Đọc các tài liệu.

-

Đọc và phân tích code từ dự án.


-

Làm thực hành.
Kết quả:
Biết cách kết hợp Angular với Bootstrap để xây dựng UI cơ bản


15

3. Thực hiện project
Sau một tháng được training và thực hành, thực tập sinh đã nắm được những kiến thức
cơ bản, cũng như team QC/BA đã hướng dẫn thực tập sinh về những nghệp vụ ý nghĩa
project của công ty.
Chi tiết đồ án sẽ được nói ở phần sau.
4. Lịch làm việc
Tuần

1

2

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 ty.


Anh Nguyễn Minh Khôi

-

Làm quen với các công cụ làm việc trong công và anh Nguyễn Duy
ty.

Khánh, Hoàng Huỳnh

-

Học cách trao đổi, làm việc qua email và Slack

Nghĩa.

-

Tìm hiểu ngơn ngữ lập trình Java nâng cao

Anh Nguyễn Minh Khôi,

-

Thực hành Java.

anh Lê Minh Đức, anh
Hồ Duy Khánh, anh
Hồng Minh Trí.

3


-

Tìm hiểu về Spring boot

Anh Nguyễn Minh Khơi

-

Tìm hiểu về Angular

và anh Hồ Duy Khánh.

-

Tham gia training về nghiệp vụ hay business Chị
của các project

4+5+6

Lệ

Nguyệt

Ánh

Thùy Linh và chị Tôn
Thị Thanh Thảo và team
QC.


Giai đoạn thử sức:
5

-

Được giao 1 feature mới, nhỏ để hoàn thành và và anh Nguyễn Duy
làm quen

6

Anh Nguyễn Minh Khôi

Giai đoạn thử sức(tiếp):

Khánh
Anh

Nguyễn

Duy


16

-

Tham gia làm quen flow giải quyết một bug sẽ Khánh.
như thế nào? Flow làm việc trong team.

Giai đoạn quen và tham gia làm việc:

Tuần 7 –
hết kì
thực tập

-

Anh Lê Tấn Đạt, anh Hồ

Tham gia làm việc như một nhân viên chính Duy Khánh, anh Huỳnh
thức để lấy kinh nghiệm.

Minh Trí, anh Nguyễn
Minh

Khơi



Nguyễn Duy Khánh.

anh


17

Chương 3: Chi tiết về project và cách làm việc
1. Giới thiệu về AQS
Project phục vụ các doanh nghiệp, người dùng nước ngồi cho việc thống
kê, theo dõi, quản lí và xuất các báo cáo kinh doanh, tài sản của người dùng. Hệ
thống giúp tổng hợp, báo cáo các dữ liệu thu thập từ nhiều nguồn khác nhau. Hệ

thống sẽ chuẩn hóa dữ liệu, tính tốn giá trị tổng hợp và xuất báo cáo cho người
dùng. Đây là một trong những project điển hình của cơng ty PAL TECH cũng như là
một trong số các private project của công ty.
Hệ thống chạy trên mơ hình Micro-service, trên nền K8s; hỗ trợ CI/CD; áp
dụng:

1.1.



Backend: Spring Boot



Frontend: Angular



Hệ quản trị cơ sở dữ liệu: MySQL

Các môi trường của project.
AQS được phát triển trên 3 môi trường song song được gọi là: QAT, STG và
PROD:
-

QAT: gồm domain có đi là qat. Là mơi trường phát triển thấp

nhất mà developer sẽ làm việc đầu tiên đối với một task công việc hay một
bug. Môi trường này cũng sẽ có cơ sở dữ liệu của riêng nó để thuận tiện cho
việc testing cũng như thử nghiệm những feature mới từ nghiệp vụ. Chính vì có

cơ sở dữ liệu tách biệt và hơn nữa cơ sở dữ liệu này cũng chỉ có cơng ty (đội
ngũ phát triển)
-

STG: Gồm tất cả đồ main có đi stg. Là mơi trường phát triển

cũng có database riêng, mơi trường cao hơn qat.
-

PROD: là môi trường khách hàng dùng. Là môi trường bậc cao

nhất và quan trọng nhất.


18

Bất cứ một feature hay 1 bug nào sinh ra đều phải đi đúng thứ tự từ thấp đến cao
theo một kế hoạch đã được định trước.
1.2.

Một số hình ảnh project

Hình 1. Màn hình Role của AQS

Hình 2 Màn hình User management của AQS


19




×