1. Trang chủ
  2. » Giáo Dục - Đào Tạo

báo cáo thực tập backend developer

16 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Báo Cáo Thực Tập Backend Developer
Tác giả Nguyễn Nhật Hoàng Quân
Người hướng dẫn Phan Đăng Lâm
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Phần Mềm
Thể loại báo cáo thực tập
Năm xuất bản 2024
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 16
Dung lượng 1,75 MB

Nội dung

Chân thành cảm ơn TGL Solutions và các anh chị trong team Cloud Solutions đã bỏ ra nhiều thời gian, công sức để hướng dẫn, hướng dẫn, giúp đỡ em tận tình trong khi làm quen môi trường mớ

Trang 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

BACKEND DEVELOPER

Công ty thực tập: TGL Solutions

Người phụ trách: Phan Đăng Lâm

Thực tập sinh: Nguyễn Nhật Hoàng

Quân

TP Hồ Chí Minh, tháng 1 năm 2024

Trang 2

LỜI MỞ ĐẦU

Trong thời đại số hóa, công nghệ thông tin là một ngành có vai trò chiến lược trong sự phát triển kinh tế - xã hội của đất nước Trong đó, công nghệ web là một lĩnh vực quan trọng, bởi

nó cung cấp các giải pháp cho nhiều hoạt động của con người như giáo dục, y tế, giải trí, thương mại, Theo thống kê, có khoảng 4.66 tỷ người dùng internet trên thế giới, và số lượng trang web không ngừng tăng lên

Do đó, để tạo ra những trang web chất lượng cao, không chỉ cần có giao diện đẹp mắt và nội dung hấp dẫn, mà còn cần có hệ thống backend vững chắc và hiệu quả Backend là phần xử

lý dữ liệu và logic nằm ở phía máy chủ, là nền tảng cho hoạt động của frontend Một backend developer phải có kiến thức về ngôn ngữ lập trình, cơ sở dữ liệu, API, bảo mật, Đây là một công việc đòi hỏi sự tỉ mỉ, cẩn thận và sáng tạo

Với mong muốn trở thành một backend developer chuyên nghiệp và có khả năng giải quyết các vấn đề phức tạp trong công nghệ web, tôi đã chọn hướng đi này làm mục tiêu cho sự nghiệp của mình Sau quá trình học tập tại trường đại học, em muốn được áp dụng những kiến thức đã học vào thực tiễn, cũng như học hỏi thêm kinh nghiệm từ những người đi trước Vì vậy, em đã quyết định tham gia vào TGL Solutions – một công ty uy tín và tiên phong trong lĩnh vực công nghệ web để hoàn thành kỳ thực tập của mình

Trang 3

LỜI CẢM ƠN

Em xin trân trọng gửi lời cảm ơn TGL Solutions đã tạo điều kiện cho em cơ hội được thực tập tại công ty Dù trong thời gian ngắn nhưng nhờ sự chỉ dẫn nhiệt tình của anh Phan Đăng Lâm, em đã tiếp thu những kiến thức quan trọng để có thể tham gia một dự án thực tế Chân thành cảm ơn TGL Solutions và các anh chị trong team Cloud Solutions đã bỏ ra nhiều thời gian, công sức để hướng dẫn, hướng dẫn, giúp đỡ em tận tình trong khi làm quen môi trường mới cũng như trong việc tiếp cận kiến thức công nghệ, kỹ năng lập trình và tư duy sản phẩm để có thể thực hiện tốt dự án cá nhân và dự án thực tế trong thời gian qua

Em 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áo cáo này

TP HCM, ngày 5 tháng 1 năm 2024

Nguyễn Nhật Hoàng Quân

Trang 4

NHẬN XÉT CỦA KHOA

Trang 5

MỤC LỤC LỜI MỞ ĐẦU 2

LỜI CẢM ƠN 3

NHẬN XÉT CỦA KHOA 4

MỤC LỤC 5

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

1.1 Giới thiệu TGL Solutions 6

1.2 Sản phẩm công ty 7

1.3 Lịch làm việc khi thực tập tại công ty 9

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

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

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

