Tester và Developer, ai kiếm được nhiều tiền hơn?

Lang thang trên mạng để tìm kiếm chủ đề cho bài report tháng này, đang thất vọng vì tìm mãi chẳng có cái gì hay ho hoặc không bị trùng lặp thì mình bắt gặp được 1 bài viết khá hay, mình đoán là không ít các anh/chi/em bạn bè cùng lĩnh vực IT như mình quan tâm :v Nhìn bài viết, đập ngay vào mắt mình là cái tip : "Who Earns More, Software Tester Or Developer? ". Bạn nghĩ sao khi được hỏi câu hỏi này??? 😄

Khách quan mà nói thì đa số các công ty phần mềm trong nước nói riêng và lĩnh vực IT ở Việt Nam nói chung đều đánh giá cao developer hơn là tester (còn ở nước ngoài thì mình không dám đề cập ở đây vì không rõ =)) ). Nếu so sánh cả 2 bên ở cùng 1 mức điểm (rank) thì có vẻ như lương bên developer của bạn sẽ nhỉnh hơn 1 chút so với tester 😄, nhưng nếu bạn đã ở trình senior và master thì không chắc điều này vẫn còn là đúng =)) .

Đây chỉ là quan điểm của riêng mình từ nhiều nguồn thông tin tiếp xúc và kinh nghiệm sau khi đã trải nghiệm cả 2 vai trò developer và tester. Còn chúng ta cùng đi tìm hiểu xem quan điểm của tác giả bài viết này thì họ nghĩ như thế nào nhé (yeah)

Tác giả kể từng được hỏi 1 câu rằng : "Tại sao bạn lại chọn công việc QA? Bạn đã biết lập trình QTP (VB Script) rồi thì tại sao lại không cố để trở thành 1 developer?" . Nhìn vào câu này, tôi có cảm giác như developer là một cái gì đó quan trọng hơn, được ái mộ hơn, hot hơn =))

Và có nhiều câu hỏi mà chúng ta thường hay được nghe ở softwaretestinghelp :

  • Tôi nên chọn làm một developer hay tester nếu tôi bước chân vào lĩnh vực IT?
  • Developer hay Tester thì sẽ phát triển sự nghiệp tốt hơn?
  • Tôi nên trả lời như thế nào nếu có ai đó hỏi tôi tại sao lại chọn QA (why QA?)
  • Tôi có đang lãng phí thời gian với công việc là một QA trong khi tôi có khả năng để làm 1 developer?
  • Công việc QA có phải kém "an toàn" hơn công việc developer hay không?
  • Tôi đang được giao 1 dự án QA, tôi có nên chuyển hướng hay là ở trong đó và đón nhận các công việc dành cho mình?
  • Có phải tôi không trở thành người quan trọng khi là 1 tester?
  • Có khi nào tất cả các khoản tín dụng (thưởng) sẽ dành cho developer khi sản phẩm được tung ra thị trường?
  • Có phải việc kiểm thử không dành cho những người không phải dân kỹ thuật?
  • Có phải trong 1 dự án, khối lượng công việc dành cho kiểm thử sẽ ít hơn develop, và có thể bạn chỉ cần làm việc part-time?
  • vân vân và mây mây ...

Và đặc biệt có 1 câu hỏi hay đứng top FAQs là - QA có phải là một sự lựa chọn khôn ngoan cho vấn đề tiền bạc? Có phải ở cùng rank thì tester được trả ít hơn developer? Theo như những câu hỏi trên thì mình cảm giác developer như là con cưng của bà vợ lớn còn tester thì là con của bà bé ấy =)) Để giải quyết những câu hỏi trên chúng ta cùng đi tìm hiểu những vấn đề sau nhé (yeah)

