Nâng cấp khả năng coding cho Automation Tester / SDET

Khi bạn chọn sẽ phát triển theo hướng Automation Tester nhưng mà không biết lộ trình ra sao, làm thế nào để tiến bộ và tiến lên level senior. Dưới đây là trải nghiệm và cách mình đang làm để các bạn tham khảo.

I. Mindset /Tư duy

  • Khi bạn chọn hướng công việc là code thì “khi code, bạn đừng nghĩ bạn là 1 tester biết code nữa, hãy nghĩ bạn là 1 developer.”
  • Mà đã code thì phải theo chuẩn của code, đừng chỉ dừng lại ở đoạn code chạy được, hãy học để code gọn gàng, mạch lạc. Ở trên mạng hay lưu truyền câu nói “simple code is the best”, mình nghĩ là câu đó đúng nhưng chưa đủ, simple code mà ko re-use được, ko extend được thì code đó ko phải là the best.
  • Code mang tính chất “thời điểm” rất nhiều, có thể bạn của ngày hnay chửi code của chính mình ngày hôm qua, nhưng bạn nên nhớ rằng, ngày hôm qua có thể bạn chưa hiểu hết vấn đề, hoặc bị giới hạn về thời gian, cơ thể, trí óc ở trạng thái mệt mỏi hay đơn giản là lúc đó chỉ cần có như vậy…có rất nhiều nguyên nhân khiến bạn code “dở”. Do đó, hãy cứ bình tĩnh thôi, nếu nhận ra được chúng ta code dở thì chúng ta đang tiến bộ rồi đó. ^^

II. Cách thức để nâng cấp trình độ code

1. Học những thứ bắt buộc

  • Require: Hãy học và thuộc lòng syntax của ngôn ngữ bạn làm, để có thể nhìn bằng mắt cũng nhận ra được lỗi compile hoặc hiểu lỗi compile mà IDE đang báo cho bạn.
  • Require: Học thêm các tính năng (standard library) mà ngôn ngữ cung cấp: collection, IO, type… và concept đặc trưng của mỗi ngôn ngữ như OOP, functional programming, closure …
  • Optional: Để củng cố và tự tin vào kiến thức đã tích lũy, hãy đăng ký thi 1 chứng chỉ ngôn ngữ nào đó, nó sẽ force bạn học thật, học căng vì tiền thi chứng chỉ khá chát (245$ cho java)

2. Phát triển clean code

Học theo bạn có thể phát triển theo bookself dưới đây, tập trung vào 2 phần:

  • Single component
  • Connected components

Trong số sách này, mình đọc 1 vài cuốn và feedback như sau.

  • Clean code: rất nhiều chapter cần đọc đi đọc lại, bạn sẽ học học được cách đặt tên variable, method, class và rất nhiều technique hữu dụng khác. Cuốn này dùng code java để minh họa.
  • Refactoring: rất nhiều technique để refactor code, qua đó bạn sẽ hiểu thế nào là code tốt và code chưa tốt (do bác Martin Flower viết, blog của bác ý rất tuyệt, mình học được rất nhiều). Nếu bạn ko mua được sách thì học từ trang web này.
  • Design Pattern: mình ko đọc cuốn này trực tiếp, mà đọc cuốn Head First Design Pattern, mình đã học được cách tiếp cận với những vấn đề thường gặp, cũng nhờ đọc cuốn này mà đọc code của các library open source trở nên dễ dàng hơn. Bạn cũng có tiếp cận phiên bản web ở đây.

Bạn cũng nên đọc thêm các cuốn sách về architecture để có thể cái nhìn overview, chứ ko còn nhìn vào các component nữa.

3. Luyện tập code

  • Khi bạn code automation thì chắc chắn bạn sẽ sử dụng 1 vài thư viện (lib) nào đó, hãy tập đọc code của các thư viện ấy, bắt đầu từ các thư viện nhỏ thôi, đừng bắt đầu với các thư viện lớn. –> sẽ học được cách sử dụng các thư viện mới, cách sử dụng các features của language. Bạn sẽ có rất nhiều lần “À, ra thế”. Đọc code là 1 công việc mệt mỏi, đòi hỏi tự tập trung, nên nếu bạn đọc chưa hiểu gì thì đừng buồn, ngày mai đọc lại, hoặc tuần sau đọc lại. Điều quan trọng là ko được bỏ cuộc giữa chừng.
  • Code lại những đống hỗn độn trước đây mình từng code, xem mình có thể refactor lại được ko.
  • Hãy học bộ phím tắt của IDE mà bạn đang sử dụng để tận dụng thật tốt cái tool đó. Ngoài ra, đừng viết code mà ko format code nữa, code không format sẽ làm giảm hiệu quả của đọc code rất nhiều. Nó tương đương với việc đọc 1 bức thư tỏ tình mà chữ xấu, tụt mood lắm. (Không biết, viết vài dòng chửi bới mà chữ đẹp thì người đọc có bớt buồn ko nhỉ :v)
5 1 vote
Article Rating
Subscribe
Notify of
guest
6 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Minh Kỳ
Minh Kỳ
11 months ago

Bài viết của anh hữu ích lắm ạ, em đang tính apply automation tester ở một vài công ty lớn mà đọc bài của anh xong thấy mình còn thiếu nhiều kiến thức quá. Thôi em về đóng cửa tu luyện tiếp hihi.

Tiến Đàn
Tiến Đàn
11 months ago

Hay quá anh. Luôn mò mẫm các bài viết của anh =))) chúc anh nhiều sức khỏe.

Hong
Hong
9 months ago

hay đọc các bài viết của a, rất hữu ích , mong anh ra nhiều bài cho bọn em còn học hỏi thêm ạ , chúc anh và gđ thật nhiều sức khỏe ạ