QA Mühendisi Olarak Başladığımda Bilmeyi İstediğim 6 Şey
Yayınlanan: 2021-01-27Pazardaki her ürün, müşterinin eline geçmeden önce, süreç boyunca bozulmadan düzgün çalıştığından emin olmak için testlerden geçer . Bir geliştirme şirketinin “üretim hattında” nihai ürün mükemmelliğinden sorumlu kişi Kalite Güvence mühendisidir.
QA olarak da bilinen bir Kalite Güvence mühendisi, nihai ürünle ilgili herhangi bir sorun olmadığından ve her şeyin sorunsuz çalıştığından emin olur. Bunun için üretimin tüm aşamalarında sürekli manuel ve otomatik testler gerçekleştirirler.
Ancak bir QA, yalnızca bir yazılım testçisi veya analisti değildir. Ürünün en yüksek performansını sağlamak için müşterinin işinin, fikrin arkasındaki mantığın ve ürünün hedeflerinin net bir resmine sahip olmaları gerekir. Son kullanıcının profilini düşünmeleri ve geliştirme döngüsünün adımları ve süreçleri hakkında derinlemesine bilgi sahibi olmaları gerekir.
Ve bu diploma alabileceğin bir şey değil. QA olarak başlamak için belirli bir geçmişe veya eğitime ihtiyaç olmayabilir, ancak belirli bir dizi beceri kesinlikle yardımcı olacaktır. Esnek ve çok yönlü iseniz, ayrıntılara dikkat ediyor ve kalıpların dışında düşünüyorsanız, bir takım oyuncusuysanız ve her zaman öğrenmeye ve gelişmeye hazırsanız, belki bu sizin için de doğru kariyer yoludur.
Size nasıl Kalite Güvence mühendisi olduğumun hikayesini anlatayım.
Her şey 2014 yazında başladı ve hayattaki çoğu güzel şey gibi tamamen tesadüftü. O zamanlar barmen olarak çalışıyordum ve Nükleer Kimya alanında Master Derecesi ile yeni mezun olmuştum. (Evet, o zamanlar ne tür “patlayıcı kokteyller” salladığımı tahmin edebilirsiniz).
Güneşli bir günde DevriX'in CEO'su Mario Peshev, projelerinin test edilmesinde şirkete yardım etmemi istedi. Neden olmasın diye düşündüm, bu kolay bir iş – sessizce oturmak, fareye tıklamak, oraya buraya bazı değerler eklemek, yazılımın çalıştığından emin olmak. O zamanlar ne kadar saftım.
Her neyse, Test Uzmanı olarak pozisyonu kabul ettim ve son altı yıldır QA Uzmanı olarak çalışıyorum. Tahmin edebileceğiniz gibi, yazılım testi beklediğim gibi değildi. Bütün gün fare ile oturup tıklamak değildir. Bundan çok daha fazlası ve bazen gerçekte ne yaptığımızı kelimelere dökmek bile zor.
Bir süredir buralarda olduğum için, QA olarak başladığımda keşke bilseydim dediğim 6 temel şey olduğunu anlıyorum. Aynı yoldaysanız, okumaya devam edin - hatalarımdan bir iki şey öğrenebilirsiniz. Ve eğer yapmazsan, fazla ukalalaşma, kendi hatalarını yapmak için bolca zamanın olacak. Çünkü bu şekilde öğrenir ve yaptığımız işte en iyisi oluruz.
1. Kolay Bir İş Değil
Bugünlerde, fark etmeden edemeyeceğim yükselen bir trend var. Pek çok insan, kariyer yolunu değiştirmek ve BT alanına atlamak için konfor alanlarından ayrılıyor.
Ve bu insanların büyük bir kısmı, en kolayı gibi göründüğü için QA kariyerini denemeyi seçiyor.
Hiçbir şey gerçeklerden daha uzak olamazdı. Aslında, başarılı bir QA Mühendisi olmak için, aynı miktarda zaman ve çabayı bir yazılım geliştiricisi olmak için harcamanız gerekir. Öğrenmeniz gereken bir dizi temel teknik beceri vardır, ancak daha da önemlisi, doğru zamanda doğru olanı seçme becerisinde ustalaşmanız gerekir. QA Mühendisi birçok rolü birleştirir ve işleri , tüm geliştirme döngüsünün ve iş hedeflerinin anlaşılmasını gerektirir. Sadece hataları bulmak ve bunun veya bunun işe yaramadığını belirtmek değildir.
Başarılı bir QA Mühendisi olmak için, bir yazılım geliştiricisi olmakla aynı miktarda zaman ve çaba harcamanız gerekir.
Başarılı bir QA Mühendisi olmak istiyorsanız şunları anlamanız gerekir:
- Zamanınızı nasıl daha iyi yönetirsiniz
- Size atanan istekler nasıl ele alınır?
- Görevlerinize nasıl öncelik verilir
Aynı zamanda, yukarıdakilerin tümü Proje Yöneticisi rolünün bir parçasıdır.
Bir QA olarak, ayrıca bir test veya hazırlama sunucusu ortamı oluşturma veya SysAdmin/DevOps rolünün bir parçası olan bozuk bir sunucuyu dağıtabilme veya onarabilme becerisini geliştirmeniz gerekir.
Aynı zamanda, Google Analytics'ten (GA) veya Veri Analisti rolünün bir parçası olan diğer verilerden gerekli bilgileri okuyabiliyor ve anlayabiliyor olmanız gerekir.
Dolayısıyla, QA-ing proaktif olmayı ve sürekli öğrenmeyi ve yeni bölgeleri keşfetmeyi gerektirir.
2. Herhangi Bir Kodlama Dili Bilmenize Gerek Yok (Ama Faydası Var)
Başta okuduğunuz gibi, QA Mühendisi olmadan önce bir barmendim.
Herhangi bir programlama dilinde kodlama becerilerim ve bilgi tabanım sıfırdı . Evet, tüm testler kara kutuydu. Evet, çok fazla yaratıcı düşünce ve çaba ile bunu telafi edebildim ve işimi yapabildim.
Ancak projeler büyüdükçe ve işlevler daha karmaşık hale geldikçe, test etme süresi iki katına çıktı. Ve yukarıdan "yöntemlerim" uygun maliyetli değildi ve beni çok strese soktu.
Bu yüzden akıllıca karar PHP öğrenmeye başlamaktı. Neden PHP? DevriX bir Kurumsal WordPress Ajansıdır ve bildiğiniz gibi WordPress PHP ile yazılmış bir CMS'dir. Bu nedenle, geliştiricinin taahhütlerdeki mantığını kontrol etmek ve anlamak istersem, onların dilini (kodunu) anlamam gerekiyordu. Bu yaklaşım, test süresini önemli ölçüde azalttı. Ayrıca, çoğu zaman kod inceleme sürecinde bile sorunlar yakalanıyordu.
Demek istediğim, evet, herhangi bir kodlama dili olmadan testçi olabilirsiniz, ancak bu hayatınızı bir kabusa çevirecektir. O yüzden bir düşün.
3. Müşteriyi ve İş Hedeflerini Anlamanız Gerekiyor
İyi bir QA olmak iyidir. Ancak mükemmel bir QA Mühendisi olmak istiyorsanız , müşterinin iş hedeflerini anlamanız gerekir. İşiniz sadece kod yazmak ve test etmek değil. Bu, iş değeri yaratmakla ilgilidir.
Bir Yazılım QA Mühendisi olarak, kodu test etmek ve iş hedefini anlamak, herkesin ne yaptığının daha büyük resmini görmek için bir adım geri atabilmenizin yoludur. Bu, nihai ürüne ekstra değer sağlamanıza olanak tanır. Bir fikir alır, onu ters yüz eder ve tekrar ters çevirirsiniz, kusurları ve zayıflıkları bulmak için yapıyı bozar ve yeniden kurarsınız. Müşterinin bakış açısından düşünmeli, aynı zamanda ürünü nasıl kullanacaklarını ve deneyimlerini nasıl geliştireceklerini öngörmek için son kullanıcının ayakkabılarında bir mil yürümelisiniz.
Bir müşterinin işini anlamak, karar verme, görevlere öncelik verme veya zamanınızı daha verimli yönetme konusunda size daha fazla güvenmenizi sağlayabilir. Geliştirici ekibinin yanlış anlamaları veya gereksinimlerin yanlış anlaşılması tarafından yanlış bir uygulamayı önlemenize yardımcı olabilir.
Bu nedenle, QA'ların gerçekten oyunun içinde olmaları ve yerinde olmaları gerekir.
4. Sürekli Öğrenmeye Devam Edin
Bilgi Teknolojisi hızla değişiyor ve hiçbirimiz geleceğimizin ne getireceğini bilmiyoruz. Yeni teknolojilere, çerçevelere, dillere ve tasarım tekniklerine ayak uydurmak zordur. Becerilerini güncel tutmayan bir QA Mühendisiyseniz, en iyi iş fırsatlarını elde edemezsiniz – dürüst olmak gerekirse, hiç bile bulamayabilirsiniz. Bir takım en zayıf birimi kadar güçlüdür. Beceri setinizi genişletmek, organizasyonunuz içinde bile fırsatlarınızı genişletecektir.
Sürekli öğrenme, yeniliği teşvik etmenizi ve ekip büyümesi için bir katalizör olmanızı sağlar. Ekibinize yeni fikirler getirdiğinizde, ekip üyelerini bir şeyler yapmanın yeni ve daha iyi yollarını düşünmeye zorlarsınız.
En iyi yazılım test uzmanları, ürünlerinin hem ticari hem de teknik yönlerini anlar. Takımdaki diğer rollere sahip diğer kişilerin aklına gelmeyecek benzersiz sorularla ortaya çıkarlar.
5. İyi Sorular Sorun
İyi testçiler iyi sorular sormalıdır!
Size yeni bir görev verildiğinde, sormanız gereken ilk soru şudur:
“Neyi test edeceğimi anlamak istiyorsam kiminle konuşmam gerekiyor?” Buradaki cevap basit – Konuşabildiğiniz herkesle konuşun!
Yeni bir projeye başladığınızda, size herhangi bir bilgi verebilecek tüm kişilerin bir listesini oluşturmanız gerekir. Zor olan kısım, ne tür bir soru sorulacağıdır.
Size neden bahsettiğim hakkında daha iyi bir fikir vermek için, aşağıdaki senaryoyu hayal edelim:
Önemli bir toplantıya katılıyorsunuz ve ekiple heyecan verici yeni bir projeyi tartışıyorsunuz. Soru sorma sırası sizde ve siz “Sence ne denenmeli?” gibi bir şey çekiyorsunuz. . Size bakan insanların nasıl göründüğünü hayal edin!
Odadaki hemen hemen herkes şöyle diyecektir: "Peki, burada QA Mühendisi değil misin? Her şeyi test edin! Üretim ortamında herhangi bir hata istemiyoruz!”
Kendini kandırdığın an budur.
Artık ürünün tamamını test etmek için yeterli zamanınızın olmadığını, üst yönetimdeki yetkinizin sarsıldığını, ürünün kendisini anlamadığınızı anlamaya başlıyorsunuz.
Buradaki sorun şu ki, bir başkasından işimizi bizim için yapmasını, neyin ne zaman test edilmesi gerektiğini bulmasını istedik.
Yani toplantı senaryosuna dönecek olursak , test işlemlerinden bahsetmeden soru sormamız gerekiyor. Bir kullanıcının bakış açısından veya rekabet analizine dayalı olarak hangi alanların önemli olduğunu anlamaya çalışın. Müşterinin neden ürünümüzü seçtiği ve neden bu kadar benzersiz olduğu hakkında bilgi toplamaya çalışın.
İşte sorabileceğiniz birkaç soru:
- Uygulamanın en önemli yönleri nelerdir? Rakiplerine kıyasla onu benzersiz kılan nedir?
- Pazarlama kampanyalarımızda ürünün hangi kısmına odaklanacağız?
- Kitleyi daha iyi hedeflememize yardımcı olacak bazı Google Analytics verilerimiz (Tarayıcılar, İşletim Sistemleri, Bölgeler vb.) var mı?
- Ürünle ilgili herhangi bir ödeme şeklimiz var mı? Deneyime dayalı olarak hangi ödeme sağlayıcılarını kullanacağız?
Neyin test edileceğini sormadığımıza dikkat edin, ancak iş için neyin önemli olduğunu sorduk.
6. Deneyiminizi Kalite Uzmanları ile Paylaşın
Olağanüstü yetenekli bir QA Mühendisi olabilirsiniz, ancak bilginizi paylaşmazsanız, bu sizi iyi bir insan veya harika bir çalışan yapmaz.
Paylaşmak önemsemektir!
İyi bir blog yazısı okuduğunuzda veya yeni bir teknoloji veya araç hakkında bilgi edindiğinizde - paylaşın! Bunu ekiple paylaşarak, yalnızca hevesli bir öğrenci olduğunuzu değil, aynı zamanda onların öğrenmelerine ve ekip hedeflerine ulaşmalarına yardımcı olmak istediğinizi de göstermiş olursunuz.
Bilginizi paylaştığınız kadar iyi ve kötü anları, yaptığınız hataları, kazandığınız başarıları da paylaşarak güçlü bir ekibin temellerini atmış olursunuz.
Bilginizi paylaşmanın birçok yolu vardır:
- Mesleğiniz veya işinizle ilgili blog yazıları yazın
- Çalıştaylar hazırlamak ve düzenlemek
- Farklı eğitim parçaları geliştirin ve yürütün
- YouTube videolarını veya podcast'lerini kaydedin
Toplama
Yukarıdakilerin tümü, sizi destekleyecek harika ve sağlam bir ekiple bir Superstar QA Mühendisi olmanıza yardımcı olacak ve bu da şirkete değer katacaktır.