1. Nói tester không cần nhiều kỹ năng giống như developer là sai. Tại sao?

  • Tất cả developer test và hầu hết tester viết code : ở đây chúng ta không chỉ đề cập đến Unit test (kiểm thử đơn vị) và Integration test (kiểm thử tích hợp).
  • Các tool như Selenium sử dụng cùng 1 IDE và các ngôn ngữ lập trình được sử dụng để phát triển các trường hợp kiểm thử làm cho việc kiểm thử được thiết lập nhanh chóng và dễ dàng.
  • TDD (Test Driven Development) và các hành vi được định hướng bởi các framework Development đang ngày càng tăng lên. Điều này đơn giản có nghĩa là những developer phải suy nghĩ từ quan điểm của người dùng cuối trong đó có tester. Nên developer cần tầm nhìn và hỗ trợ của tester để thiết lập các framwork này.

Có rất nhiều trường hợp như vậy, nơi mà ranh giới giữa kiểm thử và phát triển không rõ ràng và bị lấn sân sang nhau và dĩ nhiên phải vượt qua kiến thức chuyên biệt (functional) là điều bắt buộc.

Vì vậy, các kỹ năng khóa (key) yêu cầu với cả các đội dev và test là:

  • know-how (hiểu và biết cách làm) quy trình chức năng cốt lõi
  • Các ngôn ngữ lập trình - đặc biệt là Java (TIOBE Index về phổ biến ngôn ngữ lập trình)
  • DB và các khái niệm thiết kế
  • Tư duy phân tích và logic
  • Kỹ năng giao tiếp tốt
  • Thái độ với đồng đội (Team playing)
  • Quản lý công việc bằng tool hoặc bằng tay

2. Sự tham gia vào vòng đời phát triển

Cả 2 team dev và tester đều đóng vai trò quan trọng từ đầu đến cuối trong vòng đời phát triển phần mềm. Ở những công ty áp dụng các phương pháp tiếp cận tích hợp liên tục và kiểm thử liên tục thì tester và developer làm việc liên quan chặt chẽ với nhau (hand in hand). Ngoài ra, trong Agile thì không có sự phân biệt giữa các nhóm phát triển (developer) và nhóm thử nghiệm (tester) - tất cả là một SCRUM (team).

3. Cơ hội phát triển dành cho developer và tester có giống nhau không?

Khả năng phát triển có thể khác nhau đối với mỗi người vì nó phụ thuộc vào khả năng, khát vọng, nỗ lực và hoàn cảnh. Nó không liên quan gì đến ngành IT.

Developer sau đó có thể phát triển tiếp lên cao để trở thành những quản lý, chuyên gia phân tích nghiệp vụ, chuyên gia thiết kế hệ thống, hoặc cũng có thể tham gia vào việc bán hàng, nghiên cứu, ... tùy thuộc vào trình độ, nguyện vọng và cơ hội của họ.

Tương tự như vậy, người tester có thể phát triển thành Test lead, Test manager, Business Analyst (phân tích nghiệp vụ) ... trong lĩnh vực kiểm thử.

4. Có phải là 1 dự án không thể thiếu developer, còn tester có thể có hoặc không?

Việc không thể thiếu dev thì là điều đương nhiên, ai cũng nhận ra điều đó. Nếu không có dev thì lấy đâu ra ứng dụng để cho bạn test :v , nhưng còn vấn đề tester có thể có hoặc không thì sao?

Nếu một bộ phận nhất định nào đó không quan trọng, tại sao lại có nó? Sự mâu thuẫn/chống đối giữa developer và tester mặc dù không còn là vấn đề trong các đội IT, nhưng vẫn luôn là một nhận thức văn hoá clichéd (định kiến) của những người bên ngoài. Đôi khi vẫn có 1 số người có thái độ tôn kính (đề cao) developer và thái độ khinh thị (đánh giá thấp vai trò hơn) đối với tester - nhưng tôi đoán điều này đến từ những người không biết gì cả về quy tắc (cách làm việc của Scrum team). Có nên trở thành một người kiểm thử phần mềm hay không? - là một câu hỏi, không phải trả lời dựa trên ý kiến của người không biết.

