Hai salam Apa kabar semuanya semoga dalam keadaan baik-baik saja dan senang sekali berjumpa dengan Fahrul di kesempatan kali ini saya akan bahas mengenai software tester karir karir software tester karena barusan tuh ada mahasiswa yang bertanya ke gua soal karir sebagai software tester tuh seperti apa karena ternyata Di kampusnya cuma dapat sedikit sekali informasi soal software testing. Khususnya mungkin kayaknya 2 SKS atau apalah gitu tadi. Masih untung sih dapat mata kuliah soal software testing.
Ada juga kampus-kampus yang nggak ada mata kuliah soal software testing. Jadi di kesempatan kali ini izinkan gue untuk menjelaskan soal karir sebagai software tester menurut gue. jadi disclaimer dulu deh, jangan 100% percaya apa omongan gue karena mungkin salah atau juga mungkin gak relevan untuk beberapa perusahaan jadi berdasarkan experience aja yang gue bisa jawab sesuai kapasitas gue sendiri jadi ini murni kayak semacam opini pribadi lah ya dari pengalaman gue yang kurang lebih dari 2013 di software testing jadi Sekitar hampir 10 tahun ternyata baru sadar. Oke, kita ngopi dulu.
Ini karena di Dubai nggak ada kopi tuku, jadi minum Starbucks botol. Enak juga, mirip-mirip. Oke, kita mulai dari pertanyaan pertama yang sering ditanyakan.
oleh teman-teman mahasiswa adalah software tester itu kerjanya sehari-hari ngapain sih bang katanya gitu oke gue akan jawab berdasarkan pengalaman gue pribadi dan pengamatan gue ya jadi namanya software tester adalah kalau di bahasa indonesianya penguji aplikasi digital jadi aplikasi digital ini bisa aplikasi website mobile gitu Android ataupun iOS terus juga API interface untuk komunikasi antara aplikasi terus juga bisa juga SDK ataupun hal-hal lainnya termasuk kayak aplikasi di TV games dan lain-lain mereka rata di bisnis bisnis tadi memiliki posisi khusus untuk pengujian aplikasi biasanya disebut software tester atau juga quality assurance atau juga software developer engineer in test SDET atau juga adanya TE test engineer jadi nama profesi software tester itu banyak ragamnya sesuai dengan spesifikasi di perusahaan maksudnya gimana ada yang testing aplikasi secara langsung nyobain aplikasinya contoh aplikasi transportasi online gitu kan, kita nyobain aplikasinya pesen-pesen-pesen sampai misalkan di satu HP sebagai consumer, di satu HP sebagai driver di satu HP sebagai merchant kurang lebih gitu, jadi kita mensimulasikan proses pengujiannya, ada juga posisi software tester kayak tadi disebutin SDET, itu berprofesi bikin alat alat untuk menunjang kinerja testing yang tadinya harus tes secara manual dalam tanda kutip bisa di otomatisasi yaitu menggunakan semacam tools untuk dia jadi otomatis ngeklik sendiri gitu sih aplikasinya nah itu adalah tools yang menunjang proses testing nah secara umumnya gue mau bahas soal pengujian biasa gitu kan pengujian seperti layaknya konsumer pada umum di market lah pada umumnya jadi Hai kalau kita bikin sebuah aplikasi tentu sebelum dirilis ke market sebelum dipakai oleh pengguna beneran aplikasi itu harus diuji coba sampai kita bisa menilai aplikasinya sudah layak untuk dipakai oleh pengguna beneran di production kalau kita bilang production itu aplikasi di market layak ada di playstore Appstore ataupun di website udah dimasukin jadi bisa dipakai sama pengguna sebenarnya end user pengguna aslinya lah ya kita-kitalah dipakai sama kita-kita yang kalau aplikasinya bisa dipakai konsumen ada juga aplikasi internal di dalam bisnis ya jadi ketika sebuah fitur ataupun sebuah aplikasi sudah dikerjakan sama developer udah dibuat nah sebelum dirilis aplikasi itu harus dicek layak ngasih delete dirilis ke ke ke market itu nah orang yang menguji spesialisasinya disebut software tester Sebenarnya bisa juga kan siapa aja yang ngetes tapi disiplin ilmunya beda gitu. Jadi sudut pandangnya ataupun cara ngetesnya bisa berbeda. Kalau mau ngecek seperti user beneran sebenarnya bisa kita lempar aja ke production. Kita kasih usernya langsung suruh ngetes.
Tapi kan dalam bentuk tanggung jawab kita mau release aplikasi sesuai dengan yang prima lah ya. Aplikasi sebelum dilepas oleh pengguna beneran kita wajib. mendeliver aplikasi yang prima yang enggak gak error enggak crash enggak gampang apa enggak enggak enggak salah kata-kata gitu Nah disitulah pentingnya untuk menguji aplikasi nasi QA ataupun stester ini adalah orang yang sehari-hari menguji aplikasi ke kalau di breakdown lebih dalam lagi ada bentuk sebagai pre preventif satu kedua predik tiga ada yang reaktif terus juga ada yang proaktif jadi kurang lebih ada empat bagian itu ya prediktif itu kalau ada fitur baru kita mengaluk melakukan analisa ini tester gini ada fitur baru kita kasih contoh biar enggak abstrak yaitu penambahan fitur login dengan Facebook Entah kenapa sering banget dipakai analogi ini, contoh kasus ini. Jadi, misal kalau dari segi klien ataupun si business owner, si tech holder, owner aplikasi, owner startup, tolong dong tambahin fitur login dengan Facebook ke developer.
Developer pasti bikin sesuai dengan permintaannya, yaudah berarti enable sebuah Facebook SDK buat bisa login. Tapi... Sebagai tester, kita mikirin ini kalau nambahin fitur login kira-kira bisa impact ke mana aja nih?
Ke proses sign up-nya, terus proses delete usernya. Itu bisa aja kena, jadi nggak segampang tinggal nambahin sebuah SDK. Proses pengujiannya juga bisa belibet, bisa dicek. Oh ini impact ke skenario apa, ini impact ke user yang kayak gimana, kurang lebih kayak gitu.
Dan predictive itu untuk perkiraan nanti seperti apa. potensi masalah yang akan timbul ketika sudah dikerjakan developer kita mau melakukan approach yang kedua yaitu preventive gimana caranya asumsi tadi soal masalah-masalah itu tidak lepas ke pengguna beneran, jadi sebelum release kita harus memastikan asumsi masalah tadi itu tidak kejadian, kita prevent sebuah fitur yang tidak layak, evaluasi kelayakan kurang lebih bahasa halusnya ya terus juga reaktif yang ketiga adalah ketika ada masalah di katakanlah oleh user user nggak bisa pesen ojol nih kenapa nih pasti dia akan lapor CS CS setelah dicek minta bantuan QA biasanya minta bantuan keko ini kenapa ya nggak bisa order nah karena kita tahu Oh coba kita cek dulu user statusnya kayak gimana user nya masih aktif atau enggak atau jangan-jangan misalkan saldo eh imaninya enggak cukup lah segala macem Nah kita melakukan pengecekan itu Nah itu termasuk ke bentuk reaktif Macam kayak investigasi gitu lah ya Nah nanti dia dibahas deh Jadi investigasi itu hal yang biasanya QA lakukan Termasuk kalau nemu bugs gitu maksudnya Oke yang terakhir ataupun yang keempat yaitu proaktif Kita harus bisa meng-influence Hai tim developer ataupun tim yang bekerja di engineer ataupun yang delivery tim untuk bisa menjalankan SOP lah kalau dalam tanda kutip ya jadi proses-proses best practice biar enggak enggak ngebugs biar enggak masalah ke production nya biar gampang lah nanti biar kita bisa manage quality bar kita gitu contoh misalkan ada peer review source code nya jadi source code nya sesama developer tuh harus ngecek mungkin ada yang nge-skip atau mungkin ada yang ngecek auto approve gitu Nah kita harus mengingatkan mereka untuk melakukan best practice itu termasuk kayak kalau fiturnya udah dikasih ke QA misalkan ada aja nih perusahaan yang handover kerjaan nih walaupun itu tidak disarankan ya bisa developer ngerjain sebuah fitur ngasih ke QA ini udah gua kerjain tolong tes dong biasanya kan QA ngecek ini gimana, baru juga di install udah nge-crash, nah gitu kita meng-encourage developer juga harus lebih bertanggung jawab lagi kalau mau ngasih QA harusnya udah bener-bener ready ke testing yang aneh-aneh lah, kalau masa yang functional test udah fail, atau bahkan yang kayak tadi langsung crash gitu, kok gak diperhatiin, nah kita meng-influence mereka untuk lebih bertanggung jawab lagi kepada kualitinya ribet? enggak juga sih, santai aja itu enggak mesti harus semuanya dikerjain sebelum mulai karya sebagai QA ini kan sehari-hari nanti kalau lama-kelamaan dipelajari satu-satu juga bisa terus juga, minum dulu ya hahaha ya Oke, pertanyaan kedua dari dia adalah soal jenjang karir QA.
Gimana sih jenjang karir QA? Apakah menjanjikan, semenjanjikan menjadi programmer? Pertama, gue tanya dulu kenapa mau minat jadi QA atau pengen jadi QA? Kalau alasannya karena males ngoding, pengen jadi QA aja yang lebih santai.
Katanya, tapi gue kasih tau nyatanya nggak sesimpel itu. Ada banyak hal yang harus diperlajari oleh software tester. nggak mesti harus cuma nyobain aplikasinya aja manual testing itu bagus dan juga tapi keahlian itu juga nggak gampang dikuasai ada banyak teknik-teknik yang bisa nangkep bugs dengan cepat gitu kan nggak segampang itulah tapi kalau jawabannya cuma nggak suka coding ujung-ujungnya di software tester tester testing itu juga bakalan nemuin coding at least kita harus bisa baca coding jadi Nanti gue jelasin di pertanyaan ketiga gitu ya.
Nah, balik lagi ke pertanyaan soal jenjang karir. Di QA itu juga punya jalur jenjang karir yang panjang. Dari mulai junior QA, senior QA, terus juga bisa jadi lead QA, 4 tuh.
Terus juga yang kelima bisa jadi QA manager. Atau ada jalur yang biasanya QA manager atau engineering manager. atau maksudnya jalur yang managerial atau individual contributor juga ada biasanya di perusahaan, bahkan kalau mau naik-naik terus sampai CTO juga gak apa-apa, bisa aja di luar negeri itu gue sempat follow satu akun yang dari QA manager sampai ke VP Engineer bahkan sampai CTO juga ada gitu.
Jadi, nggak menjadi batasan ketika kamu menguasai berbagai disiplin ilmu di engineering untuk naik terus sampai CTO. Kalau mau bikin perusahaan sendiri bahkan bisa jadi CEO, ya nggak? Oke, terus pertanyaan ketiga.
Kepanjang nggak ya? Oke, pertanyaan ketiga terkait keahlian apa aja yang perlu dikuasai untuk bisa berkarir di software testing. Terkait keahlian ini ada nyinggung ke pertanyaan tadi itu soal stigma kalau QA itu tidak perlu jago coding. Pertama keahlian coding itu penting karena untuk proses menunjang testing itu kita akan berkutat dengan coding juga.
Dengan bahasa developer kita harus mengerti teknis karena kita mau menyampaikan masalah dengan lebih baik. Kalau kita mengerti bahasanya mereka itu tentu akan lebih baik. Terus PM dan designer juga memiliki bahasa yang berbeda untuk komunikasinya. Maksud bahasa berbeda itu apa sih?
Bahasa Inggris, Bahasa Indonesia? Bukan. bahasa yang gampang dimengerti oleh mereka contoh gini di suatu ketika lu mau ngecek nah kualitas nasi goreng kalau disuruh tester nih nih ada nasi goreng cobain kalau lebih bilangnya udah kasih nggak mau makan enggak terus ada yang kedua Oh ini kayaknya terlalu asin jadi enggak enak enggak enggak enggak bisa gua makan yang dua tadi deh yang bilang enak doang satu yang bilang enggak enak karena enggak keasinan atau bilang enggak enak karena mungkin terlalu berminyak gitu jadi rasanya dari bumbunya ketimpa gitu nah feedback dari dua tadi yang mana yang bisa lebih diapresiasi oleh sip si chef tadi yang masak tentu yang kedua karena dia tahu salahnya dimana jadi ketika QA menyampaikan sebuah masalah misal aplikasinya nge-crash nih kalau kita tambahin nge-crash di Android versi 6 misalkan ini nge-crash karena user yang login tuh misalkan udah diaktifkan gitu nah ketika kita bisa tahu penyebabnya tentu akan memudahkan mereka buat langsung fix ke inti permasalahannya proses mencari penyebabnya itu disebut debugging jadi kalau kita bisa baca kode ketika ada error nggak bisa login kita bisa tahu Oh ini penyebabnya ini jadi ketika kita kasih laporan ke developer mereka tentu akan lebih senang karena lebih cepet untuk ngejainnya walaupun nggak wajib ya bisa kita aja lap laporin kayak ini nggak bisa login nih tolong bantu dicek bisa nge-debug bareng atau QA yang ngedebug sendiri tapi akan lebih baik kalau QA bisa ngebantu proses debugging biar kita bisa tahu patternnya apa nih dari bugs tadi Karena biasanya bug itu berulang.
atau ada hubungannya dengan bug sebelumnya kalau kita tahu penyebabnya apa simptomnya dari sebuah masalah itu memudahkan kita buat ngetes ke depannya, kayak dokter dokter kan tahu gejala-gejalanya kayak gini berarti penyakitnya mungkin A atau perlu dites lagi lebih dalam kurang lebih kayak gitu jadi satu, keahlian komunikasi seperti contohnya tadi, kita harus ngerti bahasa dari stakeholder lain kayak gimana ngomong sama CEO tentang bisnis kita juga harus tahu sama designer use case nya, tapi gak mesti dalam sih, jadi asal tahu dan bisa berkomunikasi dengan baik dengan mereka terus keahlian sosial, approach approach nya juga kayak mereka kan juga manusia, kita harus jangan jadi orang yang jutek ini masalah, ini gue mau tahu besok harus jadi atau kayak gimana gitu kan terlalu jutek gitu, kita harus mengerti Hai developer developer B2 beda approach nya yang satu mungkin karena faktor umur lebih tua kita harus dengan bahasa yang lebih dipermak lagi beda dengan yang masih seumuran atau yang mati bawah umur kita bisa lebih santuy gitu ya kayak gitu lah ya terus juga orang yang memiliki otak kanan otak kirinya jalan kemampuan analisa dan kemampuan kritis lebih kritis itu itu cocok untuk jadi QA karena otak kanan itu dipakai untuk imajinasi ini kira-kira bakalan masalah kalau usernya yang pakai itu user di pedesaan yang internetnya naik turun atau yang hp-nya hp jadul androidnya mereka masih bisa pakai gak? apakah secara bisnis kita juga menyasar target market seperti itu orang yang mudah berhaya mengandai-andai nanti usernya bakalan makainya kayak gimana ya terus juga yang Berikutnya kemampuan kritis adalah kemampuan untuk menilai ini masalah nggak sih? Atau ini ada hubungannya dengan modul lain, ada connecting the dot, kurang lebih sih kayak gitu ya menurutku. Terus juga ya tadi coding udah disebutin, terus juga harus sabar. Harus sabar itu maksudnya karena menguji itu adalah bereksperimen.
Seringkali kita melakukan hal yang kurang lebih mirip sama atau bahkan. Contoh misalkan kita mau nyobain nasi goreng kayak tadi. Percobaan pertama nasi gorengnya nggak enak.
Percobaan kedua udah nggak oily tapi masih asin. Oke kita percobaan ketiga udah pas atau belum. Atau kurang bumbunya apa.
Percobaan keempat kayak gimana sampai kelima aja. Dan bisa sampai beberapa kali sampai itu bisa menjadi layak untuk dikasih ke konsumen. Nah kurang lebih kayak gitu.
Kita... harus bisa misalkan ada mau rilis fitur baru ya kita mulai ngetes dari awal sampai akhir lagi atau ngetes bagian-bagian tertentu aja adalah strateginya masing-masing gitu tergantung dengan skopnya nanti di kesempatan lain dibahas soal strategi testing tapi kurang lebih kayak gitu lah ya jadi setiap ada perbaikan dari developer kita harus ngelakukan hal yang sama berulang-ulang kayak macam memastikan lagi jangan sampai ada masalah di bagian tertentu Nah disitulah peran test automation nantinya Jadi membantu proses testing yang berulang tadi Biar lebih cepat atau lebih mudah Lebih gampang, lebih efisien gitu Nah itu bagian QA yang lebih teknis Yaitu SDET ataupun Quality Engineer Ataupun Test Engineer Yang ada berhubungannya dengan coding yang lebih banyak porsinya Oke, udah cukup Cukup segitu aja dulu karena durasinya sudah lumayan panjang. Jadi buat teman-teman yang berminat berkarir sebagai software tester, jangan takut semuanya nggak mesti harus dikuasai sebelum mulai. Kita bisa mulai sambil belajar. Mulai aja dulu, pasti ada jalan kan.
Jadi nyerempet-nyerempet prinsip gotoh gitu ya. Oke, buat... teman-teman QA yang lain yang menonton yang punya tips dan trik yang worth it dibagikan dan bisa menjadi pelajaran yang lain jangan lupa comment atau dari mahasiswa yang mau bertanya silahkan tulis di comment video ini nanti kita diskusi di situ Oke terima kasih banyak jangan lupa follow IG penguji.id ataupun medium.com garis miring ngetes karena disitu ada beberapa konten yang akan rutin dibuat di penguji biasanya lebih cepat karena sosial media, jadi saya sering update atau bertanya atau survei, atau ada DM juga boleh gitu silahkan oke, terima kasih atas atensinya mohon maaf kalau ada salah pastiin juga sekali lagi lakukan do your own research disclaimer, ini semua berdasarkan opini pribadi dibuat Sesederhana mungkin biar bisa mudah dibanggerti oleh adik-adik mahasiswa ataupun teman-teman yang mau mulai berkarir sebagai software tester.
Oke, itu aja. Tetap belajar. Jangan lupa semangat.
Tetap semangat. Jangan lupa belajar. Dadah.
Wassalam.