2.3 Tham gia dự án thực tế 11

CHƯƠNG 3: TỔNG KẾT 14

3.1 Điểm mạnh 14

3.2 Điểm yếu 14

3.3 Chuẩn đạt được 14

TÀI LIỆU THAM KHẢO 15

Trang 6

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

1.1 Giới thiệu TGL Solutions

Hình 1.1 Logo TGL Solutions

Công ty TGL Solutions, một công ty chuyên cung cấp các dịch vụ kỹ thuật phần mềm thông minh và nhanh chóng Công ty được thành lập vào tháng 9/2019 bởi Tiến sĩ Lê Tiến Triển, một nhà khoa học có tâm huyết với sự phát triển xã hội thông qua công nghệ Công ty

có phương châm “Xây dựng Công ty vững mạnh, lấy con người làm trung tâm”, và luôn nỗ lực không ngừng để mở rộng và đa dạng hóa các dịch vụ kỹ thuật phần mềm nhằm đáp ứng nhu cầu và xu hướng phát triển của thị trường, quy mô công ty hiện nay hơn 100 nhan viên

Công ty có slogan là Smart & Speed Solutions, nghĩa là tạo ra các giải pháp thông minh nhất và tốc độ nhanh nhất, để kịp thời tạo ra giá trị tốt đẹp cho xã hội Để làm được điều này, công ty đề cao việc nuôi dưỡng, đào tạo và phát triển con người về tư duy giải quyết vấn

đề, phong cách làm việc chuyên nghiệp, tinh thần không ngừng thử thách và cải thiện bản thân Qua đó, công ty hướng tới việc nâng tầm giá trị con người Việt Nam, giúp chúng ta đảm nhận được các dự án ở cấp độ cao hơn trong chuỗi cung ứng toàn cầu, góp phần vào sự phát triển đất nước

Tầm nhìn của công ty là Nâng tầm giá trị con người Việt! Sứ mệnh của công ty là Mang lại giải pháp thông minh và nhanh chóng cho khách hàng, đồng thời tạo ra môi trường làm việc thoải mái nhất, tôn trọng và phát huy tiềm năng của từng cá nhân Công ty luôn coi con người là trung tâm trong mọi quyết định và hành động

Trang 7

1.2 Sản phẩm công ty

1 Hệ thống AI hỗ trợ chẩn đoán bệnh xơ phổi vô căn

Hình 1 Mô hình hỗ trợ chẩn đoán bệnh xơ phổi căn

- Vấn đề & bối cảnh:

o Bệnh xơ phổi vô căn (IPF) là gì?

o Tình trạng phổi mất dần chức năng hô hấp và không rỏ nguyên nhân gây ra bệnh

o Xơ phổi vô căn là bệnh phổi thường gây tử vong và khó chẩn đoán, cho đến nay vẫn chưa có số liệu chính xác về số lượng người mắc bệnh xơ phổi Tính đến năm

2020, có khoảng 180.000 trường hợp xơ phổi vô căn ở Hoa Kỳ và 40.000 người chết vì căn bệnh này mỗi năm Bên cạnh đó, vào năm 2020 tại Hoa Kỳ, số người chết vì tai nạn giao thông là 38.680 người, đây là mức cao nhất trong 13 năm Những con số này vẫn thấp hơn số người chết vì căn bệnh này

- Tính năng & giải pháp

o Thông thường, thời gian sống sót trung bình của một bệnh nhân khoảng 3 năm kể

từ khi chẩn đoán có bệnh Tuy nhiên, công nghệ AI tiên tiến có thể chẩn đoán sớm

và chính xác bệnh phổi vô căn IPF Nhờ đó, bệnh nhân mắc bệnh sẽ có thêm nhiều

cơ hội chữa trị hoặc kéo dài thời gian sống

o Thuật toán dự đoán khả năng sống sót, từ đó đưa ra phác đồ điều trị cho bệnh nhân

2 Dự án NewCAD

Hình 2 Hình ảnh trong dự án NewCAD

Trang 8

- Vấn đề & bối cảnh:

o Nhu cầu thiết kế cơ sở hạ tầng ngày càng tăng, cần có một công cụ phát triển tự động theo khuôn mẫu cho sẵn và có thể linh hoạt sửa đổi để thích ứng với điều kiện luôn thay đổi hiện nay

- Tính năng & giải pháp

o Giải pháp vẽ mô hình 3D cho nhà, cầu, cầu đường với độ phức tạp cao trong thời gian nhanh chóng

3 Dự án Web Mirai

Hình 3 Dự án web mirai

- Vấn đề & bối cảnh:

o Khách hàng mong muốn thành lập một trang Thương mại điện tử để hỗ trợ việc bán hàng của công ty Tích hợp các tính năng live stream, VR để tối ưu hóa doanh số bán hàng

- Tính năng & giải pháp

o Tính năng đặt hàng, mua bán sản phẩm, tích lũy đổi điểm

o Góc VR Showroom, góc video giới thiệu sản phẩm của nhà sản xuất

o Chức năng phát trực tiếp: Người phát trực tiếp có thể tổ chức và lên lịch phát trực tiếp Người dùng có thể xem các chương trình phát sóng trực tiếp từ người bán hàng và mua hàng trực tiếp

o Tính năng đấu giá sản phẩm: Người phát trực tiếp có thể tổ chức đấu giá sản phẩm Người dùng có thể tham gia đấu giá sản phẩm, người đấu giá thành công có thể đặt hàng với giá thắng

o Trang quản trị: Quản lý sản phẩm, quản lý đơn hàng, tích điểm, thu nhập ; Xuất excel theo đơn hàng, theo sản phẩm, theo người dùng ; Có thể tạo link quickLogin

để đăng nhập các trang Top, Admin; Có hệ thống gửi mail thông báo tình trạng đơn hàng, tình hình diễn biến tích điểm cho người dùng và người chịu trách nhiệm về đơn hàng

1.3 Lịch làm việc khi thực tập tại công ty

Trang 9

Em tham gia làm việc tại công ty bắt đầu từ ngày 8/5 tới 1/12, các ngày làm việc trong tuần

là thứ ba, tư, năm, sáu Công việc hằng ngày bắt đầu từ lúc 9h đến 18h Thời gian nghỉ trưa khoảng 1 tiếng Trước mỗi ngày làm việc em sẽ báo cáo công việc sẽ làm trong ngày và tiến

độ hoàn thành của các công việc đó, đặt câu hỏi và nhận chia sẻ, giải đáp từ anh hướng dẫn hoặc mọi người trong team, đặt mục tiêu cho ngày làm việc tiếp theo Mỗi tuần sẽ họp tiến

độ tuần 1 lần vào sáng thứ 4, mọi người sẽ cùng họp và bàn bạc về các vấn đề đã giải quyết, tồn đọng, bài học, giải pháp và mục tiêu cho tuần tiếp theo Mỗi tháng sẽ tổ chức tiệc gắn kết team member của phòng ban

Trang 10

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

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

- Thời gian: 2 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 từ cao xuống thấp, cách thức tổ chức của công ty, các phòng ban về IT, HR, … Ngoài ra, thực tập sinh còn được giới thiệu về văn hóa làm việc trong công ty như thời gian đi làm, các quy định, cách sử dụng email trong công việc, …

- Kết quả: hiểu thêm về quy trình, 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.2 Nghiên cứu kỹ thuật

2.2.1 Tuần 1

- Nội dung: Tìm hiểu và cài đặt các công cụ sẽ sử dụng trong quá trình làm việc, đồng thời học về văn hóa và quy trình làm việc của team Cloud Solutions

o Source control : kiến thức căn bản về source control và cách sử dụng các tool source control như git

o Coding guidelines : các quy tắc cần phải tuân thủ trong quá trình làm việc như là cách đặt tên hàm, tên biến, các đặt tên file

o Code contribution process : quy trình để đóng góp code của mình vào dự án, chủ yếu là đối với git, bao gồm có :

● Branch naming

● Commit messages rules

● Merge request guidelines

