Làm Sao Trở Thành Lập Trình Viên Từ Tester?
Đọc ngay bài viết này để biết cách:
- Trở thành lập trình viên từ Tester hoặc bất kì vị trí kĩ thuật nào
- Vượt qua rào cản khi chuyển hướng nghề nghiệp
Giới thiệu: Anh John Sonmez, chủ blog SimpleProgrammer, nổi tiếng với những bài viết hay về kĩ năng mềm và định hướng nghề nghiệp cho developer.
Bạn yêu thích lập trình nhưng lại làm Tester hay các công việc kĩ thuật khác do “dòng đời xô đẩy”? Bạn muốn chuyển hướng trở thành lập trình viên mà không biết phải làm sao? Đừng lo. Tôi đã tự làm chuyện này tới 2 lần, và đều thành công.
Lần thứ nhất, khi tôi mới bắt đầu sự nghiệp với vị trí QA tại HP.
Tôi đã tự học để trở thành chuyên gia về PCL và PostScript, hai ngôn ngữ in ấn phổ biến. Tôi đưa ra báo cáo bug chi tiết với các đoạn code trong máy in, chỉ ra những gì lệnh ngôn ngữ máy in có thể đang sai và gây ra lỗi. Nhờ vậy, tôi được viết test cho máy in, và cuối cùng chính thức được chuyển sang development team với chức danh Programmer.
Lần thứ hai, sau khi nhảy việc, tôi lại trở về HP làm QA Lead.
Lần này, tôi giúp một Junior Developer thực hiện vài task lập trình C++. Anh ta tiến cử tôi với sếp. Sau đó, development team nhận tôi về với chức danh Software Developer. Nếu bạn thực sự quyết tâm trở thành lập trình viên, hãy tham khảo một số cách được đúc rút từ kinh nghiệm xương máu của tôi dưới đây. Có lẽ chúng sẽ hữu ích đấy.
1. THAY ĐỔI MẶC ĐỊNH VỀ NGHỀ NGHIỆP CỦA BẠN
- Khi bạn đã có kinh nghiệm hoặc vị trí nghề nghiệp nhất định, bạn thường bị mặc định gắn liền với công việc cụ thể đó. Rất khó để mọi người xung quanh hình dung bạn ở vai trò mới.
- Đặc biệt trong lĩnh vực lập trình, sự khác biệt giữa công việc của Developer và Tester (hoặc QA) khá rõ rệt.
- Bởi vậy, sẽ dễ dàng hơn nếu bạn “làm lại cuộc đời” ở một công ty mới. Còn chuyển từ Tester sang Developer ngay trong công ty hiện tại sẽ khó hơn nhiều.
- Nhất là, nếu bạn lại cực kì nổi trội trong công việc cũ.
Vậy nếu muốn chuyển hướng trở thành lập trình viên ngay trong công ty hiện tại, bạn cần:
1.1. Phải thật kiên nhẫn
- Thay đổi nhận thức cần thời gian.
1.2. Cho mọi người biết mục tiêu mới
- Hãy tâm sự với đồng nghiệp rằng bạn khao khát chuyển sang lập trình như thế nào.
- Hãy thẳng thắn gặp sếp, nói rõ ý nguyện trở thành lập trình viên.
- Hãy cho sếp biết rằng bạn sẵn sàng làm mọi thứ để thực hiện ước muốn này.
- Đồng thời, hãy giải thích background về testing của bạn sẽ hữu ích và sinh lợi nhiều hơn cho công ty ra sao nếu bạn chuyển sang làm Developer.
- Bạn càng rõ ràng, cương quyết thể hiện mong muốn trở thành lập trình viên, thì những người muốn giữ bạn ở lại vị trí cũ sẽ càng vơi bớt ý định. Thế nên cứ nói thẳng ra, đừng ngại.
- Tuy nhiên, nói suông không đủ. Bạn cần thể hiện bằng hành động nữa.
- Khi trao đổi với sếp, hãy đưa ra danh sách các khóa học bạn đang theo học, hoặc các mục tiêu từng bước bạn đang làm.
- Điều đó cho thấy ý định chuyển đổi công việc của bạn là nghiêm túc, rõ ràng; với các bước đi chắc chắn và cụ thể.
2. CHỦ ĐỘNG TẠO CƠ HỘI TRỞ THÀNH LẬP TRÌNH VIÊN
Đừng trông chờ người khác đem cơ hội đến dâng cho bạn, không có mùa xuân ấy đâu. Nếu thực sự muốn đạt được điều gì, bạn phải xắn tay áo lăn xả vào mà làm. Hãy:
2.1. Hỏi về cơ hội mới ngay cả khi còn đang làm ở vị trí cũ
- Hãy đề nghị sếp giao cho bạn một, hai task đơn giản
- Hãy hỏi có bug nào cho bạn fix không.
- Và cứ hỏi tiếp đi.
- Có thể bạn sẽ bị từ chối trong vài lần đầu tiên. Có thể sếp sẽ hơi phiền vì giao task mới cho bạn mà lại phải cử thêm người hướng dẫn, giải thích cách làm.
- Tuy nhiên, nếu bạn cứ tiếp tục yêu cầu, tiếp tục cố gắng thì đến một lúc nào đó, sếp sẽ tự động giao thêm task lập trình cho bạn, dù đôi khi chỉ để… bạn đừng đòi nữa :’)
2.2. Tự tạo ra cơ hội
- Đôi khi, sếp sẽ không muốn giao các task lập trình cho bạn, dù bạn yêu cầu.
- Thứ nhất, có thể vì bạn rất xuất sắc trong công việc Tester hiện tại, và có hàng đống task về testing đang cần bạn giải quyết.
- Thứ hai, có thể việc giao task lập trình cho bạn sẽ tốn nhiều resources (thời gian, người hướng dẫn.v.v..) hơn là giá trị mà nó mang lại.
- Hoặc có thể vì nhận thức của sếp/đồng nghiệp về bạn vẫn chưa thay đổi. Họ mặc định bạn chỉ là một Tester, Linux Admin hoặc IT support, hay bất cứ vị trí nào đó.
- Vậy cách tốt nhất là hãy tìm một development team mà bạn có thể phụ giúp, đóng góp mà không làm phiền đến công việc của bất kì ai.
- Hãy hỏi họ những task lập trình mà không ai muốn làm. Đó có thể là:
+ Task lập trình tương đương với lau nhà vệ sinh chẳng hạn.
+ Hoặc debug những bug cực khó nhằn không ai muốn động đến.
+ Hay viết document cho một API, xây dựng tool để nâng năng suất làm việc cho cả team
+ Những việc này có thể nhàm chán, khó khăn, nhưng cơ hội cũng nằm ở đó. Vì chẳng ai tranh giành với bạn cả.
2.3. Sử dụng thời gian cá nhân
- Như đã phân tích ở trên, sếp ngần ngại giao task lập trình cho bạn có thể vì sợ ảnh hưởng đến công việc chính mà bạn đang đảm nhận.
- Nếu vậy, bạn phải chấp nhận sử dụng thời gian cá nhân (không được trả lương, dĩ nhiên rồi!) để nhận làm thêm các task về lập trình thôi. Điều này hoàn toàn công bằng, và xứng đáng, để bạn có thể đạt được mục tiêu trở thành lập trình viên của mình.
- Hãy sẵn sàng đi làm sớm hoặc về trễ hơn một chút, để hoàn thành các task lập trình được giao thêm.
- Trường hợp xấu nhất là bạn chả kiếm được task lập trình nào từ công ty, thì dùng thời gian cá nhân để code các dự án riêng của bạn cũng được.
- Nhưng tôi đảm bảo với bạn, chẳng công ty hay sếp nào từ chối thiện ý làm thêm ngoài giờ miễn phí của bạn đâu.
3. TÌM CÔNG VIỆC CẦU NỐI
3.1. Automation Testing
Có một cách rất tốt để trở thành lập trình viên từ vị trí QA/Tester, là tìm một công việc giúp bạn làm mỗi vai trò một ít. Công việc Automation Testing chính là cầu nối tuyệt vời vì nó giúp bạn có cơ hội viết code để tự động hóa manual test.
Ưu điểm:
- Dễ thuyết phục sếp hơn.
- Dĩ nhiên đề nghị chuyển từ QA/Tester sang Automation Tester sẽ dễ hơn là yêu cầu chuyển thẳng sang làm Dev trong khi bạn chưa có chút kinh nghiệm lập trình thực tế nào.
- Bạn có được kinh nghiệm lập trình quý giá. Công ty bạn nhận được lợi ích từ Automation Testing, giúp tiết kiệm resources và công việc hiệu quả hơn.
- Là bước đệm để trở thành lập trình viên dễ hơn.
- Một khi đã có kinh nghiệm làm Automation Tester hoặc Testing Software Developer, bạn sẽ rất dễ dàng chính thức chuyển sang vị trí Developer ở bất kì công ty nào. Vì bạn đã có kinh nghiệm lập trình thực tế rồi.
3.2. Những công việc mang tính chất cầu nối khác
- Tùy vị trí hiện tại, bạn có thể chọn những công việc mang tính cầu nối khác để trở thành lập trình viên, ví dụ như:
- Linux Admin có thể cân nhắc việc lập trình tool, hoặc DevOps.
- Vì họ có thể tận dụng kĩ năng sẵn có như: quản trị Linux, viết script, lập trình tự động hóa các task, xây dựng tool hữu ích cho team.
- Các bạn IT Support có thể chuyên làm hỗ trợ cho Developer, hoặc trở thành Senior IT Support.
- Lúc này, các bạn sẽ được thử sức với nhiệm vụ đọc code để giải quyết vấn đề của khách hàng; hay thu thập thông tin cho Developer.
- Nói tóm lại, hãy tìm cách tận dụng các kĩ năng sẵn có trong công việc hiện tại, áp dụng vào một số task lập trình. Và bạn sẽ tạo ra những công việc cầu nối riêng cho mình.
4. ĐỔI CÔNG TY
- Tất cả những cách tôi phân tích ở trên được dựa trên giả định là bạn muốn chuyển hướng từ Tester/QA hoặc một số vị trí kĩ thuật khác sang thành lập trình viên NGAY TRONG CÔNG TY HIỆN TẠI.
- Nhưng nếu bạn đã thử mọi cách mà vẫn không đạt được mong muốn?
- Hãy đổi công ty.
- Hãy đưa những kinh nghiệm về lập trình bạn đã tích lũy được (kể cả việc làm tool, hay các dự án cá nhân) vào CV. Nó sẽ giúp bạn rất nhiều.
- Bạn cũng có thể ứng tuyển một vị trí mang tính bắc cầu (Automation Tester, DevOps…) trong công ty mới. Và tốt nhất là vị trí đó có gắn với chức danh Developer hay Engineer.
- Dĩ nhiên, khi chuyển hướng sự nghiệp, bạn sẽ phải chấp nhận bắt đầu lại mọi thứ từ đầu. Bạn nên nhắm vào các vị trí Junior Developer trước.
BTV.Trần Thị Thu Huyền
Phòng Truyền Thông IMicroSoft Việt Nam
Hotline: 0916 878 224
Email: huyenttt@imicrosoft.edu.vn
LÝ DO THỰC TẾ TẠI SAO TESTER/QA LÀ MỘT LỰA CHỌN NGHỀ NGHIỆP TỐT HIỆN NAY!!!
👉👉 Khóa đào tạo nhân sự Kiểm thử phần mềm chuyên nghiệp?
Chương trình đào tạo Kiểm Thử Phần Mềm Chuyên Nghiệp được thiết kế dựa trên nhu cầu thực tế kiểm thử tại các doanh nghiệp phần mềm lớn đang hoạt động tại Việt Nam hiện nay như: FPT Software, KMS, BOSCH, DXC etc. Gồm có:
1) Định hướng phát triển nghề nghiệp Kiểm Thử Phần Mềm theo lộ trình phát triển chuyên nghiệp Manual, Automation, Performance, Securrity.
2) Lập trình C#/Java cơ bản dành cho kiểm thử viên.
3) Kỹ năng làm việc và phân tích lỗi.
4) Tổng quan kiểm thử phần mềm.
5) Quy trình phát triển và kiểm thử phần mềm hiện đại.
6) Thực hành các công cụ thực tế hiện đang sử dụng tại các doanh nghiệp phần mềm tại Việt Nam (Github, DevOps, SVN etc).
7) Kiểm thử cơ bản và chuyên sâu Manual Software Testing.
8) Kiến thức nghiệp vụ chuyên ngành: y tế (healthcare)/bảo hiểm (insurance)/ngân hàng (banking) etc.
9) Tiếng anh chuyên ngành kiểm thử phần mềm.
10) Kinh nghiệm viết CV và phỏng vấn bằng tiếng anh tại các công ty lớn.
👉👉 Lời cam kết của khóa đào tạo nhân sự này?
🎁 Đây là khóa đào tạo đầy đủ và chi tiết nhất về Kiểm thử phần mềm từ trước đến nay.
🎁 Cam kết chất lượng đào tạo, các bài thực hành trong khóa đào tạo là các "Case Study" rất thực tế mà Chuyên gia IMIC đã dành nhiều tâm huyết biên soạn và đã đưa vào khóa đào tạo này.
🎁 Tất cả các phần trong khóa đào tạo được diễn đạt một cách trực quan nhất, dễ hiểu nhất, bạn dễ dàng vận dụng được các kiến thức chuyên môn vào công việc dự án web thực tế tại Doanh nghiệp.
🎁 Cam kết hỗ trợ học viên sau khóa học nhiệt tình qua: Group Zalo, Facebook, Website, Email.
⚠️ Đặc biệt! Cam kết chắc chắn bạn sẽ hoàn toàn tự tin đi làm ngay về Kiểm thử phần mềm khi tốt nghiệp khóa đào tạo này.
Nhưng với điều kiện bạn phải nghiêm túc, chăm chỉ học tập, nỗ lực xem bài làm bài cũng như chủ động thảo luận với
Chuyên gia khi gặp vướng mắc. Ngược lại "lười học" thì không nhé!
✅ Hoặc là bạn đang muốn chuyển đổi công việc mà chưa biết theo học ngành nghề gì cho tốt.
✅ Giới thiệu với bạn Chương trình đào tạo nhân sự dài hạn trong 12 tháng với những điều đặc biệt mà chỉ có tại IMIC và đây cũng chính là sự lựa chọn phù hợp nhất dành cho bạn:
👉 Thứ nhất: Học viên được đào tạo bài bản kỹ năng, kiến thức chuyên môn lý thuyết, thực hành, thực chiến nhiều dự án và chia sẻ những kinh nghiệm thực tế từ Chuyên gia có nhiều năm kinh nghiệm dự án cũng như tâm huyết truyền nghề.
👉 Thứ hai: Được ký hợp đồng cam kết chất lượng đào tạo cũng như mức lương sau tốt nghiệp và đi làm tại các đối tác tuyển dụng của IMIC. Trả lại học phí nếu không đúng những gì đã ký kết.
👉 Thứ ba: Cam kết hỗ trợ giới thiệu công việc sang đối tác tuyển dụng trong vòng 10 năm liên tục.
👉 Thứ tư: Được hỗ trợ tài chính với mức lãi suất 0 đồng qua ngân hàng VIB Bank.
👉 Có 4 Chương trình đào tạo nhân sự dài hạn dành cho bạn lựa chọn theo học. Gồm có:
1) Data Scientist full-stack
2) Embedded System & IoT development full-stack
3) Game development full-stack
4) Web development full-stack
✅ Cảm ơn bạn đã dành thời gian lắng nghe những chia sẻ của mình. Và tuyệt vời hơn nữa nếu IMIC được góp phần vào sự thành công của bạn.
✅ Hãy liên hệ ngay với Phòng tư vấn tuyển sinh để được hỗ trợ về thủ tục nhập học.
✅ Chúc bạn luôn có nhiều sức khỏe và thành công!