Tải bản đầy đủ (.doc) (14 trang)

Báo cáo thực tập xây dựng phần mềm quản lý nhân sự

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 (125.53 KB, 14 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

XÂY DỰNG PHẦN MỀM QUẢN LÝ NHÂN
SỰ

Công ty thực tập

: Công ty cổ phần tập đoàn WATA

Người phụ trách

: Ngô Vũ Quyền

Thực tập sinh

: Trần Văn Cường

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

<Ngơ Vũ Qùn – Wata Solutions>
<Trần Văn Cường>


LỜI MỞ ĐẦU

Ngày nay, ngành công nghiệp game là một bộ phận không thể thiếu của ngành công
nghiệp phần mềm. Với tốc độ phát triển vô cùng mạnh mẽ, ngành game đã và đang là nhân tố
kích thích sự phát triển của công nghệ thông tin thế giới, cả về phần cứng và phần mềm.


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 game non trẻ Việt Nam đã và đang phát triển mạnh mẽ, để hịa nhập với những cơng ty
hàng đầu về game trên thế giới. Bên cạnh những công ty game trẻ tuổi trong nước, những công
ty game lớn trên thế giới (như Gameloft) cũng gia nhập vào thị trường Việt Nam, góp phần rất
lớn vào sự phát triển tích cực của ngành game Việt.
Ngành game được sinh ra là do nhu cầu giải trí của giới trẻ bằng những thiết bị cơng
nghệ mới nhất. Và cũng chính giới trẻ sẽ là nguồn nhân lực quan trọng cho việc phát triển của
ngành game sau này. Vì lý do này, em quyết định chọn lập trình game làm định hướng cho việc
học tập của mình.
Sau ba năm học tập trên trường, do mong muốn có thêm kinh nghiệm thực tế, cũng như
muốn được tham gia làm game trong một mơi trường chun nghiệp, em có dự định là sẽ thực
tập trong hè. Vì vậy, em quyết định chọn Gameloft - 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 được dự định này.

<Ngô Vũ Quyền – Wata Solutions>
<Trần Văn Cường>


LỜI CẢM ƠN

Trân trọng gửi lời cảm ơn Công ty Wata Việt Nam đã tạo điều kiện cho em có cơ hội
được thực tập tại công ty.
Chỉ trong một thời gian ngắn, nhưng nhờ sự chỉ dẫn nhiệt tình của nhóm trainer, 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 dự án.
Chân thành cảm ơn các anh chị trong nhóm trainer đã 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.
Đặc biệt cảm ơn anh Ngô Vũ Quyền, đã training Android, hướng dẫn, giúp đỡ cho chúng
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, hỗ trợ chúng em rất nhiều về các vấn đề kỹ thuật trong quá trình thực tập và cung
cấp cho em những kiến thức quan trọng về lập trình, kỹ năng mềm, khả năng làm việc nhóm để

có thể làm ra một sản phẩm trong thời gian qua.
Cũng xin cảm ơn thầy cô trong khoa Công nghệ phần mềm đã nhiệt tình hỗ trợ, tạo điều
kiện em làm bài báo cáo này.
Trần Văn Cường
TP. Hồ Chí Minh, tháng 12 năm 2021

<Ngô Vũ Quyền – Wata Solutions>
<Trần Văn Cường>


NHẬN XÉT CỦA KHOA

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


<Ngô Vũ Quyền – Wata Solutions>
<Trần Văn Cường>


MỤC LỤC

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

Giới thiệu công ty Wata Solutions................................................................................................6

2.

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

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

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

2.

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

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

2.2.


Tìm hiểu ngơn ngữ NodeJS nâng cao....................................................................................7

2.3.

Lập trình trên thiết bị di động.................................................................................................9

3.

Thực hiện project...........................................................................................................................9
4.

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

Chương 3: Chi tiết về project.................................................................................................................12
1.

Giới thiệu về dự án.......................................................................................................................12

2.

Thực hiện......................................................................................................................................12

3.

Kế hoạch........................................................................................................................................12

TÀI LIỆU THAM KHẢO.........................................................................................................................13

<Ngô Vũ Quyền – Wata Solutions>
<Trần Văn Cường>



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

1. Giới thiệu công ty Wata Solutions
WATA Solutions là một trong những công ty hàng đầu về Dịch vụ Giải pháp Phần
mềm có trụ sở tại Thành phố Hồ Chí Minh. Đến với cơng ty chúng tơi, bạn sẽ có cơ
hội làm việc với những thành viên trẻ trung, năng động, tài năng. Khách hàng/Đối tác
của chúng tôi đến từ Bắc Mỹ, Úc, Châu Âu, Nhật Bản, Singapore và Hàn Quốc.
Chúng tôi đang tìm kiếm ứng viên Kỹ Sư Cầu Nối (BrSE) cho các dự án mới của
công ty, người sẽ chịu trách nhiệm thực hiện các công việc liên quan.

2. Sản phẩm của công ty
WATA Solutions tập trung vào xây dựng các sản phẩm như mobile application,
webstite, design UI/UX, software testing với các phương châm:
“We make a point of bravely venturing into new and unknown areas to discover
problems to solve.
It keeps us awake and on the cutting edge. We commit to be highly experienced and
always be solving new and challenging problems with the best technology.”

<Ngô Vũ Quyền – Wata Solutions>
<Trần Văn Cường>


Chương 2: Nội dung thực tập
Đợt thực tập với chủ đề “Xây dựng phần mềm quản lý nhân sự” nhằm mục đích giúp
sinh viên thực tập được đào tạo tồn diện về quy trình thực hiện dự án, kỹ năng lập trình và kỹ,
đồ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
game chun 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 : 1 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
(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 .
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…
Kết quả : Hiểu thêm về công ty Wata, quá trình thành lập và phát triển. Có thêm các kỹ
năng về việc sử dụng email trong công việc, làm việc có kế hoạch, có kỷ luật, có trách
nhiệm hơn.
2. Nghiên cứu kỹ thuật
2.1. Các công cụ làm việc
Thời gian : 4 ngày
Nội dung : Tìm hiểu về các cơng cụ sẽ được sử dụng trong quá trình làm việc.
Trong thời gian này, supervisor đã hướng dẫn thực tập sinh tìm hiểu về các cơng
cụ sẽ giúp ích cho trong cơng việc sau này. Một số phần mềm trong số đó như
Tortoise SVN - sử dụng trong làm việc nhóm, FreeCommander – trình duyệt file trực
quan với nhiều tiện ích, Notepad ++ - một chương trình soạn thảo văn bản rất hữu
ích và phổ biến với lập trình viê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ả : Lập trình sử dụng các cơng cụ miễn phí, giúp dễ dàng kết hợp các cơng cụ
với nhau, so với việc dung các IDE.
2.2. Tìm hiểu ngơn ngữ NodeJS nâng cao
Thời gian : 5 ngày (1 tuần)
Nội dung : Được training về các kỹ thuật NodeJS nâng cao, những kiến thức quan
trọng cho việc tối ưu khi lập trình.
- Cấu trúc Node.js
Mơ-đun


<Ngơ Vũ Qùn – Wata Solutions>
<Trần Văn Cường>


Module giống như các thư viện JavaScript sử dụng trong ứng dụng Node.js
application bao gồm một bộ các chức năng. Để đưa một module vào ứng dụng
Node.js thì phải sử dụng hàm require() function with the với dấu ngoặc đơn chứa
tên module.
.
- Streaming:
Stream là các đối tượng cho phép bạn đọc và viết dữ liệu một cách liên tục.
Có 4 loại stream như sau:
Readable: Là loại stream mà từ đó dữ liệu có thể đọc được
Writable: Là loại stream mà dữ liệu có thể được viết lên đó
Duplex: Là loại stream có thể đọc và viết được
Transform: Là loại stream có thể thao tác dữ liệu trong khi nó đang được
đọc hoặc viết
- Quản lý bộ nhớ
Thực tập sinh sẽ được hướng dẫn về cách cấp phát, quản lý bộ nhớ sao cho tối ưu,
tránh rò rỉ bộ nhớ, một trong những phần rất quan trọng trong lập trình game trên
điện thoại, vì bộ nhớ trên điện thoại khơng thể lớn như trên máy tính được.
- Debugger :
Node.js có chức năng gỡ lỗi có thể được sử dụng với một client gỡ lỗi được tích
hợp sẵn. Trình gỡ lỗi của Node.js khơng có q nhiều tính năng nhưng nó hỗ trợ
các chức năng kiểm tra code cơ bản. Trình gỡ lỗi có thể được sử dụng trong bảng
lệnh bằng cách sử dụng từ khố 'inspect' phía trước tên của file JavaScript.
Thực hiện :
- Tham gia đầy đủ các buổi training của công ty.
- 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ữ NodeJS.
Có được những kiến thức quan trọng cho việc lập trình website sau này.
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.

<Ngô Vũ Quyền – Wata Solutions>
<Trần Văn Cường>


2.3.

Lập trình trên thiết bị di đợng
Nội dung : Xây dựng application trên thiết bị di động
-

Định nghĩa về Flutter:

-

Flutter là một nền tảng hỗ trợ phát triển cho các ứng dụng đa nền cho hệ iOS và
Android do tập đoàn Google phát triển. ... Những điều này thường bao gồm các
cơng cụ có trình để biên dịch mã thành các mã gốc dành riêng cho hệ điều hành
iOS và Android

-

Tạo ứng dụng Android:

Được các trainner hướng dẫn tạo ra một ứng dụng cơ bản, cấu hình quyền truy cập
cho android, cách sử dụng các công cụ để biên dịch, chạy android trên máy ảo
trên PC.

-

Lập trình Flutter bằng Visual studio code:
Để có thể lập trình app trên VS code với hiệu suất cao, lập trình viên sẽ phải lập
trình từ nhân của hệ thống, không chạy qua máy ảo Dalvik. Vì vậy, thay vì lập
trình trực tiếp trên Android bằng ngơn ngữ dart, lập trình viên sẽ sử dụng ngơn
ngữ dart để lập trình và build ra thư viện để chạy trên nền Linux của Android. Bộ
SDK để thực hiện build ra những thư viện này là NDK(Native Development Kit).
Android.

Thực hiện :
-

Tham gia đầy đủ các buổi training.
Tạo ra những ứng dụng cơ bản, lập trình Flutter trên Windows và build thành app.

Kết quả:
-

Đã có thể tạo ra những ứng dụng cơ bản từ Flutter sau đó đưa build ra app.

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 về NodeJS, ReactJS, Flutter. Trong tháng thứ hai, trainer đã hướng dẫn thực tập
sinh áp dụng những kiến thức đã học để thực hiện một project quản lý nhân sự.
Chi tiết đồ án sẽ được nói ở phần sau.


<Ngô Vũ Quyền – Wata Solutions>
<Trần Văn Cường>


4. Lịch làm việc

T̀n

Cơng việc
-

1

2

3

4

5

6

Tìm hiểu về cơng ty,
cách tổ chức của
công ty.
- Làm quen với các
công cụ làm việc
trong 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 NodeJS
nâng cao
- Thực hành NodeJS
- Làm
bài
test
NodeJS
- Tìm
hiểu
về
ReactJS
- Thực hành ReactJS
- Làm
bài
test
ReactJS
- Tìm hiểu về Flutter
- Thực hành tạo một
ứng dụng Android
cơ bản.
Giai đoạn Alpha:
- Lên kế hoạch
- Thiết kế UX/UI
- Phân tích thiết kế
database.
- Áp dụng vơ hình
Scrum vào dự án

Giai đoạn Alpha(tiếp):
- Viết các lớp quản lý
Object, các lớp
Object.
- Ráp vào Framework
thành một bản demo

Người hướng dẫn

Mức
độ
hoàn
thành

Nhận xét của người
hướng dẫn

Anh Tiến

Anh Quyền

Anh Quyền

Anh Anh Quyền

Anh Quyền

Anh Quyền

<Ngô Vũ Quyền – Wata Solutions>

<Trần Văn Cường>


7

8

với chức năng cơ
bản.
Giai đoạn Beta:
Anh Quyền
- Viết các chức năng
nâng cao hơn
- Thêm animation để
tạo hiệu ứng đẹp
hơn khi lướt và sử
dụng.
Giai đoạn Beta và giai Anh Anh Quyền
đoạn kết thúc, báo cáo :
- Hiệu ứng camera.
- Fix bug, cảo thiện
hiệu suất
- Báo cáo cuối đợt
thực tập.

<Ngô Vũ Quyền – Wata Solutions>
<Trần Văn Cường>


Chương 3: Chi tiết về project

1. Giới thiệu về dự án
Dự án được giao nhằm mục đích xây dựng 1 ứng dụng quản lý nhân sự có thể đánh giá
được mức độ làm việc và thống kê được số dự án đã làm và xác định được số người
tham gia để có thể đánh giá được năng lực và tiến độ công việc.

2. Thực hiện
4 thành viên của team internship Wata:
-

Hà Minh Hiệu
Trần Đức Hoàng
Trần Thế Anh
Nguyễn Anh Trung

Và sự giúp đỡ tận tình của team trainer Wata.

3. Kế hoạch
Giai đoạn Alpha:
-

Hoàn thành giao diện người dùng.
Cài đặt hiệu ứng animation chuyển trang, pop-up
Hỗ trợ thiết bị trên laptop, pc, ipad.
Chưa xây dựng app trên mobile.
Cài đặt database, set up api,…
Viết unit test

Kết quả :
-


Hầu hết các tính năng trên đã được thực hiện, trừ phần mobile.

Giai đoạn Beta:
-

Hoàn thành xây dựng app trên mobile
Viết test và cải tiến 1 số tính năng
Release sản phẩm

Kết quả : Đã hồn thành tồn bộ những tính năng trên, trừ việc thực hiện fix 1 số lỗi liên
quan đến hiệu ứng và đưa 1 số feature về việc thực hiện trong tương lai.

<Ngô Vũ Quyền – Wata Solutions>
<Trần Văn Cường>


TÀI LIỆU THAM KHẢO
NodeJS
Documentation | Node.js (nodejs.org)
Installing Express (expressjs.com)
Introduction to GraphQL | GraphQL
Nest JS
Documentation | NestJS - A progressive Node.js framework
ReactJS
Getting Started – React (reactjs.org)
Flutter
Flutter documentation | Flutter
Dart packages (pub.dev)
Và 1 số tài liệu lưu hành nội bộ.


<Ngô Vũ Quyền – Wata Solutions>
<Trần Văn Cường>


TỔNG KẾT

Như vậy, chỉ trong vòng một tháng ngắn ngủi, nhóm đã kịp hồn thành một game 3D
chạy trên nền tảng PC và Android. Game đã có khá đầy đủ các tính năng đã đề ra ban đầu. Do
thời gian có hạn nên tính năng game cịn đơn giản, hình ảnh chưa được đẹp như mong đợi.
Nhưng do game phát triển theo framework có tính kế thừa nên sau này khi có thời gian sẽ có thể
phát triển lên mức cao hơn.
Chân thành cảm ơn sự giúp đỡ của các anh chị nhóm trainer Gameloft, sự nỗ lực của
nhóm Beast Knight để có thể hồn thành game này. Cảm ơn thầy Nguyễn Hữu Thương đã giúp
em hoàn thành bài báo cáo này.

<Ngô Vũ Quyền – Wata Solutions>
<Trần Văn Cường>



×