o How to works : quy trình và công cụ hỗ trợ trong vấn đề giao tiếp trong thời gian làm việc của phòng Cloud Solutions bao gồm có :

o TMS : Hệ thống quản lý nhân viên của công ty

o Mattermost : cách giao tiếp trong quá trình làm việc và các quy định về giao tiếp như là nơi nào để hỏi, nơi nào để hỏi về review code, mỗi dự án sẽ có một group riêng (trong group sẽ có các channel của mỗi team (General, Backend, Frontend,

…))

o PlayBooks (trong Mattermost): nơi để tìm documents nội bộ của dự án

o văn hóa làm việc của công ty như là thời gian làm việc, các quy định về giao tiếp trong quá trình làm việc, cách tham gia vào daily meeting và cách cập nhật tiến độ công việc của mình

o Install softwares : cài đặt các công cụ cần thiết trong quá trình làm việc như visual studio, visual studio code, mattermost, git, svn,

- Kết quả: hiểu về văn hóa và quy trình làm việc của công ty, cách sử dụng các công cụ một cách hiệu quả trong quá trình làm việc

2.2.2 Tuần 2

Trang 11

- Nội dung: Đọc source code cũ

o Clone source code, và run source

o Tìm hiểu các chức năng được phát triển

o Các công nghệ được sử dụng trong dự án

o Tìm hiểu kiến trúc của dự án

- Kết quả:

o Hiểu được kiến trúc phần mềm của các dự án

o Các chức cơ bản của một dự án

2.3 Tham gia dự án thực tế

2.3.1 Dự án Mybrand JP

a Giới thiệu:

- Mục tiêu: kết nối nhà tuyển dụng với các ứng viên chất lượng trong các lĩnh vực về kinh doanh

- Cung cấp thông tin chi tiết về ứng viên như kinh nghiệm làm việc, học vấn, các thông tin cơ bản khác và các vị trí công việc cũng như thông tin về doanh nghiệp

- Đảm bảo tính bảo mật trong quá trình tìm kiếm và nộp đơn việc làm

- Các tính năng tìm kiếm tiên tiến giúp ứng viên lọc và tìm thấy những vị trí phù hợp với kỹ năng và mong muốn của họ

- Công nghệ: ExpressJs, Postgresql, Mysql, TypeOrm

-Hình 4 trang tìm việc trong dự án mybrands

Hình 5 màn hình đăng nhập

Hình 6 Màn hình thống kê

Trang 12

b Quá trình thực hiện

- Vai trò: Backend develop

- Các task được giao:

o viết api CRUD cho các thông tin cơ bản như: kinh nghiệm làm việc của ứng viên, label, …, maintain các api có sẵn theo yêu cầu

o change data: chuyển data từ database cũ sang database mới (khác cấu trúc bảng)

- Báo cáo tiến độ làm việc mỗi ngày (trước lúc làm việc, tự ước tính thời gian làm task

để báo cáo)

- Chủ động hỏi rõ khi chưa nắm bắt đủ yêu cầu, đối với task khó tham khảo các anh chị có nhiều kinh nghiệm hơn để hoàn thành tốt công việc và cũng tạo điều kiện trao đổi và học hỏi

c Thuận lợi

- Được sự hỗ trợ nhiệt tình từ anh chị đồng nghiệp

- Môi trường làm việc tích cực

- Source code dù lớn nhưng tương đối tốt

- Data trong cơ sở dữ liệu đủ lớn để có thể thực hành việc tối ưu câu truy vấn

d Khó khăn

- Vì công ty làm sản phẩm cho nhật bản, nên lúc đầu tham gia vào dự án khá khó để nắm bắt từ chi tiết cho đến tổng quan của dự án

- Đôi lúc BA chưa làm rõ yêu cầu (từ tiếng nhật chuyển sang tiếng việt) nên gây hiểu nhầm dẫn đến làm sai yêu cầu

- Kiến thức và kỹ năng bản thân còn hạn chế nên chưa đưa ra được cách giải quyết tối

ưu, khả năng mở rộng của chức năng, dự án, dẫn đến sự thay đổi trong tương lại trở nên khó khăn khi maintain

