1. Trang chủ
  2. » Cao đẳng - Đại học

Báo cáo thực tập full stack developer

15 10 0

Đ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

Định dạng
Số trang 15
Dung lượng 818,84 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Là một sinh viên thuộc khoa Công nghệ phần mềm, em muốn mình được tiếp xúc với tất cả các loại, các cách, các hướng đi của việc phát triển phần mềm, đồng thời cảm thấy các mục tiêu và gi

Trang 1

KHOA CÔNG NGHỆ PHẦN MỀM

Báo Cáo Thực Tập

Full Stack Developer

Công ty thực tập: Công ty TNHH CodeLink

Người phụ trách: Nguyễn Trần Phong – Technical Leader

Thực tập sinh: Dương Bình Trọng

Tp Hồ Chí Minh, tháng 06 năm 2022

Trang 2

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

KHOA CÔNG NGHỆ PHẦN MỀM

Báo Cáo Thực Tập

Full Stack Developer

Công ty thực tập: Công ty TNHH CodeLink

Người phụ trách: Nguyễn Trần Phong – Technical Leader

Thực tập sinh: Dương Bình Trọng

Tp Hồ Chí Minh, tháng 06 năm 2022

Trang 3

Lời Mở Đầu

Ngày nay, ngành công nghiệp phần mềm đã và đang là một trong những ngành nghề có sức phát triển vô cùng mạnh mẽ, chiến tỉ trọng lớn trong nền kinh tế toàn cầu

và không hề có dấu hiệu chậm lại Nhu cầu thị trường cho một sản phẩm phần mềm hiện nay là cao hơn bao giờ hết Đứng trước đà phát triển này, cùng với nhu cầu vô cùng lớn, đã có nhiều công ty ra đời nhằm đáp ứng thị trường

Một trong những công ty đó là CodeLink Đây là một công ty đa quốc gia với

văn phòng tại Thành phố Hồ Chí Minh, và Toronto (Canada) Công ty được thành lập

với châm ngôn Desgin Build Scale, luôn đưa chất lượng phần mềm và nhân tố con

người chất lượng cao lên hàng đầu

Là một sinh viên thuộc khoa Công nghệ phần mềm, em muốn mình được tiếp xúc với tất cả các loại, các cách, các hướng đi của việc phát triển phần mềm, đồng thời

cảm thấy các mục tiêu và giá trị của CodeLink rất phù hợp với định hướng của bản thân, nên em đã quyết định chọn CodeLink là nơi bắt đầu thực tập, mài dũa thêm những

kiến thức và kinh nghiệm thực tế trong những bước chập chững đầu tiên của sự nghiệp

Trang 4

Lời Cảm Ơn

Trân trọng gửi lời cảm ơn đến Công ty CodeLink đã tạo điều kiện cho em có cơ hội được thực tập tại công ty

Em đã được học rất nhiều thứ từ sự chỉ dẫn nhiệt tình của các anh, chị trong công

ty Em không những học được những kỹ thuật, kiến thức trong các dự án thực tế, mà còn tích góp được cho bản thân những kinh nghiệm khi làm một nhân viên trong công

ty, cách giao tiếp, làm việc nhóm trong các dự án chung Chân thành cảm ơn các anh chị, đặc biệt là anh Phong, đã giúp đỡ, hướng dẫn cũng như theo sát để góp ý em trong suốt quá trình thực tập

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

Dương Bình Trọng

Tp Hồ Chí Minh, ngày 13 tháng 06 năm 2022

Trang 5

Nhận Xét Của Khoa

Trang 6

MỤC LỤC

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

Giới thiệu về công ty CodeLink 7

Một số dự án của công ty 7

Văn hoá công ty 8

NỘI DUNG THỰC TẬP 9

Tổng quan kế hoạch thực tập 9

Tuần 1 - Làm quen với công ty, setup công cụ, máy móc, tự học Python 9

Tuần 2 - Tìm hiểu về AI/ML, tham gia vào team HAL 10

Tuần 3 - Viết thư viện Python hỗ trợ tiền xử lí dữ liệu văn bản cho mô hình Text-To-Speech (ViCleaner) 10

Tuần 4 - Hoàn thiện và viết unit test cho thư viện ViCleaner 10

Tuần 5 - Làm quen với mô hình học máy hiện tại của team, học cách điều chỉnh để huấn luyện mô hình 11

Tuần 6 - Tìm hiểu thực hành sử dụng một số dịch vụ của Google Cloud Platform 11

Tuần 7 - Xây dựng Text-To-Speech API 11

Tuần 8 - Tìm hiểu và triển khai các phương pháp giảm thời gian phản hồi của API 12

GIỚI THIỆU VỀ DỰ ÁN 13

TÀI LIỆU THAM KHẢO 14

TỔNG KẾT 15

Trang 7

GIỚI THIỆU CÔNG TY THỰC TẬP Giới thiệu về công ty CodeLink