Công việc luôn biến động. Thường thì nên cắt giảm những resource không cần thiết (liên kết yếu) nhưng không có nghĩa là luôn luôn loại bỏ QA. Mình còn nhớ trước đây khi còn ở cương vị 1 dev Ruby on Rails, mình đã từng tham gia 1 dự án chỉ có dev mà không có QA (tester). Nhưng các bạn đừng hiểu lầm rằng dự án không cần kiểm thử nhé. Vì dự án nhỏ nên khi dev chúng mình làm xong 1 function/feature nào đó thì chúng mình cũng tiến hành test luôn hoặc test chéo cho nhau, hoặc có khi anh team leader của dự án phải kiêm luôn vai trò tester này 😄 Bạn thấy không? tester không phải là không cần thiết, mà chỉ là đã bị thằng dev nó cướp mất việc thôi, dev 2 trong 1 =))

5. Cuối cùng, sự chênh lệch trong lương thưởng có đúng không? Các nhà phát triển (developer) có thực sự làm được nhiều hơn người kiểm tra (tester) không?

Nếu bạn đang tìm 1 nơi mà thống kê bảng lương/thưởng của dev và QA thì có thể điều này sẽ là có ích chăng:

Glassdoor:

Payscale:

Nhìn vào bảng trên chúng ta có thể dễ dàng nhận ra rằng lương có nhiều mức và nhiều biến số cho cả dev và QA. Tác giả có nói trong sự nghiệp của anh ấy, anh ấy đã nhìn thấy nhiều QA còn kiếm được nhiều tiền hơn cả các developer khác. Và ngược lại cũng đúng trong nhiều trường hợp.

Thiết nghĩ, lương phụ thuộc vào:

  • Các kỹ năng và trình độ của các kỹ năng đó của bạn
  • Kinh nghiệm
  • Mức lương hiện tại (khi chuyển sang một vị trí mới)
  • Tính chất công việc (full time, tự do hay hợp đồng)
  • Vị trí, địa điểm (location)
  • Công ty
  • Lợi nhuận
  • Kỹ năng đàm phán

Ghi nhớ:

  • Công việc mang lại nhiều thứ hơn là chỉ tiền : Nó mang lại một cơ hội để thực hiện tiềm năng của bạn, một cộng đồng chia sẻ niềm đam mê và một cơ hội để tạo sự khác biệt. Hãy để bức tranh lớn hiển thị tất cả điều này và nhiều hơn nữa.
  • Hunt for a lion, not a unicorn (Săn sư tử chứ không phải kỳ lân ???) : Hãy cẩn trọng, quyết định trước những câu chuyện được ví như thần thoại, cổ tích không biết có thật hay không mà bạn được nghe từ một người khác kiểu như : "Bạn của bạn tôi làm ở công ty ABC có mức lương khổng lồ (chết người) mặc dù kinh nghiệm của cậu ta còn ít hơn cả cậu .... bla bla...."
  • So sánh mức lương của bạn với các QA hoặc dev khác - Không phải là một ý tưởng hay : Nếu bạn cảm thấy bị làm việc quá sức hoặc mức lương chưa xứng đáng với những gì bạn bỏ ra thì hãy thẳng thắn trao đổi với người quản lý của bạn để tìm ra giải pháp tốt nhất.
  • Bất cứ điều gì đáng làm thì đều đáng để được trả tiền
  • Cuối cùng là, Để tăng gấp đôi thu nhập của bạn, thì hãy tăng gấp ba tỷ lệ học tập của bạn 😄 - Robin Sharma.

6. Kết luận

Cuối cùng, tôi muốn nói rằng lựa chọn một con đường sự nghiệp nên dựa trên năng khiếu, sự an toàn, tham vọng, sự hài lòng và tất nhiên, là tiền lương. Trong công việc, người ta phải nên cảm thấy có đam mê, năng lực, tự tin và năng suất. Làm tốt những gì bạn làm là chìa khóa để thành công. Trong công việc, thực hành và thực hành nhiều hơn để nâng cao kỹ năng. Mọi sự cố gắng phấn đấu của bạn sẽ được ghi nhận chứ không phải là vô nghĩa. Chúc bạn chọn được công việc phù hợp với mình 😃

Bài dịch từ : http://www.softwaretestinghelp.com/who-earns-more-software-tester-or-developer-lets-find-out-by-comparing-salary/

Cảm ơn các bạn đã theo dõi :x (yeah)