Gwo ak ti tèstè done: tandans, teyori, istwa mwen an

Bonjou tout moun, non mwen se Alexander, e mwen se yon enjenyè Kalite Done ki tcheke done pou bon jan kalite yo. Atik sa a pral pale sou ki jan mwen te rive nan sa a ak poukisa nan 2020 zòn sa a nan tès te sou krèt la nan yon vag.

Gwo ak ti tèstè done: tandans, teyori, istwa mwen an

Tandans mondyal

Mond jodi a ap fè eksperyans yon lòt revolisyon teknolojik, yon aspè nan ki se itilizasyon done akimile pa tout kalite konpayi ankouraje pwòp volan yo nan lavant, pwofi ak PR. Li sanble ke prezans nan bon (bon jan kalite) done, osi byen ke sèvo kalifye ki ka fè lajan nan li (kòrèkteman trete, vizyalize, bati modèl aprantisaj machin, elatriye), yo te vin kle nan siksè pou anpil jodi a. Si 15-20 ane de sa gwo konpayi yo te sitou patisipe nan travay entansif ak akimilasyon done ak monetizasyon, jodi a sa a se anpil nan prèske tout moun lisid.

Nan sans sa a, plizyè ane de sa, tout portail dedye a rechèch travay atravè mond lan te kòmanse ranpli ak pòs vid pou Syantis Done yo, depi tout moun te asire w ke, yo te anboche yon espesyalis konsa, li ta posib yo bati yon supermodèl nan aprantisaj machin. , predi tan kap vini an epi fè yon "sote pwopòsyon" pou konpayi an. Apre yon tan, moun reyalize ke apwòch sa a prèske pa janm travay nenpòt kote, paske se pa tout done ki tonbe nan men espesyalis sa yo ki apwopriye pou modèl fòmasyon.

Ak demann nan men Syantis Done yo te kòmanse: "Ann achte plis done nan men sa yo ak sa yo ...", "Nou pa gen ase done ...", "Nou bezwen kèk plis done, de preferans yon sèl kalite siperyè ..." . Dapre demann sa yo, anpil entèraksyon yo te kòmanse bati ant konpayi ki posede youn oswa yon lòt seri done. Natirèlman, sa a te mande òganizasyon teknik pwosesis sa a - konekte ak sous done a, telechaje li, tcheke ke li te chaje an plen, elatriye. Nimewo a nan pwosesis sa yo te kòmanse grandi, e jodi a nou gen yon gwo bezwen pou yon lòt kalite. espesyalis - Done Kalite enjenyè - moun ki ta kontwole koule nan done nan sistèm nan (konpeksyon done), bon jan kalite a nan done nan opinyon an ak pwodiksyon, epi tire konklizyon sou sifizans yo, entegrite ak lòt karakteristik yo.

Tandans pou enjenyè Kalite Done yo te vin jwenn nou soti nan Etazini, kote, nan mitan epòk kapitalis la anraje, pèsonn pa pare pou pèdi batay pou done yo. Anba a mwen te bay Ekran ki soti nan de nan sit rechèch travay ki pi popilè nan peyi Etazini an: www.monster.com и www.dice.com — ki montre done apati 17 mas 2020 sou kantite pòs vid yo te resevwa lè l sèvi avèk mo kle yo: Kalite Done ak Syantifik Done.

www.monster.com

Done Syantis - 21416 pòs vid
Kalite Done - 41104 pòs vid

Gwo ak ti tèstè done: tandans, teyori, istwa mwen an
Gwo ak ti tèstè done: tandans, teyori, istwa mwen an

www.dice.com

Done Syantis - 404 pòs vid
Kalite Done - 2020 pòs vid

Gwo ak ti tèstè done: tandans, teyori, istwa mwen an
Gwo ak ti tèstè done: tandans, teyori, istwa mwen an

Li evidan, pwofesyon sa yo nan okenn fason konpetisyon youn ak lòt. Avèk Ekran, mwen jis te vle ilistre sitiyasyon aktyèl la sou mache travay la an tèm de demann pou enjenyè Kalite Done, ki gen anpil plis bezwen kounye a pase Syantis Done yo.

