Tuần 3: Nhận Task và tham gia thực hiện dự ánNội dung thực tập • Tìm hiểu các thao tác và sử dụng macbook, cài đặt môi trường lập trình trên macbook.. • Nghiên cứu task được assign và th
Trang 1Báo cáo thực tập doanh nghiệp
SE 501.011.PMCL
Backend Developer
Trang 2Nội dung thuyết trình
Giới thiệu công ty
Trang 3• Tên công ty: Công ty TNHH Vitalify Á Châu
• Thành lập: 2008
• Lĩnh vực kinh doanh: Phát triển các ứng dụng web, ứng dụng di động, phát
triển game
• Địa chỉ: 224A Đ Điện Biên Phủ, Phường 6, Quận 3, Thành phố Hồ Chí Minh.
Giới thiệu công ty Vitalify Asia (VFA)
Trang 4Giới thiệu công ty Vitalify Asia (VFA)
Trang 5Nền tảng và Công nghệ
Trang 6• Vị trí: Thực tập sinh Backend – NestJS
Trang 7Tuần 1: Làm quen môi trường làm việc
Nội dung thực tập
• Giới thiệu về công ty, phòng ban, vị trí làm việc, giới thiệu về người hướng dẫn và các quy tắc chung
• Đọc hiểu development guideline như:
• Development Guideline Overview
• Definition & Rule o Workflow
• Gitflow o Daily report
Trang 8Nội dung thực tập
Ứng dụng Chatwork
Trang 9Tuần 2: Tiếp nhận phòng ban và tham gia dự án
Nội dung thực tập
• Cài đặt các IDE, công cụ để phát triển phần mềm cần thiết: như Docker, PostgreSQL, PgAdmin4, cài đặt VPN với Tunnelblick
• Được training quy trình Git mà team đang áp dụng:
• Các môi trường triển khai trên git (Dev, Staging, Production)
• Quy trình Assign và nhận Task thông qua các Issue
• Quy tắc đặt tên branch, commit theo yêu cầu dự án
• Được training quy trình làm việc, meeting và report:
• Report vào cuối ngày
• Ước tính thời gian cho task
• Quy trình tham gia các cuộc meeting
• Tham gia và tìm hiểu về dự án mà team đang thực hiện, Tải source code, cài đặt các môi trường cần thiết để chạy ứng dụng
• Đọc và nghiên cứu source code
Trang 10Tuần 3: Nhận Task và tham gia thực hiện dự án
Nội dung thực tập
• Tìm hiểu các thao tác và sử dụng macbook, cài đặt môi trường lập trình trên macbook
• Nghiên cứu task được assign và thực hiện:
• Điều tra lỗi trong ứng dụng
• Phân tích nghiệp vụ và logic xử lý dựa trên các file tài liệu (tiếng Nhật)
• Thực hiện tái hiện lỗi (chuẩn bị dữ liệu cần thiết để tái hiện)
• Nghiên cứu mã nguồn và tìm lỗi
• Đề xuất hướng giải quyết
• Thực hiện sửa lỗi trên mã nguồn
• Tạo file báo cáo chứng minh lỗi đã được sửa (Evidence)
• Commit code và chờ review mã nguồn sau đó tiến hành merge code và release lên môi trường develop
Trang 11Những tuần còn lại:
Nội dung thực tập
• Tiếp tục được assign các task tương tự
• Phạm vi dự án và công việc thực hiện tương tự như Tuần 3
Trang 12Tóm tắt về dự án
Rakuten Investment Management
"Rakuten", là một công ty thương mại điện tử và
Internet của Nhật Bản có trụ sở tại Tokyo, được
thành lập vào năm 1997 bởi Mikitani Hiroshi Cho
đến hiện nay, Rakuten sử hữu hàng chục loại
doanh nghiệp và một lượng lớn các công ty con
Rakuten Investment Management Inc (Rakuten IM) là một công ty quản lý quỹ đầu tư thuộc tập đoàn
Rakuten hoạt động trong lĩnh vực quản lý quỹ đầu tư và có thể cung cấp các sản phẩm và dịch vụ liên quan đến đầu tư tài chính.
Trang 13Tóm tắt về dự án
Yêu cầu dự án:
• Dự án Rakuten Investment Management tại Vitalify Asia là một dự án thuộc doanh nghiệp Rakuten Investment Management Inc và nó đã được hoàn thành và đang trong quá trình hoạt động
• Tuy nhiên tới thời điểm hiện tại, đối tác phía Rakuten đã chuyển đổi hệ thống và công nghệ sang một nền tảng mới với hệ thống tương tự với phiên bản trước đó Tuy nhiên trong quá trình chuyển đổi, hệ thống mới đang gặp một số các kết quả không mong muốn trên hệ thống, do đó mong muốn được điều tra nguyên nhân và sửa đổi, tối ưu hệ thống cũng như tìm những lỗ hổng tiềm ẩn trên hệ thống
Trang 14Tóm tắt về dự án
Rakuten Investment Management
Chinese Team Vietnamese Team
Japanese Clients
Cơ cấu đội ngũ dự án:
Trang 15Developer (Dev): Nhiệm
vụ chính là phát triển phần mềm, nhận công việc từ BPM hoặc Leader
Trang 16Tóm tắt về dự án
Công nghệ sử dụng trong dự án
Trang 17Tóm tắt về dự án
Công việc thực hiện trong dự án:
Yêu cầu:
• BPM nhận các Task hoặc tài liệu mô tả hiện tượng lỗi phát sinh từ khách hàng và tiến
hành phân tích, dịch tài liệu tiếng Nhật cho và assign cho Dev
• Dev cần phải điều tra nguyên nhân và tìm ra lỗi và khắc phục lỗi
• Dev cần đưa ra các testcase và xác nhận với BPM để chứng minh lỗi đã được sửa
chính xác và không ảnh hưởng đến các tính năng đã có khác
• Dev cần tạo File tài liệu mô tả các testcase và chứng minh lỗi đã được sửa hoặc tính
năng đã được cập nhật
Trang 18Tóm tắt về dự án
Công việc thực hiện trong dự án:
• Đọc mô tả hiện tượng lỗi hoặc yêu cầu của khách hàng (Được BPM dịch từ tiếng Nhật sang Việt)
• Tìm kiếm các tài liệu liên quan
• Tìm kiếm source code
1.Nghiên cứu API, màn hình và hiện tượng bất thường của lỗi:
Trang 19Tóm tắt về dự án
Công việc thực hiện trong dự án:
• Đọc mã nguồn kết hợp với tài liệu đặc tả để hiểu chức năng của API hoặc tính năng cần sửa đổi
• Để tái hiện được API cần chuẩn bị các dữ liệu liên quan trong cơ sở dữ liệu đáp ứng với điều kiện gây ra lỗi
• Để có được dữ liệu đôi lúc cần phải xin phép truy cập vào máy chủ staging để lấy dữ liệu kiểm thử
2.Tái hiện lỗi
Trang 20Tóm tắt về dự án
Công việc thực hiện trong dự án:
• Xác nhận lỗi cần được sửa đổi theo yêu cầu
• Dev trình bày nguyên nhân lỗi, đưa ra các giải pháp và hướng giải quyết vấn đề và quy trình thực hiện
• Sau khi được BPM và Leader phê duyệt, Dev chia nhỏ các task và đưa ra Estimate số lượng thời gian để hoàn thành task
• Sau khi được phê duyệt Estimate, Dev tiếp tục thực hiện theo kế hoạch đã đề xuất
3.Trình bày nguyên nhân và đề xuất hướng giải quyết
Trang 21Tóm tắt về dự án
Công việc thực hiện trong dự án:
• Xác định các tập dữ liệu và file liên quan
• Đảm bảo API hoạt động mà không bị chặn bởi những điều kiện và ràng buộc của những phần tính năng khác
• Mã sửa lỗi cần phải tường minh và đơn giản, dễ hiểu nhất có thể
• Mã được thêm phải kèm chú thích mã bằng tiếng Nhật
• Phải kế thừa cách viết mã đã có
4 Thực hiện Fix lỗi cho các API hoặc màn hình
Trang 22Tóm tắt về dự án
Công việc thực hiện trong dự án:
• Kiểm thử lại tính năng dựa trên các Testcase đã đề xuất trước đó
• Mô tả kết quả với BPM hoặc Leader để review sơ bộ
• Tạo file Evidence
• Gửi kết quả Evidence đến khách hàng và chờ xác nhận
5 Review Evidence và Code
Trang 23Tóm tắt về dự án
Công việc thực hiện trong dự án:
• Commit phần mã đã thực hiện và tạo Merge Request theo đúng quy trình của dự án
• Review chéo mã nguồn dựa trên Merge Request được tạo
• Release đến các môi trường khác (Staging, Production) để khách tiến hành kiểm thử
và phản hồi
6.Tạo Merge Request và Release
Trang 24Tổng kết
Kết quả công việc
Thuận lợi
Khó khăn
• Hoàn thành tất cả những nhiệm vụ được giao, đúng tiến độ
• Mang lại những đóng góp tích cực cho nhóm và dự án
• Môi trường làm việc năng động, tích cực
• Được các anh chị và đồng nghiệp hỗ trợ và giúp đỡ tận tình
• Phải tự nghiên cứu mọi thứ về hệ thống và mã nguồn
• Hệ thống khá lớn và phức tạp
• Nghiệp vụ không rõ ràng
• Tài liệu bằng tiếng Nhật
• Công việc bảo trì có phần lặp lại, hạn chế hơn so với khi phát triển tính năng
Trang 25Tổng kết
• Thời gian thực tập tại Vitalify mang lại cái nhìn thực tế hơn về môi trường làm việc trong doanh nghiệp, cũng như trau dồi khả năng tự học hỏi, nghiên cứu
• Ứng tuyển thử việc tại Công ty cổ phần I-Soft
Giá trị và Kế hoạch tương lai