CHƯƠNG 1: TỔNG QUAN VỀ CÔNG TY TMA VÀ VỊ TRÍ TESTER 1. Giới thiệu tổng quát về công ty TMA Bình Định 1. Quá trình hình thành và phát triển của công ty Hình 1: Logo của công ty TMA Được thành lập năm 1997, TMA là tập đoàn công nghệ hàng đầu Việt Nam với 4000 kỹ sư và khách hàng là những tập đoàn công nghệ cao hàng đầu thế giới từ 30 quốc gia. TMA hiện có 7 chi nhánh tại Việt Nam (6 tại Tp.HCM và 1 ở Tp.
Quy Nhơn) cùng 6 chi nhánh ở nước ngoài (Mỹ, Úc, Canada, Đức, Nhật, Singapore). Năm 2017 TMA quyết định đầu tư xây dựng Công viên sáng tạo TMA Bình Định (TMA Innovation Park) tại Thung Lũng Sáng Tạo Quy Nhơn. Tháng 6 năm 2018, TMA đã mở chi nhánh tại Bình Định. Tháng 8 năm 2018, TMA đã khởi công xây dựng Công viên Sáng tạo TMA Bình Định (TMA Innovation Park – TIP) trên 10 hecta tại Thung lũng Sáng tạo Quy Nhơn với vốn đầu tư hàng trăm tỷ đồng.
Với 25 năm kinh nghiệm cung cấp giải pháp phần mềm cho hàng trăm khách hàng từ 30 quốc gia, TMA luôn là đối tác chiến lược đáng tin cậy, mang đến các sản phẩm, dịch vụ, giải pháp hiệu quả, phục vụ đa dạng các mục tiêu quản trị, sản xuất kinh doanh của doanh nghiệp và tổ chức. Tầm nhìn và sứ mệnh 3 Tầm nhìn của TMA Solutions là trở thành một trong những công ty phần mềm hàng đầu thế giới, cung cấp các giải pháp và dịch vụ chất lượng cao cho khách hàng. Công viên Sáng tạo TMA mang sứ mệnh trở thành trung tâm phát triển phần mềm và công nghệ cao hàng đầu tại miền Trung, góp phần quan trọng đưa Thung lũng sáng tạo Quy Nhơn trở thành một điểm đến của công nghệ 4.0 tại Việt Nam. Giá trị cốt lõi Chất lượng: TMA Solutions có thể đặt chất lượng là giá trị cốt lõi để đảm bảo việc cung cấp các sản phẩm và dịch vụ công nghệ thông tin đáng tin cậy và chất lượng cao.
Đổi mới: Đổi mới liên tục là một yếu tố quan trọng trong ngành công nghệ thông tin. Công ty có thể tạo ra giá trị bằng cách áp dụng công nghệ mới, nghiên cứu và phát triển các giải pháp sáng tạo, và cung cấp những ý tưởng mới để đáp ứng nhu cầu của khách hàng. Đào tạo và phát triển nhân viên: Công ty có thể đầu tư vào việc đào tạo và phát triển nhân viên để tạo ra một đội ngũ chất lượng cao, có năng lực và kiến thức để đối phó với các thách thức trong lĩnh vực công nghệ thông tin. Lĩnh vực hoạt động Trí tuệ nhân tạo/ Máy học: Đội ngũ kỹ sư của chúng tôi đã ứng dụng Trí tuệ nhân tạo vào lĩnh vực tự động hóa máy móc, giáo dục, dược phẩm, xe hơi, quản trị nguồn nhân lực, nông nghiệp…với các công nghệ và giải pháp: - Phân tích ngôn ngữ tự nhiên - Nhận dạng hình ảnh và video (Object Detection) - Nhận dạng tài liệu (Document Parser) - Nhận dạng quảng cáo (Brand Detection) - Phân tích năng lực và hành vi học sinh (Student Analytics) - Tối ưu hoạt động máy móc (Machine Optimization) Dữ liệu lớn/ Phân tích dữ liệu: Được thành lập vào năm 2013, đội ngũ phân tích dữ liệu của chúng tôi đã phát triển nhanh chóng với gần 200 kỹ sư với nhiều dịch vụ: 4 - Thiết kế hệ thống dữ liệu doanh nghiệp - Thu thập và phân tích dữ liệu trong thời gian thực - Tích hợp và tổng hợp dữ liệu - Chuyển đổi dữ liệu - Dự báo Iot và thiết bị thông minh: Chúng tôi có hơn 150 kỹ sư đang làm việc trong các dự án về IoT và Thiết bị thông minh áp dụng trong nhiều lĩnh vực: - Công nghiệp - Điện tử - Xe hơi - Viễn thông - Y tế - Giao thông - Quản lý học sinh - Quản lý tài sản 1.
Tổng quan về vị trí Tester 1. Mô tả về vị trí Tester Tester – nhân viên kiểm thử phần mềm – là vị trí có vai trò kiểm tra bước cuối của dự án, phần mềm trước khi các dự án, phần mềm này được triển khai và hoàn thiện. Tùy thuộc vào từng lĩnh vực, trường hợp, Tester có thể thực hiện công việc này bằng thủ công hoặc bằng các phần mềm. Hay đơn giản hơn, nhân viên Tester chính là người chịu trách nhiệm ở bước cuối cùng của phần mềm để trong quá trình sử dụng không xảy ra lỗi, sự cố.
Một số công việc chính của vị trí Tester: - Nghiên cứu, phân tích yêu cầu : Tester cần ngân cứu, phân tích, xác định những yêu cầu liên quan đến kỹ thuật trong quá trình xây dựng, phát triển dự án, phần mềm. Họ sẽ cùng phối hợp với các lập trình viên để thực hiện công việc này. Việc phân tích cần đảm bảo chính xác, nếu phân tích không đúng, sẽ làm xuất hiện sự sai lệch giữa các bên trong dự án. 5 - Đánh giá, phát hiện các vấn đề của phần mềm: Đây là nhiệm vụ quan trọng nhất của một Tester.
Họ sẽ thực hiện kiểm thử, phát hiện các lỗi, vấn đề tiềm ẩn có thể ảnh hưởng đến chất lượng phần mềm. Tìm lỗi là kỹ năng Tester cần biết và rất quan trọng. Tester cần thực hiện kiểm thử, chạy các test case theo kịch bản có sẵn hoặc các danh sách kiểm tra được yêu cầu trước đó. - Ngăn ngừa các lỗi có thể phát sinh của phần mềm: Bên cạnh việc đánh giá, phát hiện các vấn đề, Tester cần thực hiện các nghiệp vụ chuyên môn để ngăn chặn được việc phát sinh lỗi ngay từ đầu.
Để làm được điều đó, các Tester cần có khả năng quan sát cũng như đánh giá, kiểm tra trong mọi quy trình xây dựng, phát triển của phần mềm. - Tương tác với khách hàng: Tester sẽ cần phải tương tác trực tiếp với khách hàng để có thể nắm được các yêu cầu, mong muốn của khách hàng về sản phẩm để lên được các kịch bản hoặc danh mục cần kiểm tra khi chạy thử phần mềm, ứng dụng. - Chuẩn bị các bản báo cáo liên quan đến việc kiểm thử phần mềm. Chịu trách nhiệm hỗ trợ cho các lập trình viên phát triển phần mềm.
Các kỹ năng cần có của một Tester - Kỹ năng chuyên môn về kỹ thuật: Đối với Tester, bạn sẽ cần có các kiến thức, kỹ năng chuyên sâu về kỹ thuật. Các Tester thường được yêu cầu có sự hiểu biết rộng và thành thạo về các ngôn ngữ lập trình và công cụ có sẵn. Ngoài ra, một người tester cũng cần có khả năng phân tích, đánh giá tốt - Kỹ năng sắp xếp, quản lý công việc: Khi thực hiện kiểm thử, Tester sẽ phải thực hiện nhiều nghiệp vụ, giao tiếp với nhiều nhân sự, bộ phận khác nhau. Do đó, tester cần có được kỹ năng sắp xếp và quản lý công việc khoa học, điều này sẽ giúp bạn không bị chồng chéo trong công việc, xử lý thông tin.
- Kỹ năng viết báo cáo: Kết quả sau quá trình kiểm thử sẽ được trình bày dưới dạng các báo cáo lỗi. Tester sẽ cần có kỹ năng viết báo cáo, trình bày khoa học và chi tiết. Ngoài ra, cần rõ ràng trong các lỗi của phần mềm để giúp cho nhân sự liên quan xử lý được các lỗi dễ dàng hơn. - Kỹ năng viết testcase: Test Case là phần quan trọng của các quy trình kiểm thử.
Tester cần có khả năng viết testcase phù hợp với những phân đoạn, quy trình, công việc khác nhau. Công việc của Tester có hiệu quả hay không sẽ phụ thuộc vào đội các bản testcase có phù hợp hay không. 6 - Kỹ năng giao tiếp: Một Tester sẽ cần giao tiếp với nhiều bộ phận khác nhau như Developer, Leader, Manager, Coder, BA,… để tìm được các lỗi thiếu sót. Do đó, tester cần có khả năng giao tiếp, trình bày tốt, rõ ràng để giúp quá trình kiểm thử được hiệu quả hơn.
- Chi tiết và tỉ mỉ: Đây là yêu cầu để kết quả công việc đạt hiệu quả cao nhất. Bởi vì khi testing, chúng ta phải quan tâm đến từng dấu chấm, dấu phẩy của từng thông điệp. Ngoài ra, ngay cả mức độ logic của thông điệp và các icon nhỏ nhất cũng phải được xem xét một cách kỹ càng. Nếu thông điệp đưa tới người dùng có bất kỳ lỗi nào, nó không chỉ ảnh hưởng đến bạn mà còn ảnh hưởng đến cả sự phát triển của công ty.
Cơ hội nghề nghiệp Hiện nay ở Việt Nam nghề Tester có cơ hội làm việc rất cao nhất là đối với các bạn trẻ có sự nhạy bén, đam mê sáng tạo. Nếu kiên trì theo nghề tester bạn sẽ luôn cập nhật được những công nghệ mới, được tiếp xúc với các dự án lớn khác nhau, học hỏi được nhiều thứ. Đối với các Tester dày dạn kinh nghiệm thì cơ hội thăng tiến trong nghề khá cao. Lương của Tester cũng khá đa dạng.
Tùy thuộc vào năng lực và kinh nghiệm, mức lương cho Tester sẽ có sự khác nhau. Cụ thể: - Đối với những Tester mới vào nghề, chưa có kinh nghiệm: Mức lương dao động từ 500$- 700$ tương đương từ 10 -15 triệu đồng/tháng. - Đối với những Tester giàu kinh nghiệm, kỹ năng giỏi Mức lương dao động từ 700$ – 1000$. - Đối với những quản lý Tester: Mức lương dao động từ 1000$ – 2000$.
Lộ trình phát triển của nghề Tester cũng rất rõ ràng và đầy tiềm năng, được chia theo các level sau: - Level 1: Fresher. Là những bạn mới tốt nghiệp các khóa đào tạo Tester cơ bản và bắt đầu đi làm Tester. Ở level này, các bạn Tester hoàn toàn là các bạn mới học xong các khóa học về Kiểm thử phần mềm, mới tiếp xúc môi trường doanh nghiệp, hoặc có thể là những người đã đi làm trái ngành mới thay đổi công việc sang Tester. Ở level junior, bạn Tester đã hiểu thực thi các test case, thêm vào đó, có thể báo cáo các bugs nếu có.
Đây là những chuyên gia thành thạo về kỹ thuật testing, nắm rõ các yêu cầu kiểm thử phần mềm cho các doanh nghiệp với các ứng dụng phức tạp như tài chính, sức khỏe, thương mại điện tử… - Level 4: Test Leader. Thông thường, sau khoảng 5 năm kinh nghiệm trở lên, tester có thể nắm giữ vai trò quản lý. Những người này chịu trách nhiệm tổ chức công việc cần được thực hiện và phân công nhiệm vụ cụ thể cho các Tester trong team dự án. Tương ứng với số năm kinh nghiệm Test Leader có sẽ là quy mô lớn, nhỏ khác nhau mà các đội họ sẽ được quản lý.
- Level 5: Test Manager. Là những người tổ chức và điều phối các nhóm kiểm thử (test team): quản lý metrics, lập kế hoạch chiến lược và đưa ra dự đoán. - Level 6: Senior Test Manager.