Nan mwa jen 2019, EPAM, pou reponn a bezwen mache IT modèn yo, separe Kalite Done yo nan yon pratik separe. Enjenyè Kalite Done yo, nan kou travay chak jou yo, jere done yo, tcheke konpòtman yo nan nouvo kondisyon ak sistèm, kontwole enpòtans done yo, sifizans ak enpòtans yo. Avèk tout bagay sa yo, nan yon sans pratik, enjenyè Kalite Done reyèlman konsakre ti tan nan tès fonksyonèl klasik, Men, sa a anpil depann sou pwojè a (mwen pral bay yon egzanp anba a).

Responsablite yon enjenyè Kalite Done yo pa limite sèlman nan chèk woutin manyèl/otomatik pou "nil, konte ak sòm" nan tab baz done yo, men mande pou yon konpreyansyon pwofon sou bezwen biznis kliyan an epi, an konsekans, kapasite pou transfòme done ki disponib yo an. enfòmasyon itil biznis.

Teyori Kalite Done

Gwo ak ti tèstè done: tandans, teyori, istwa mwen an

Pou nou ka imajine wòl yon enjenyè konsa pi byen, se pou nou konnen ki sa Kalite Done yo ye nan teyori.

Done Kalite — youn nan etap yo nan Jesyon Done (yon lemonn antye ke nou pral kite pou ou etidye poukont ou) epi li responsab pou analize done dapre kritè sa yo:

Gwo ak ti tèstè done: tandans, teyori, istwa mwen an
Mwen panse ke pa gen okenn bezwen dechifre chak nan pwen yo (nan teyori yo rele "dimansyon done"), yo byen dekri nan foto a. Men, pwosesis tès la tèt li pa vle di entèdi kopye karakteristik sa yo nan ka tès yo epi tcheke yo. Nan Kalite Done, tankou nan nenpòt lòt kalite tès, li nesesè, anvan tout bagay, bati sou kondisyon kalite done yo te dakò ak patisipan yo pwojè ki pran desizyon biznis.

Tou depan de pwojè Kalite Done a, yon enjenyè ka fè fonksyon diferan: soti nan yon tèsteur automatisation òdinè ak yon evalyasyon supèrfisyèl nan bon jan kalite done, nan yon moun ki fè pwofil gwo twou san fon nan done yo dapre kritè ki anwo yo.

Yon deskripsyon trè detaye sou Jesyon Done, Kalite Done ak pwosesis ki gen rapò byen dekri nan liv la rele "DAMA-DMBOK: Kò Konesans Jesyon Done: 2yèm edisyon". Mwen trè rekòmande liv sa a kòm yon entwodiksyon nan sijè sa a (w ap jwenn yon lyen nan li nan fen atik la).

Istwa mwen

Nan endistri IT, mwen te travay soti nan yon tèsteur Junior nan konpayi pwodwi yo nan yon Enjenyè Kalite Done Plon nan EPAM. Apre apeprè dezan travay kòm tèsteur, mwen te gen konviksyon fèm ke mwen te fè absoliman tout kalite tès: regresyon, fonksyonèl, estrès, estabilite, sekirite, UI, elatriye - e mwen te eseye yon gwo kantite zouti tès, mwen te gen te travay an menm tan an nan twa langaj pwogramasyon: Java, Scala, Python.

Lè m gade dèyè, mwen konprann poukisa seri konpetans mwen an te tèlman divès—mwen te patisipe nan pwojè ki baze sou done, gwo kou piti. Sa a se sa ki mennen m 'nan yon mond nan anpil zouti ak opòtinite pou kwasans.

Pou apresye varyete zouti ak opòtinite pou jwenn nouvo konesans ak ladrès, jis gade foto ki anba a, ki montre sa ki pi popilè nan mond "Done & AI".

Gwo ak ti tèstè done: tandans, teyori, istwa mwen an
Jan de ilistrasyon sa a konpile chak ane pa youn nan pi popilè antrepriz kapitalis Matt Turck, ki soti nan devlopman lojisyèl. Isit la lyen nan blog li ak antrepriz kapital risk, kote li travay kòm yon patnè.