www.codelink.io

CodeLink là công ty phần mềm chuyên về phát triển sản phẩm cho các công ty

startup Công ty sử dụng những quy trình phát triển mới nhất như là Agile, Extreme Programming kết hợp Code Review, Pair Programming, Test Driven Development

(TDD) để đảm bảo chất lượng cho đội ngũ nhân viên và sản phẩm làm ra CodeLink

sử dụng Rails, NodeJS, React, ReactNative và Flutter cho ứng dụng trên web và mobile

Khách hàng của CodeLink đến từ Hong Kong, Úc, Mỹ, Canada và Việt Nam

Các kỹ sư sẽ làm việc trực tiếp với những CEO, CTO Yêu cầu công việc khá cao nhưng các bạn nhân viên sẽ phát triển rất nhanh từ những dự án này

CodeLink muốn xây dựng một môi trường phát triển phần mềm chuyên nghiệp

Các bạn kỹ sư sẽ được đào tạo và học hỏi những công nghệ mới nhất từ những thành viên khác

Một số dự án của công ty

Trang 8

Văn hoá công ty

Trang 9

NỘI DUNG THỰC TẬP

Đợt thực tập trong 2 tháng nhằm mục đích giúp sinh viên thực tập được đào tạo

về kĩ năng lập trình với vị trí Full Stack Developer, đồ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 làm việc chuyên nghiệp

Tổng quan kế hoạch thực tập

Kéo dài trong 8 tuần từ ngày 15/11/2021 đến ngày 14/01/2022

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

1 Làm quen với công ty, setup công cụ,

máy móc, tự học Python

Anh Phong, chị Khang, chị Min và anh Tĩnh

2 Tìm hiểu về AI/ML, tham gia vào team

HAL

Anh Nguyễn Trần Phong

3 Viết thư viện Python hỗ trợ tiền xử lí dữ

liệu văn bản cho mô hình

Text-To-Speech (ViCleaner)

Anh Nguyễn Trần Phong

4 Hoàn thiện và viết unit test cho thư viện

ViCleaner

Anh Nguyễn Trần Phong

5 Làm quen với mô hình học máy hiện tại

của team, học cách điều chỉnh để huấn

luyện mô hình

Anh Nguyễn Trần Phong

6 Tìm hiểu thực hành sử dụng một số

dịch vụ của Google Cloud Platform

(GCP)

Anh Nguyễn Trần Phong

7 Xây dựng Text-To-Speech API Anh Nguyễn Trần Phong

8 Tìm hiểu và triển khai các phương pháp

giảm thời gian phản hồi của API

Anh Nguyễn Trần Phong

Tuần 1 - Làm quen với công ty, setup công cụ, máy móc, tự học Python Nội dung chi tiết

• Được nghe anh Daniel - Co-founder giới thiệu về công ty, quá trình thành lập và phát triển, cách công ty tổ chức và quản lý công việc hàng ngày, cũng như

• Thực tập sinh setup máy móc làm việc, các phần mềm lập trình, các công cụ giao tiếp (Slack, Gmail ), công cụ quản lý dự án (Github, Jira )

• Sau đó thực tập sinh tự học về ngôn ngữ lập trình Python để chuẩn bị tham gia vào dự án ở tuần tiếp theo

Trang 10

Kết quả

• Hiểu thêm về công ty CodeLink, quá trình thành lập và phát triển

• Có thêm kỹ năng về sử dụng Slack, Email trong công việc, làm việc nhóm, giao tiếp tốt hơn

• Có thêm hiểu biết về ngôn ngữ lập trình Python

Tuần 2 - Tìm hiểu về AI/ML, tham gia vào team HAL

Nội dung chi tiết

• Được anh Phong (người phụ trách/hướng dẫn) giới thiệu tổng quát về dự án hiện tại mà team đang nghiên cứu và triển khai

• Team HAL đang phụ trách những dự án liên quan đến AI/ML tập trung vào các vấn đề xoay quanh Xử lý Ngôn ngữ tự nhiên (NLP)

• Tự học các kiến thức cơ bản nhất về AI/ML

• Tìm hiểu về các công cụ, phần mềm đang được sử dụng trong dự án

Kết quả

• Hiểu rõ về team cũng như dự án mà mình được phân vào: xây dựng mô hình chuyển văn bản thành giọng nói (Text-To-Speech)

• Có thêm được những kiến thức cơ bản nhất về AI/ML

Tuần 3 - Viết thư viện Python hỗ trợ tiền xử lí dữ liệu văn bản cho mô hình Text-To-Speech (ViCleaner)

Nội dung chi tiết

• Sau khi có được những kiến thức về Python, AI/ML cũng như về dự án hiện tại của team, thực tập sinh nhận task đầu tiên: xây dựng thư viện Python (package)

hỗ trợ tiền xử lí dữ liệu văn bản

