Razvoj
Razvijalec programske opreme
Pet ravni od Junior do Principal in šest kompetenc, od izdajanja kode do rasti ekipe.
- 5 ravni
- 6 kompetenc
Predloga karierne lestvice
Štiri ravni od Junior do Lead QA inženirja in šest kompetenc, od načrtovanja testov do praks kakovosti.
Brezplačni paket · Kreditna kartica ni potrebna
Ta karierna lestvica je namenjena QA inženirjem v programskih podjetjih s približno 20 do 200 zaposlenimi, kjer so testerji del produktnih ekip, jih je v celotnem podjetju morda le peščica in ista oseba dopoldne pogosto raziskovalno testira, popoldne pa piše avtomatizirane teste. Opisuje štiri ravni, od nekoga, ki se uči dobro testirati eno funkcionalnost, do osebe, ki odloča, kako celotno podjetje pristopa h kakovosti. Njena najvišja raven, Lead QA inženir, je strokovna raven, ne vodstvena vloga.
Vsaka raven je opredeljena s tem, kaj človek dela in kako daleč seže njegovo delo, ne z leti izkušenj ali številom prijavljenih hroščev. Preberite vrstico matrike kompetenc od leve proti desni, da vidite, kako raste posamezno pričakovanje; preberite razdelek posamezne ravni, da vidite vse, kar se na njej pričakuje. Z lestvico pojasnite, kaj pomeni naslednji korak, izvajajte samoocene in check-ine ter ohranite odločitve o napredovanju primerljive med ekipami.
Vzemite jo kot osnutek. Če vaši QA inženirji ne pišejo avtomatizacije ali če večino testiranja opravijo razvijalci, besedilo spremenite, preden lestvico objavite — pričakovanje, ki ga v vaših okoliščinah nihče ne more izpolniti, povzroča le frustracije.
Po obstoječih testnih primerih testira jasno opredeljene funkcionalnosti ter spoznava izdelek in njegove uporabnike.
Odgovarja za testiranje funkcionalnosti v eni ekipi, od branja zahtev do odobritve izdaje.
Oblikuje, kako ena ali dve ekipi vgrajujeta kakovost v delo, in odgovarja za testno strategijo večjih projektov.
Postavlja pristop podjetja h kakovosti in vsaki ekipi pomaga izdajati z manj napakami, ki uidejo v produkcijo.
Vsaka vrstica je kompetenca, vsak stolpec raven. Vrstico preberite od leve proti desni in videli boste, kako pričakovanja rastejo.
| Kompetenca | Junior QA inženir | Medior QA inženir | Senior QA inženir | Lead QA inženir |
|---|---|---|---|---|
| Načrtovanje in analiza testov | Skrbno izvaja obstoječe testne primere, za manjše uporabniške zgodbe piše nove primere, ki pokrijejo glavno pot in očitne robne primere, ter pred začetkom testiranja vpraša o nejasnih zahtevah. | Za vsako funkcionalnost v ekipi napiše testni načrt, ki pokrije robne primere, pravice, stanja podatkov in integracije, ter pregleda zahteve pred začetkom razvoja, da odkrije vrzeli. | Zasnuje testno strategijo za projekte, ki zajemajo več funkcionalnosti ali ekip, odloči, kaj pokriti na ravni enot, API-ja in celotnega toka, ter trud usmeri v dele, ki se najverjetneje pokvarijo. | Na podlagi tveganj in podatkov o uporabi opredeli, kako se podjetje odloča, kaj testirati in kako temeljito, ter poskrbi, da to vse ekipe dosledno uporabljajo. |
| Avtomatizacija testov | Po uveljavljenih vzorcih dodaja avtomatizirane teste v obstoječe ogrodje, testni nabor zažene lokalno in prijavi neuspehe, ki jih ne zna pojasniti, namesto da bi teste zaganjal, dokler ne uspejo. | Avtomatizira regresijske teste za funkcionalnosti ekipe, skrbi, da so stabilni in berljivi, ter nestabilne teste popravi ali odstrani, namesto da bi jih prezrl. | Zasnuje strukturo avtomatiziranega testnega nabora, ga z razumnimi časi izvajanja vključi v cevovod za dostavo ter pregleduje teste, ki jih pišejo razvijalci in drugi QA inženirji. | Izbere testna orodja in skupno infrastrukturo podjetja, uravnoteži plasti testne piramide med izdelki in skrbi, da je celoten nabor dovolj hiter, da ga ekipe dejansko počakajo. |
| Raziskovanje in prijavljanje napak | Prijave hroščev napiše z jasnimi koraki, pričakovanim in dejanskim rezultatom ter okoljem, da lahko razvijalec težavo ponovi brez dodatnih vprašanj. | Hrošče zoži z dnevniki, sledmi omrežnega prometa in podatkovno bazo, njihovo resnost presodi po vplivu na uporabnike ter potrdi popravke, vključno s primeri okoli njih. | Raziskuje občasne težave in težave, ki se pojavljajo le v produkciji, prek več storitev, opazi vzorce v ponavljajočih se napakah in jih pretvori v predloge, ki odpravijo celo vrsto hroščev. | Odgovarja za to, kako podjetje beleži napake in jim določa prednost, vodstvu razvoja poroča o trendih napak, ki uidejo v produkcijo, in poskrbi, da največji viri napak dobijo financirane popravke. |
| Presoja izdaj in tveganj | Pred izdajo opravi dodeljena preverjanja, poroča, kaj je bilo testirano in kaj ne, ter pomisleke sporoči izkušenejšemu QA inženirju. | Za izdaje ekipe da jasno priporočilo za izdajo ali proti njej, pojasni znana tveganja in kaj ostaja netestirano ter sodeluje pri preverjanjih po izdaji. | Skupaj z razvijalci odloči o pristopu k izdaji tveganih sprememb — stikala funkcionalnosti, postopno uvajanje, dodatno spremljanje — in vodi testiranje med incidenti in nujnimi popravki. | Postavi standarde izdaj, po katerih delajo vse ekipe, opredeli, kdaj se izdaja lahko ustavi, in je oseba, ki jo vodstvo vpraša, ali je izdelek pripravljen na večje lansiranje. |
| Prakse kakovosti | Sledi definiciji „končano“ in poteku testiranja v ekipi ter opozori na korake, ki se preskakujejo ali so nejasni. | Sodeluje pri pripravi uporabniških zgodb in pogovorih o zasnovi, da zgodaj doda kriterije sprejemljivosti in vidik preverljivosti, ter z razvijalci v paru presodi, kaj naj pokrijejo njihovi lastni testi. | Izboljša potek testiranja ene ali dveh ekip — testna okolja, testne podatke, kontrolne sezname za pregled — in izmeri, ali je sprememba zmanjšala število napak, ki uidejo v produkcijo. | Oblikuje prakse kakovosti v celotnem razvoju, odloči, kje delajo QA inženirji in za kaj odgovarjajo razvijalci, ter naredi kakovost za skupno odgovornost, ne za delo ene ekipe. |
| Mentorstvo in deljenje znanja | Med testiranjem dokumentira, kar se nauči o izdelku, ter z ekipo deli uporabne ugotovitve in orodja. | Skrbi, da je testna dokumentacija ekipe ažurna, nove sodelavce uvaja v svoje področje izdelka in razvijalcem, ki ga vprašajo, pojasni tehnike testiranja. | Načrtno mentorira junior QA inženirje, za razvijalce vodi delavnice o pristopih k testiranju in sodeluje pri zaposlitvenih razgovorih za vloge v QA. | Razvija veščine in karierne poti skupine QA, opredeli, kako se QA inženirji zaposlujejo in uvajajo, ter razvija naslednje Senior in Lead QA inženirje. |
Tabelo pomaknite vstran, da vidite vse ravni.
Prenesite kot CSV Odpre se v Excelu, Google Preglednicah ali Numbers.
Po obstoječih testnih primerih testira jasno opredeljene funkcionalnosti ter spoznava izdelek in njegove uporabnike. Posamezne uporabniške zgodbe ali popravki hroščev na enem področju izdelka, s testnimi načrti, ki jih pregleda nekdo z več izkušnjami.
Odgovarja za testiranje funkcionalnosti v eni ekipi, od branja zahtev do odobritve izdaje. Funkcionalnosti ene produktne ekipe, vključno z njihovimi ročnimi in avtomatiziranimi testi.
Oblikuje, kako ena ali dve ekipi vgrajujeta kakovost v delo, in odgovarja za testno strategijo večjih projektov. Testna strategija, avtomatizirani testni nabori in odločitve o izdajah ene ali dveh ekip ter projekti, ki presegajo meje ekip.
Postavlja pristop podjetja h kakovosti in vsaki ekipi pomaga izdajati z manj napakami, ki uidejo v produkcijo. Kakovost v celotnem izdelku: skupna testna infrastruktura, standardi izdaj ter kako je QA kadrovsko zasedeno in kako deluje.
Če se vaši QA inženirji osredotočajo na raziskovalno testiranje, skrajšajte vrstico Avtomatizacija testov in razširite Načrtovanje in analiza testov. Če večinoma gradijo avtomatizacijo, zvišajte pričakovanja glede kakovosti kode. V obeh primerih izbiro zapišite izrecno, da nihče ni ocenjen po delu, za katero ni bil zaposlen.
Z dvema ali tremi QA inženirji podjetje običajno potrebuje le ravni Junior, Medior in Senior. Raven Lead dodajte, ko nekdo zares postavlja standarde kakovosti za vse ekipe, ne kot nagrado za testerja z najdaljšim stažem. V tej lestvici je Lead strokovna raven; če vaš vodja QA vodi tudi testerje, dodajte pričakovanja glede ljudi iz lestvice za vodje razvoja.
Vsako raven QA povežite z ravnjo razvijalca s primerljivim obsegom in plačilom. Ko je Senior QA inženir vzporeden s Senior razvijalcem, je prehod med potema korak vstran, ne nazadovanje ali skok.
Za check-ine in predloge za napredovanje zberite primere, kot so testni načrt, ki je ujel drago napako, nestabilen testni nabor, ki je postal zanesljiv, ali odločitev o izdaji, ki se je izkazala za pravilno. Štetje prijavljenih hroščev nagrajuje šum in kaznuje testerje v stabilnih ekipah.
Pogosta vprašanja
Za podjetje z 20 do 200 zaposlenimi običajno zadostujejo tri ali štiri, ker so skupine QA majhne. Ta predloga jih ima štiri: Junior QA inženir, Medior QA inženir, Senior QA inženir in Lead QA inženir. Peto dodajte le, če obseg dela zares preraste postavljanje standardov kakovosti za celoten izdelek.
V večini manjših podjetij da. Jedro dela — razumevanje tveganj, načrtovanje testov in presoja izdaj — je enako; razlikujejo se le orodja. Ohranite eno lestvico in se za vsako osebo ali ekipo dogovorite, koliko vrstice Avtomatizacija testov velja zanjo.
Da, najbolje kot načrtovan prehod. Osebo primerjajte z lestvico za razvijalce, dogovorite se za nekaj razvojnih aktivnosti, na primer odgovornost za manjše funkcionalnosti ali popravke hroščev, in jo premestite, ko to raven dosledno dosega. Izkušnje s testiranjem iz ljudi običajno naredijo boljše razvijalce, ne slabših.
Glejte rezultate in vedenje: napake, ki so na njegovem področju ušle v produkcijo, zanesljivost in hitrost avtomatiziranega testnega nabora, kako zgodaj opozori na tveganja in kako so se obnesle odločitve o izdajah. Konkretne primere na rednih check-inih obravnavajte glede na lestvico, namesto da bi se zanašali le na nadzorne plošče.
Fiksnega razmerja ni. Mnoga podjetja te velikosti delujejo z enim QA inženirjem na vsake štiri do osem razvijalcev, vendar je pravo število odvisno od tega, koliko razvijalci sami testirajo svoje delo in kako draga je napaka za vaše uporabnike. Spremljajte napake, ki uidejo v produkcijo, in zamude pri izdajah ter zaposlujte, ko eno ali drugo nenehno narašča.
Nastavite njene ravni in veščine za svojo ekipo, ljudi po njih ocenjujte v check-inih in odločitve o napredovanju ohranite dosledne.
Brezplačni paket · Kreditna kartica ni potrebna
Razvoj
Pet ravni od Junior do Principal in šest kompetenc, od izdajanja kode do rasti ekipe.
Razvoj
Štiri ravni od Junior do Staff DevOps inženirja in šest kompetenc, od infrastrukture do podpore razvijalcem.
Razvoj
Štiri ravni od Engineering Managerja do VP of Engineering in šest vodstvenih kompetenc.