Mwen te grandi pwofesyonèl espesyalman byen vit lè mwen te sèl tèsteur sou pwojè a, oswa omwen nan kòmansman pwojè a. Se nan moman sa a ke ou dwe responsab pou tout pwosesis tès la, epi ou pa gen okenn opòtinite pou fè bak, sèlman pi devan. Okòmansman, li te pè, men kounye a tout avantaj ki genyen nan yon tès sa yo evidan pou mwen:

  • Ou kòmanse kominike ak tout ekip la tankou pa janm anvan, paske pa gen okenn proxy pou kominikasyon: ni manadjè tès la, ni tèsteur parèy yo.
  • Imèsyon an nan pwojè a vin ekstrèmman gwo twou san fon, epi ou gen enfòmasyon sou tout eleman, tou de an jeneral ak an detay.
  • Devlopè yo pa gade ou kòm "nèg sa a ki soti nan tès la ki pa konnen sa li ap fè," men pito kòm yon egal ki pwodui benefis enkwayab pou ekip la ak tès otomatik li yo ak antisipasyon nan ensèk ki parèt nan yon eleman espesifik nan la. pwodwi.
  • Kòm yon rezilta, ou pi efikas, plis kalifye, ak plis nan demann.

Pandan pwojè a te grandi, nan 100% nan ka mwen te vin yon konseye pou nouvo tèsteur, anseye yo ak transmèt konesans ke mwen te aprann tèt mwen. An menm tan an, tou depann de pwojè a, mwen pa t toujou resevwa pi wo nivo espesyalis tès oto nan men jesyon e te gen yon bezwen swa fòme yo nan automatisation (pou moun ki enterese) oswa kreye zouti pou itilize nan aktivite chak jou (zouti). pou jenere done ak chaje yo nan sistèm nan, yon zouti pou fè tès chaj/tès estabilite "rapidman", elatriye).

Egzanp yon pwojè espesifik

Malerezman, akòz obligasyon ki pa divilgasyon, mwen pa ka pale an detay sou pwojè mwen te travay sou yo, men mwen pral bay egzanp travay tipik nan yon Enjenyè Kalite Done sou youn nan pwojè yo.

Sans nan pwojè a se aplike yon platfòm pou prepare done pou fòmasyon machin aprantisaj modèl ki baze sou li. Kliyan an se te yon gwo konpayi pharmaceutique ki soti nan Etazini. Teknikman se te yon grap Kubernetes, k ap monte nan AWS EC2 ka, ak plizyè mikwosèvis ak pwojè Open Source ki kache nan EPAM - Rejiman, adapte a bezwen yon kliyan espesifik (kounye a pwojè a te reborn nan odahu). Pwosesis ETL yo te òganize lè l sèvi avèk Apache airflow ak deplase done soti nan Salesforce sistèm kliyan nan AWS S3 Bokit. Apre sa, yon imaj Docker nan yon modèl aprantisaj machin yo te deplwaye sou platfòm la, ki te fòme sou done fre epi, lè l sèvi avèk koòdone REST API a, te pwodui prediksyon ki te enterese biznis la epi rezoud pwoblèm espesifik.

Vizyèlman, tout bagay te sanble ak sa a:

Gwo ak ti tèstè done: tandans, teyori, istwa mwen an
Te gen anpil tès fonksyonèl sou pwojè sa a, epi yo te bay vitès devlopman karakteristik ak bezwen pou kenbe mach sik lage a (de semèn sprints), li te nesesè imedyatman panse sou otomatize tès nan eleman ki pi kritik nan. sistèm nan. Pifò nan platfòm la ki baze sou Kubernetes tèt li te kouvri pa ototès aplike nan Sou entènèt jwèt Robo chapant + Python, men li te nesesè tou pou sipòte ak elaji yo. Anplis de sa, pou konvenyans kliyan an, yo te kreye yon GUI pou jere modèl aprantisaj machin yo deplwaye nan gwoup la, osi byen ke kapasite pou presize ki kote ak ki kote done yo bezwen transfere pou fòmasyon modèl yo. Anplis de sa a te egzije yon ekspansyon tès fonksyonèl otomatik, ki te fèt sitou atravè apèl API REST ak yon ti kantite tès UI fen-2-fen. Anviwon ekwatè a nan tout mouvman sa a, nou te ansanm ak yon tèsteur manyèl ki te fè yon travay ekselan ak tès akseptasyon nan vèsyon pwodwi ak kominike ak kliyan an konsènan akseptasyon nan pwochen lage a. Anplis de sa, akòz arive yon nouvo espesyalis, nou te kapab dokimante travay nou an epi ajoute plizyè chèk manyèl trè enpòtan ki te difisil pou otomatize touswit.