2.3.2 Dự án Forstand

a Giới thiệu:

- Forstand là dự án quản đặt phòng cho thuê để học, họp, tiệc liên hoan và cho thuê các dụng cụ theo yêu cầu, được phát triển bằng framework NestJs, Mysql, Typeorm, ReactJs

- Là dự án khách hàng nhật bản

Trang 13

Hình 6 Màn hình đăng nhập

Hình 7 Màn hình thống kê

b Quá trình thực hiện

- Vai trò: Backend develop

- Một số chức năng cơ bản được giao: Post (bảng tin), Thread(kênh liên lạc nội bộ), Admin(các loại nhân viên trong hệ thống), …

- Quy trình thực làm việc:

o Nhận task từ project leader

o Confirm yêu cầu của task

o Thực hiện và báo cáo tiến độ hành ngày

o Liên hệ với những người liên quan đảm bảo hoàn thành công việc

c Thuận lợi

- Có kinh nghiệm hơn khi nhận và bàn giao các task, chức năng

- Dễ dàng làm quen source code so với dự án trước đó

- Được review code, feedback khá kỹ

d Khó khăn

Trang 14

- Logic ứng dụng phức tạp hơn khi liên quan đến tính giá tiền, có nhiều loại người dùng (từ khách hàng cho đến nhân viên), có nhiều flow (luồng xử lý và có thể thay đổi theo yêu cầu của khách hàng khi qua phase khác)

[Nếu dự án có tính bảo mật cao, có thể trình bày sơ lược, khái quát, ngược lại, chụp một vài màn hình giao diện của dự án để người chấm báo cáo dễ hình dung.]

Trang 15

CHƯƠNG 3: TỔNG KẾT

Quãng thời gian thực tập tại TGL Solutions đã giúp em cải thiện bản thân rất nhiều trong quy trình làm việc thực tế, tác phong của người kỹ sư phần mềm Được làm việc tại đây, em đã học thêm được kỹ năng mềm sử dụng mail, quản lý ticket, làm việc nhóm, giao tiếp với cấp trên, quản lý source code, khả năng giải quyết vấn đề,…

Khi tham gia vào dự án thực tế, em cũng hoàn thành tốt các tác vụ đúng hạn và đạt chất lượng tốt

3.1 Điểm mạnh

- Hoà đồng, chủ động trong công việc

- Có kiến thức đủ để thực hiện các nhiệm vụ được giao, khả năng tiếp thu kiến thức mới và áp dụng vào công việc Chủ động hỏi các vấn đề khó

- Research tương đối nhanh

- Khả năng self-test tốt, tỉ lệ lỗi thấp mặc dù tốc độ không được nhanh tuy nhiên có sự tiến bộ và cải thiện

- Tổng quan, bạn đã thể hiện khả năng chuyên môn và hiệu quả công việc tương đối tốt trong quá trình làm việc

- Technical chưa tốt lắm, nhưng chủ động hỏi

- Biết lắng nghe và cải thiện

- Chủ động nhận task, confirm, report và thông báo

3.2 Điểm yếu

- Cần cố gắng thêm về mặt coding

- Cần cải thiện việc phân tích yêu cầu nghiệp vụ

3.3 Chuẩn đạt được

Goal Mục tiêu môn học

G1 Nắm bắt được xu hướng, nhu cầu xã hội và tính đặc thù của doanh nghiệp

G2 Hiểu và giải thích được các khái niệm cơ bản, thuật ngữ và sơ đồ hệ thống trong dự

án

G3 Nắm được quy trình, phương pháp và công nghệ phát triển sản phẩm phần mềm tại

doanh nghiệp

G4 Có khả năng tìm hiểu vấn đề, mô hình hóa vấn đề và tham gia giải quyết vấn đề G5 Phát triển kỹ năng tư duy, kỹ năng làm việc nhóm và kỹ năng trình bày

G6 Đọc, hiểu các tài liệu và giao tiếp bằng tiếng Anh  

Ngày đăng: 15/05/2024, 09:22

w