Ví dụ: “Ngày 13/6” -> “Ngày mười ba tháng sáu”

• Phương pháp được lựa chọn là rule-based approach sử dụng regex

Kết quả

• Khởi tạo được ViCleaner – thư viện hỗ trợ tiền xử lí dữ liệu văn bản nằm trong source code của project hiện tại

Tuần 4 - Hoàn thiện và viết unit test cho thư viện ViCleaner

Nội dung chi tiết

• Tìm hiểu về thư viện unittest của Python

• Di chuyển code ViCleaner ra một repo Github riêng, tái cấu trúc lại mã nguồn cho dễ đọc, trong sáng hơn

• Viết unit test cho từng module trong thư viện

Trang 11

Kết quả

• Hoàn thiện thư viện ViCleaner

• Biết cách viết unit test

Tuần 5 - Làm quen với mô hình học máy hiện tại của team, học cách điều chỉnh để huấn luyện mô hình

Nội dung chi tiết

• Làm quen với một số mô hình máy học cho việc chuyển văn bản thành giọng nói (Text-To-Speech) mà team đang nghiên cứu và triển khai như: FastPtich, WaveGlow, Squeeze

• Học cách điều chỉnh các thông số để huấn luyện ra mô hình cho kết quả tốt hơn

Kết quả

• Hiểu thêm về một số mô hình máy học

• Có cơ hội sử dụng Vertex-AI của GCP để huấn luyện mô hình

Tuần 6 - Tìm hiểu thực hành sử dụng một số dịch vụ của Google Cloud Platform

Nội dung chi tiết

• Tìm hiểu về một số dịch vụ của Google Cloud Platform: Cloud Run, Cloud Function, Cloud Build, Storage…

• Thực hành deploy một project đơn giản lên Cloud Run và Cloud Function, setup CI/CD sử dụng Cloud Build

Kết quả

• Có kiến thức và kinh nghiệm thực chiến về Google Cloud Platform và một số dịch vụ liên quan

Tuần 7 - Xây dựng Text-To-Speech API

Nội dung chi tiết

• Tiến hành xây dựng API cho những mô hình đã huấn luyện sử dụng Flask (Python) và Cloud Run (GCP)

• Xây dựng website sử dụng API đó

Kết quả

• Xây dựng thành công Text-To-Speech API của công ty

Trang 12

Tuần 8 - Tìm hiểu và triển khai các phương pháp giảm thời gian phản hồi của API

Nội dung chi tiết

• API gặp vấn đề về thời gian phản hồi chưa nhanh như kì vọng với các đoạn văn bản dài bởi vì thời gian chuyển từ văn bản sang giọng nói của mô hình còn chậm

• Các hướng giải quyết:

o Nghiên cứu thêm trên mô hình hiện tại nhằm giảm thời gian inference

o Vertical API Scale

o Horizontal API Scale

• Quyết định áp dụng Horizontal API Scale

Kết quả

• Giảm được thời gian phản hồi của API từ 50-60%

Trang 13

GIỚI THIỆU VỀ DỰ ÁN Tổng quan

Dự án ban đầu được triển khai như là một sân chơi để các nhân viên trong công

ty (team) có một sân chơi để thoả thích tìm hiểu, học hỏi thêm về AI/ML Trước đó,

team đã tiến hành tìm hiểu, vọc vành các mảng khác nhau liên quan đến AI/ML và quyết

định sẽ tập trung vào các bài toán liên quan đến văn bản và giọng nói tiếng Việt

Thực hiện

Trước khi em vào thực tập, team đã nghiên cứu và triển khai thành công API

chuyển giọng nói thành văn bản Trong quá trình thực tập, em đã được tham gia vào

quá trình phát triển API chuyển văn bản thành giọng nói với sự giúp đỡ của anh Phong

– Technical Leader của công ty

Kết quả

Xây dựng thành công API và được demo/triển khai tại đường link:

https://ai.codelink.io/text-to-speech

Trang 14

TÀI LIỆU THAM KHẢO

[1] https://www.python.org/

[2] https://cloud.google.com/

[3] https://fastpitch.github.io/

[4] Cùng một số tài liệu nội bộ của dự án

Trang 15

TỔNG KẾT

Qua 2 tháng thực tập tại công ty, em đã được cống hiến công sức của mình vào việc xây dựng một Text-To-Speech API cùng với website demo Em may mắn được tham gia từ những bước đầu tiên nhất như tiền xử lí dữ liệu, huấn luyện mô hình cho đến việc triển khai API để sử dụng mô hình đó

Chân thành cảm ơn cơ hội thực tập tại công ty CodeLink và đặc biệt là sự giúp

đỡ rất nhiệt tình từ anh Phong đã giúp em hoàn thành tốt đợt thực tập 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 giúp em hoàn thành bài báo cáo này

Ngày đăng: 16/06/2022, 21:13

TỪ KHÓA LIÊN QUAN

w