Epi finalman, apre nou te reyalize estabilite soti nan platfòm la ak GUI ajoute sou li, nou te kòmanse bati tiyo ETL lè l sèvi avèk Apache Airflow DAG. Otomatik bon jan kalite done tcheke te pote soti nan ekri DAG espesyal Airflow ki tcheke done yo ki baze sou rezilta yo nan pwosesis ETL la. Kòm yon pati nan pwojè sa a, nou te gen chans ak kliyan an te ban nou aksè a seri done anonim sou kote nou teste. Nou tcheke done yo liy pa liy pou konfòmite ak kalite, prezans nan done kase, kantite total dosye anvan ak apre, konparezon transfòmasyon ki fèt pa pwosesis ETL pou agrégation, chanje non kolòn, ak lòt bagay. Anplis de sa, chèk sa yo te echèl nan diferan sous done, pou egzanp, nan adisyon a SalesForce, tou nan MySQL.

Verifikasyon final kalite done yo te deja fèt nan nivo S3, kote yo te estoke epi yo te pare pou itilize pou fòmasyon machin aprantisaj modèl. Pou jwenn done nan dosye final CSV ki sitiye sou bokit S3 a epi valide li, yo te ekri kòd kliyan boto3.

Te gen tou yon kondisyon nan men kliyan an pou estoke yon pati nan done yo nan yon sèl S3 bokit ak yon pati nan yon lòt. Sa a te mande tou ekri chèk adisyonèl yo tcheke fyab nan klasman sa yo.

Eksperyans jeneralize nan lòt pwojè

Yon egzanp sou lis ki pi jeneral nan aktivite yon enjenyè Kalite Done:

  • Prepare done tès (valab envalid gwo ti) atravè yon zouti otomatik.
  • Voye ansanm done ki prepare a nan sous orijinal la epi tcheke si li pare pou itilize.
  • Lanse pwosesis ETL pou trete yon seri done ki soti nan depo sous la nan depo final la oswa entèmedyè lè l sèvi avèk yon seri sèten paramèt (si sa posib, mete paramèt configurable pou travay ETL la).
  • Verifye done yo trete pa pwosesis ETL pou bon jan kalite li yo ak konfòmite ak kondisyon biznis yo.

An menm tan an, konsantre prensipal la nan chèk yo ta dwe pa sèlman sou lefèt ke koule nan done nan sistèm nan, nan prensip, te travay ak rive nan fini (ki se yon pati nan tès fonksyonèl), men sitou sou tcheke ak validation done pou konfòmite ak egzijans espere, idantifye anomali ak lòt bagay.

Zouti

Youn nan teknik yo pou kontwòl done sa yo ka òganizasyon chèk chèn nan chak etap nan pwosesis done, sa yo rele "chèn done" nan literati a - kontwòl done soti nan sous la nan pwen an nan itilizasyon final la. Kalite chèk sa yo pi souvan aplike lè yo ekri demann SQL tcheke. Li klè ke demann sa yo ta dwe lejè ke posib epi tcheke moso endividyèl nan bon jan kalite done (tablo metadata, liy vid, NULL, Erè nan sentaks - lòt atribi obligatwa pou tcheke).

Nan ka tès regresyon, ki sèvi ak seri done pare yo (ki pa chanje, yon ti kras chanje), kòd ototest la ka estoke modèl ki pare pou tcheke done pou konfòmite ak bon jan kalite (deskripsyon metadata tab espere; objè echantiyon ranje ki ka chwazi owaza pandan tès la, elatriye).

Epitou, pandan tès la, ou dwe ekri pwosesis tès ETL lè l sèvi avèk kad tankou Apache Airflow, Apache etensèl oswa menm yon nwa-bwat nwaj kalite zouti GCP Dataprep, GCP Dataflow Ak sou sa. Sikonstans sa a fòse enjenyè tès la plonje tèt li nan prensip operasyon zouti ki anwo yo e menm pi efikasman fè tès fonksyonèl (pa egzanp, pwosesis ETL ki deja egziste sou yon pwojè) epi sèvi ak yo pou tcheke done yo. An patikilye, Apache Airflow gen operatè pare pou travay ak baz done analyse popilè, pou egzanp GCP BigQuery. Egzanp ki pi fondamantal nan itilizasyon li yo te deja dekri isit la, Se konsa, mwen pa pral repete tèt mwen.

Apa de solisyon pare yo, pèsonn pa entèdi ou aplike pwòp teknik ou ak zouti. Sa a pa pral sèlman benefisye pou pwojè a, men tou pou Enjenyè Kalite Done tèt li, ki moun ki pral kidonk amelyore orizon teknik li yo ak ladrès kodaj.

Ki jan li travay sou yon pwojè reyèl

Yon bon ilistrasyon nan dènye paragraf yo sou "chèn done", ETL ak chèk omniprésente se pwosesis sa a ki soti nan youn nan pwojè reyèl yo:

Gwo ak ti tèstè done: tandans, teyori, istwa mwen an

Isit la, done divès kalite (natirèlman, prepare pa nou) antre nan "antonwa" nan sistèm nou an: valab, envalid, melanje, elatriye, Lè sa a, yo filtre epi yo fini nan yon depo entèmedyè, Lè sa a, yo ankò sibi yon seri transfòmasyon. epi yo mete yo nan depo final la, ki soti nan ki, nan vire, analytics, bilding done mart ak rechèch pou insights biznis yo pral te pote soti. Nan yon sistèm konsa, san fonksyonèl tcheke operasyon an nan pwosesis ETL, nou konsantre sou bon jan kalite a nan done anvan ak apre transfòmasyon, osi byen ke sou pwodiksyon an nan analytics.

Pou rezime sa ki anwo a, kèlkeswa kote mwen te travay, tout kote mwen te patisipe nan pwojè Done ki te pataje karakteristik sa yo:

  • Se sèlman atravè automatisation ou ka teste kèk ka epi reyalize yon sik lage akseptab nan biznis la.
  • Yon tèsteur sou yon pwojè konsa se youn nan manm ekip la ki pi respekte, paske li pote gwo benefis pou chak patisipan yo (akselerasyon tès, bon done ki soti nan Data Scientist, idantifikasyon defo nan premye etap yo).
  • Li pa enpòtan si w ap travay sou pwòp pyès ki nan konpitè oswa nan nwaj yo - tout resous yo abstrè nan yon gwoup tankou Hortonworks, Cloudera, Mesos, Kubernetes, elatriye.
  • Pwojè yo bati sou yon apwòch mikwosèvis, distribiye ak enfòmatik paralèl domine.

Mwen ta renmen remake ke lè w ap fè tès nan domèn Kalite Done, yon espesyalis tès deplase konsantre pwofesyonèl li sou kòd pwodwi a ak zouti yo itilize.

Karakteristik diferan nan tès Kalite Done

Anplis de sa, pou tèt mwen, mwen te idantifye sa ki annapre yo (mwen pral imedyatman fè yon rezèvasyon ke yo trè jeneralize ak sèlman subjectif) karakteristik diferan nan tès nan pwojè Done (Gwo Done) (sistèm) ak lòt domèn:

Gwo ak ti tèstè done: tandans, teyori, istwa mwen an

lyen itil

  1. Teyori: DAMA-DMBOK: Kò Konesans Jesyon Done: 2yèm edisyon.
  2. Sant fòmasyon EPAM 
  3. Materyèl rekòmande pou yon kòmansman enjenyè Kalite Done:
    1. Kou gratis sou Stepik: Entwodiksyon nan baz done
    2. Kou sou aprantisaj LinkedIn: Fondasyon Syans Done: Jeni Done.
    3. Atik:
    4. Videyo:

Konklizyon

Done Kalite se yon direksyon trè jèn pwomèt, yo dwe yon pati nan ki vle di yo dwe yon pati nan yon demaraj. Yon fwa nan Kalite Done, ou pral plonje nan yon gwo kantite teknoloji modèn, ki mande, men sa ki pi enpòtan, opòtinite menmen ap louvri pou ou jenere ak aplike lide ou. Ou pral kapab sèvi ak apwòch la amelyorasyon kontinyèl pa sèlman sou pwojè a, men tou pou tèt ou, kontinyèlman devlope kòm yon espesyalis.

Sous: www.habr.com

Add nouvo kòmantè