Kuidas ettevÔtted saavad valida andmeinseneride tööriistu ja mitte muuta kÔike tehnoloogiliseks loomaaed: PROFI.RU kogemus

Netoloogia toimetaja rÀÀkis BI meeskonna tiimijuhiga Profi.ru Pavel Sayapiniga, kes rÀÀkis, milliseid ĂŒlesandeid lahendavad andmeinsenerid tema meeskonnas, milliseid tööriistu selleks kasutatakse ja kuidas Ă”igesti lĂ€heneda tööriistade valimisele andmeprobleemide lahendamiseks, sealhulgas ebatĂŒĂŒpilistele. Pavel on Ă”petaja kursusel „Andmeinsener». 

Millega tegelevad andmeinsenerid Profi.ru-s

Profi.ru on teenus, mis aitab klientidel kohtuda erinevate valdkondade spetsialistidega. Teenuse andmebaasis on ĂŒle 900 000 spetsialisti 700 teenusevaldkonnas: juhendajad, remondimehed, treenerid, iluteenindajad, artistid ja teised. Igal pĂ€eval registreeritakse ĂŒle 10 000 uue tellimuse — see kĂ”ik annab umbes 100 miljonit sĂŒndmust pĂ€evas. Sellise andmemahtu korrashoidmine on professionaalsete andmeinseneride abita vĂ”imatu.  

Ideaalis arendab andEngineer andmekultuuri, mille abil ettevĂ”te saab suurendada kasumit vĂ”i vĂ€hendada kulusid. Ta toob ettevĂ”ttele vÀÀrtust, töötades meeskonnas ja olles oluline lĂŒli erinevate osalejate vahel — arendajatest kuni Ă€riaruannete kasutajateni. Kuid igas ettevĂ”ttes vĂ”ivad ĂŒlesanded olla erinevad, seega vaatame neid Profi.ru nĂ€itel.

Koguvad andmeid otsuste tegemiseks ja esitavad need lĂ”ppkasutajale — tipptasemel juhile, tootearenduse juhile, analĂŒĂŒtikule. 

Andmed peavad olema arusaadavad otsuste tegemiseks ja mugavad kasutamiseks. Pole vaja pingutada kirjelduse leidmiseks vĂ”i koostada keerulisi SQL-pĂ€ringuid, mis arvestavad palju erinevaid tegureid. Ideaalne olukord — kasutaja vaatab juhtpaneeli ja on rahul. Ja kui mĂ”nes lĂ”ikes andmeid puuduvad, siis ta lĂ€heb andmebaasi ja lihtsa SQL-pĂ€ringuga saab vajalikud andmed.

Kuidas ettevÔtted saavad valida andmeinseneride tööriistu ja mitte muuta kÔike tehnoloogiliseks loomaaed: PROFI.RU kogemus
Andmekvaliteedi protsessi koht andmetehoidla ĂŒldstruktuuris.

Selgitava dokumentatsiooni tĂ€htsus andmetega töötamisel on suur. See lihtsustab nii andmeinseneri tööd (kuna kĂŒsimustega ei hĂ€irita) kui ka andmekasutaja tööd (kes vĂ”ib ise vastuseid leida). Profi.ru-s on sellised dokumendid kogutud sisefoorumisse.

Mugavus hĂ”lmab ka andmete saamise kiirus. Kiirus = kergesti kĂ€tte saadav ĂŒhe sammu, ĂŒhe kliki - juhtpaneelil. Kuid praktikas on kĂ”ik keerulisem. 

Sama Tableau ei vÔimalda lÔppkasutajal juhtpaneelilt vÀlja tÔmmata kÔiki vÔimalikke mÔÔtmeid. Kasutaja on rahul vaid nende filtritega, mille on loonud juhtpaneeli arendaja. See toob kaasa kaks stsenaariumi: 

  • Arendaja loob mitu lĂ”ike juhtpaneelile ⟶ lehtede arv suureneb oluliselt. See vĂ€hendab andmete kergesti kĂ€tte saamist: on keeruline aru saada, kus miski asub. 
  • Arendaja loob vaid vĂ”tmelĂ”iked. Teabe leidmine on lihtsam, kuid vĂ€hem standardse lĂ”ike puhul tuleb ikkagi minna kas andmebaasi vĂ”i analĂŒĂŒtikute juurde. See mĂ”jutab samuti kergesti kĂ€tte saamist. 

KÀttesaadavus on lai mÔisted. See hÔlmab andmete olemasolu nÔuetekohases vormis, vÔimalust teavet saada armatuurlaudades ning vajalikku andmete lÔikamist.

Koguvad andmeid kĂ”igilt allikatelt ĂŒhte kohta.

Andmeallikad vĂ”ivad olla sisemised ja vĂ€lised. NĂ€iteks kellegi Ă€ri sĂ”ltub ilmateadetest, mida tuleb koguda ja sĂ€ilitada — need on vĂ€lised allikad. 

Teavet tuleb sĂ€ilitada koos allika mĂ€rkimisega ning et andmed oleksid hĂ”lpsasti leitavad. Profi.ru's on see ĂŒlesanne lahendatud automatiseeritud dokumentatsiooniga. Sisemiste andmeallikate dokumentatsiooniks kasutatakse YML-faile.

Loovad armatuurlaudasid.

Andmete visualiseerimist on kĂ”ige parem teha professionaalses tööriistas — nĂ€iteks Tableau's. 

Enamik teeb otsuseid emotsionaalselt — oluline on nĂ€htavus ja esteetika. NĂ€iteks Excel ei sobi visualiseerimiseks kuigi hĂ€sti: see ei kata kĂ”iki andmekasutajate vajadusi. NĂ€iteks tootejuht armastab numbritesse sĂŒveneda, kuid nii, et see oleks mugav. See vĂ”imaldab tal lahendada oma ĂŒlesandeid, mitte mĂ”elda, kuidas teavet saada ja mÔÔdikuid koguda.

Kvaliteetne andmete visualiseerimine vÔimaldab otsuseid lihtsamini ja kiiremini vastu vÔtta.

 
Mida kĂ”rgemal positsioonil inimene on, seda teravam on vajadus omada oma telefonis kokkuvĂ”tlikke andmeid. Üksikasjad ei ole tippjuhtidele vajalikud — oluline on jĂ€lgida olukorda tervikuna, ja BI on selleks hea tööriist.

Kuidas ettevÔtted saavad valida andmeinseneride tööriistu ja mitte muuta kÔike tehnoloogiliseks loomaaed: PROFI.RU kogemus
NĂ€ide Profi.ru tootetahvel (ĂŒks lehtedest). Teabe konfidentsiaalsuse eesmĂ€rkidel on mÔÔdikute ja telgede nimetused varjatud.

Reaalsed ĂŒlesannete nĂ€ited 

Ülesanne 1 — kanda andmed algsetest (operatiivsetest) sĂŒsteemidest andmete ladustamisse vĂ”i ETL-i.

Üks andmeinseneri rutiinsetest ĂŒlesannetest. 

Selleks vÔivad kasutada:

  • kĂ€sitsi kirjutatud skripte, mis kĂ€ivitatakse cron kaudu vĂ”i spetsiaalse orkestreerija, nagu Airflow vĂ”i Prefect, abil; 
  • avatud lĂ€htekoodiga ETL-lahendusi: Pentaho Data Integration, Talend Data Studio ja teised;
  • patenteeritud lahendusi: Informatica PowerCenter, SSIS ja teised;
  • pilvepĂ”hiseid lahendusi: Matillion, Panoply ja teised. 

Lihtsas vormis lahendatakse ĂŒlesanne YML-faili kirjutamisega, mis sisaldab 20 rida. Selleks kulub umbes 5 minutit. 

KĂ”ige keerulisemas olukorras, kui on vaja lisada uus allikas — nĂ€iteks uus andmebaas — vĂ”ib see vĂ”tta kuni mitu pĂ€eva. 

Profi-s on see lihtne ĂŒlesanne — hĂ€sti toimivas protsessis — jĂ€rgmised sammud:

  • Selgitada tellijalt, milliseid andmeid on vaja ja kus need asuvad.
  • MĂ”ista, kas need andmed on kĂ€tte saadavad.
  • Kui ligipÀÀse ei ole, kĂŒsida administraatoritelt.
  • Lisada Gitis uus haru, kus on ĂŒlesande kood Jira-s.
  • Luua migreerimine, et lisada andmed ankurmudelitesse interaktiivse Python-skripti kaudu.
  • Lisada laadimisfailid (YML-fail, milles on kirjas, kust andmed tulevad ja kuhu need salvestatakse).
  • Testida testkeskkonnas.
  • Laadida andmed hoidlas.
  • Luua pull request.
  • Töötada lĂ€bi koodivaatamine.
  • PĂ€rast koodivaatamise lĂ€bimist laaditakse andmed peaharusse ja need jagatakse automaatselt tootmisse (CI/CD).

Ülesanne 2 — mugavalt paigutada laaditud andmed

Teine sage ĂŒlesanne on laaditud andmete paigutamine nii, et lĂ”ppkasutajal (vĂ”i BI-tööriistal) oleks mugav nendega töötada ja ei peaks tegema liigseid samme enamiku ĂŒlesannete tĂ€itmiseks. See tĂ€hendab Dimension Data Store'i (DDS) koostamist vĂ”i uuendamist. 

Selleks vĂ”ivad kehtida lahendused, mis pĂ”hinevad 1. ĂŒlesandel, kuna see on samuti ETL-protsess. KĂ”ige lihtsamas variandis toimub DDS vĂ€rskendamine SQL-skriptide abil.

3. ĂŒlesanne on ebatĂŒĂŒpiliste ĂŒlesannete seast.

Profi-s algab vooganalĂŒĂŒs. Toote meeskondadelt genereeritakse suur hulk sĂŒndmusi — salvestame need ClickHouse'i. Kuid seal ei ole vĂ”imalik salvestusi massiliselt lisada, seega tuleb salvestused ĂŒhendada partidesse. Otse kirjutamine ei ole lubatud — vajalik on vahepealne töötleja.

Kasutame mootorit, mis pĂ”hineb Apache Flinkil. Praegu on tegevuste jĂ€rjekord jĂ€rgmine: mootor töötab vĂ€lja sisenevaid sĂŒndmuste vooge ⟶ kogub need partidesse ClickHouse'is ⟶ loendab sĂŒndmuste arvu 15 minuti jooksul ⟶ edastab need teenusele, mis mÀÀrab, kas esineb anomaaliaid — vĂ”rreldes sama ajavahemiku vÀÀrtustega, mille sĂŒgavus on 3 kuud ⟶ kui need on olemas, saadab teate Slacki.

Kuidas ettevÔtted saavad valida andmeinseneride tööriistu ja mitte muuta kÔike tehnoloogiliseks loomaaed: PROFI.RU kogemus
Esialgne analĂŒĂŒsiskeem (osaliselt laadimine)

Apache Flink raamistik tagab kohaletoimetamise vĂ€hemalt ĂŒhe korra. Siiski vĂ”ib tekkida duplikaate. RabbitMQ puhul saab selle lahendada, kasutades Correlation ID-d. Sel juhul on tagatud ainulaadne kohaletoimetamine ⟶ andmete terviklikkus.

Loeme sĂŒndmuste hulka taas Apache Flinki abil, edastame kohandatud juhtpaneeli kaudu, mis on kirjutatud NodeJS-is, ning front-end on ReactJS. Kiire otsing ei andnud sarnaseid lahendusi. Ja kood ise osutus lihtsaks — kirjutamine ei vĂ”tnud palju aega.

Monitooring on pigem tehniline. Vaatame anomaaliaid, et varakult probleeme ennetada. Olulised globaalsed ettevĂ”tte mÔÔdikud pole veel monitooringusse kaasatud, kuna vooganalĂŒĂŒtika suund on alles kujunemisjĂ€rgus.

Peamised andmeinseneride tööriistad

Andmete inseneride ĂŒlesannete osas on rohkem-vĂ€hem selge, nĂŒĂŒd rÀÀgime tööriistadest, mida nende probleemide lahendamiseks kasutatakse. Loomulikult vĂ”ivad tööriistad erinevates ettevĂ”tetes erineda (ja peaksidki erineda) — kĂ”ik sĂ”ltub andmete mahust, nende saabumise kiirusest ja mitmekesisusest. Samuti vĂ”ib see sĂ”ltuda spetsialisti eelistustest, kes eelistab ĂŒht konkreetset tööriista lihtsalt seepĂ€rast, et ta on sellega töötanud ja tunneb seda hĂ€sti. Profi.ru on valinud jĂ€rgmised variantid →

Andmete visualiseerimiseks — Tableau, Metabase

Tableau valiti juba ammu. See sĂŒsteem vĂ”imaldab kiiresti analĂŒĂŒsida suuri andmemassiive, ilma et oleks vajalik kulukas rakendamine. Meie jaoks on see mugav, ilus ja tuttav — me töötame sellega sageli.

Metabase'ist teavad vĂ€hesed, kuid tĂ”eliselt hea prototĂŒĂŒpimiseks. 

Teiste visualiseerimistööriistade seas vĂ”ib mainida ka Superseti Airbnb'lt. Selle eripĂ€ra on palju ĂŒhendusi andmebaasidega ja visualiseerimise vĂ”imalusi. Kuid tavakasutaja jaoks on see vĂ€hem mugav kui Metabase — seal ei saa tabeleid ĂŒhendada, selleks on vaja luua eraldi vaated. 

Metabase'is saab tabelid omavahel ĂŒhendada, tĂ”si, et teenus teeb seda ise, arvestades andmebaasi skeemi. Metabase'i liides on ka lihtsam ja meeldivam.

Tööriistu on palju — lihtsalt leidke enda oma.

Andmete salvestamiseks — ClickHouse, Vertica

ClickHouse on tasuta kiire tööriist tooteĂŒrituste salvestamiseks. AnalĂŒĂŒtikud teevad seal eraldi analĂŒĂŒse (kui andmed on piisavad) vĂ”i andmeinsenerid vĂ”tavad kokkuvĂ”tted ja laadivad need Vertica'sse vitriinide loomiseks.

Vertica on Àge mugav toode lÔpp-vitriinide kuvamiseks. 

Andmevoogude haldamiseks ja arvutuste tegemiseks — Airflow

Me laadime andmed sisse konsooli tööriistade kaudu. NĂ€iteks MySQL'i kaasas tuleva kliendi kaudu — see on kiirem. 

Konsooli tööriistade pluss on kiirus. Andmed ei liigu lĂ€bi sama Pythoniprotsessi mĂ€lu. Miinuseks on vĂ€hem kontrolli andmete ĂŒle, mis transporditakse ĂŒhest andmebaasist teise.

Peamine programmeerimiskeel on Python.

Pythonil on madalam sisenemisbarjÀÀr, ja ettevĂ”ttes on selle keele oskusteave. Teine pĂ”hjus on see, et Airflow DAG-id on kirjutatud Pythonis. Need skriptid on lihtsalt ĂŒleslaadimise ĂŒmbrised, peamine töö toimub konsooliskripte kasutades. 

Java on meie kasutuses reaalajas analĂŒĂŒtika arendamisel.

Andmete töötlustööriistade valiku lĂ€henemine — kuidas vĂ€ltida tehnoloogilist loomaaeda.

Turul on palju tööriistu, et hallata andmeid igas etapis: nende tekkimisest kuni juhtkonna armatuurlaudadele edastamiseni. Pole ĂŒllatav, et mĂ”nel ettevĂ”ttel vĂ”ivad tekkida mitmed omavahel mitte seotud lahendused — nn tehnoloogiline loomaaed.

Tehnoloogiline loomaaed on tööriistad, mis tÀidavad samu funktsioone. NÀiteks Kafka ja RabbitMQ sÔnumite edastamiseks vÔi Grafana ja Zeppelin visualiseerimiseks. 

Kuidas ettevÔtted saavad valida andmeinseneride tööriistu ja mitte muuta kÔike tehnoloogiliseks loomaaed: PROFI.RU kogemus
Andmete ja tehisintellekti valdkonna tehnoloogiate ja ettevĂ”tete kaart. — nĂ€ha, kui palju dubleerivaid lahendusi vĂ”ib olla.

Paljud asuvad isiklike eesmĂ€rkide jaoks kasutavad erinevaid ETL-tööriistu. Profi puhul on just selline olukord. Peamine ETL töötab Airflow'il, kuid mĂ”ned isiklikeks ĂŒlesannete tĂ€itmiseks kasutavad Pentahot. Nad testivad hĂŒpoteese ning inseneride kaudu neid andmeid edastama pole vaja. Peamiselt kasutavad 'ise teenindavad' tööriistu piisavalt kogenud spetsialistid, kes tegelevad teadusliku tegevusega — uurivad uusi vĂ”imalusi toote arendamiseks. Nende analĂŒĂŒsiks kasutatav andmekogum on huvitav peamiselt neile, lisaks muutub see pidevalt. Seega pole mĂ”tet neid ĂŒlesandeid pĂ”hiplatvormi talletada. 

Tagasi liikudes loomaaeda. Tihti on dubleerivate tehnoloogiate kasutamine seotud inimfaktoriga. Iseseisvad sisemised tiimid on harjunud töötama teatud tööriistadega, mida teine meeskond ei pruugi kasutada. Ja mĂ”nikord on autonoomia ainus viis spetsiifiliste ĂŒlesannete lahendamiseks. NĂ€iteks vajab R&D meeskond midagi testida teatud tööriista abil — see on lihtsalt mugav, keegi meeskonnast on seda juba kasutanud vĂ”i on mingi muu pĂ”hjus. Oodata sĂŒsteemiadministraatorite ressurssi selle tööriista installimiseks ja seadistamiseks on pikk. Sellega seoses peavad isegi arvestavad ja tĂ€helepanelikud administraatorid tĂ”estama, et see on tĂ”eliselt vajalik. Nii et meeskond installib tööriista oma virtuaalmasinatesse ja lahendab oma spetsiifilisi ĂŒlesandeid.

Lahenduste loomaaed pole probleem, kuni see ei nĂ”ua mĂ€rkimisvÀÀrseid tööintensiivsuse ressursse sĂŒsteemiadministraatorilt tööriista toe jaoks. Tuleb arvestada, kuidas tööriista kasutamine mĂ”jutab tugiteenuste ressursse. 

Teine tavaline pĂ”hjus uue tööriistakomplekti ilmumiseks on soov proovida tundmatut toodet piisavalt uues valdkonnas, kus standardid ei ole veel kujunenud vĂ”i puuduvad tĂ”estatud soovitused. Andmeinsener, nagu ka arendaja, peab alati uurima uusi tööriistu, lootes leida tĂ”husama lahenduse praegustele ĂŒlesannetele vĂ”i olla kursis, mida turg pakub.

Uute tööriistade proovimise ahvatlus on tÔeliselt suur. Kuid mÔistliku valiku tegemiseks on esmalt vajalik enesedistsipliin. See aitab vÀltida tÀielikku sukeldumist uurimissoovidesse ja arvestada ettevÔtte vÔimekust uue tööriista infrastruktuuri toetamiseks. 

Tehnoloogiaid ei tohiks kasutada pelgalt tehnoloogiate pĂ€rast. Parim lĂ€henemine on pragmaatiline: ĂŒlesanne ⟶ tööriistade komplekt, mis suudab seda ĂŒlesannet lahendada.

 JĂ€rgmine samm on igaĂŒhe hindamine ja parima valiku tegemine. NĂ€iteks vĂ”ib see tööriist lahendada probleemi tĂ”husamalt, kuid selleks ei ole kompetentsi, samas on see veidi vĂ€hem efektiivne, kuid ettevĂ”ttes on inimesed, kes teavad, kuidas sellega töötada. See tööriist on tasuline, kuid selle hooldamine ja kasutamine on lihtne, samas kui see on trendikas open source lahendus, mille toeks on vaja adminnide meeskonda. Sellised dikhotoomiad tekivad, mille lahendamiseks on vajalik kĂŒlm pea.

Tööriista valik on osaliselt usaldushĂŒpe ja osaliselt isiklik kogemus. Pole tĂ€ielikku kindlust, et tööriist sobib.

NĂ€iteks alustas Profi Pentaho kasutamist, kuna selle tööriista osas oli ekspertteadmised, kuid lĂ”puks osutus see vale otsuseks. Pentaho siserepo hakkas projekti kasvu kĂ€igus töö kiiruselt tĂ”siselt mĂ”jutama. Andmete salvestamine vĂ”ttis aega minut, ja kui on harjumus pidevalt tööd salvestada, siis aeg lihtsalt voolas lĂ€bi sĂ”rmede. Sellele lisandus keeruline kĂ€ivitamine ja ajastatud ĂŒlesanded – arvuti hangus. 

Kannatused lĂ”ppesid Airflow'le ĂŒleminekuga – populaarse tööriistaga, millel on suur kogukond. 

Kogukonnaplatvormi olemasolu ja tööriist on keeruliste probleemide lahendamiseks oluline — saate kolleegidelt nĂ”u kĂŒsida.

Kui ettevĂ”te on kĂŒps ja omab ressursse, tasub kaaluda tugiteenuse ostmist. See aitab kiiresti lahendada probleeme ja saada soovitusi toote kasutamiseks.

Valikute tegemise lÀhenemisviisi osas jÀrgib Profi jÀrgmisi pÔhimÔtteid:

  • Ärge tehke otsust ĂŒksi.. Kui inimene midagi valib, on ta automaatselt veendunud oma Ă”igsuses. Teine asi on veenda teisi, kui on vaja tuua tĂ”siseid argumente oma kaitseks. See aitab ka nĂ€ha tööriista nĂ”rku kohti.
  • KĂŒsi nĂ”u peaspetsialistilt andmete osas (vertikaalne dialoog). See vĂ”ib olla peamine andmeinsener (Chief Data Engineer), BI-meeskonna juht. Juhtidel on laiem ĂŒlevaade olukorrast. 
  • Suhtle teiste meeskondadega (horisontaalne dialoog). Milliseid tööriistu nad kasutavad ja kui hĂ€sti need toimivad. VĂ”ib-olla suudab kolleegide tööriist lahendada ka teie probleemid ja ei pea looma lahenduste loomaaeda.

Sisemised oskused kui tÔhus asendus vÀlistelt teenusepakkujalt.

Tööriistade valimisel vÔib arvestada ka ettevÔtte sisemiste oskuste kasutamisega. 

Sageli esinevad olukorrad, kus ettevĂ”ttel on keeruline ĂŒlesanne, kuid selle tĂ€itmiseks ei ole raha. Ülesanne on suur ja oluline, ning oleks mĂ”istlik kaasata teenuse pakkuja, kellel on vastav kogemus. Kuna sellist vĂ”imalust (raha) ei ole, usaldatakse ĂŒlesanne sisemisele meeskonnale. TĂŒĂŒpiliselt usaldab ettevĂ”te rohkem oma töötajaid, kui nad on juba oma tĂ”husust tĂ”estanud.

Selliste ĂŒlesannete hulka, kus uus suund areneb töötajate jĂ”ul, kuulub nĂ€iteks koormustestide lĂ€biviimine ja andmelao loomine. Eriti andmelao loomine, kuna see on iga ettevĂ”tte jaoks ainulaadne lugu. Andmelao ostmine ei ole vĂ”imalik, saab ainult palgata vĂ€liseid spetsialiste, kes selle sisemiste meeskondade toetusel ehitavad.  

Muide, uue suuna edenedes vÔib meeskond mÔista, et vajadus vÀlise teenuse pakkuja jÀrele on kadunud.

Profi BI rakendamine toimus in-house. Peamine vĂ€ljakutse oli see, et Ă€ri soovis BI-d kiiresti kĂ€iku vĂ”tta. Kuid sellise projekti ĂŒlesehitamine nĂ”udis aega: kompetentside kasvatamine, andmete sisestamine, mugava andmehoidla loomine, tööriistade valimine ja nende omandamine.

Peamine - kuum - faas, mil kÔik ehitati ja kristallistus, kestis umbes aasta. Projekt areneb siiani. 

EttevÔtte andmehoidla rajamisel on oluline jÀrgida kÔrgeid standardeid, kaitsta oma positsioone ja mitte leppida kehvaga Àri nimel. 

Suurte valude saatel tuli meil ĂŒmber teha suurem osa projektist, mille olime siis kiirelt valmis saanud.

 Kuid mĂ”nikord on kiirustamine mĂ”istlik lĂ€henemine. NĂ€iteks toote arenduses vĂ”ib see olla isegi ainus Ă”ige tee. Tuleb kiiresti edasi liikuda, testida toote hĂŒpoteese ja muud. Kuid andmehoidla peab pĂ”hinema tugeval arhitektuuril, vastasel juhul ei suuda see kiiresti leppida kasvava Ă€ri vajadustega ning projekt jÀÀnuks seisma.

Selles keerulises projektis aitas meid oluliselt meie juht, kes kaitses tööd, selgitas juhtkonnale, mida me teeme, nÔudis ressursse ja kaitses meid. Ilma sellise toeta ei ole ma kindel, et oleksime projekti kÀivitanud.

Taolistes lugudes mĂ€ngivad olulist rolli nn varajased kasutajad — need, kes on valmis uut proovima — tippjuhtide, analĂŒĂŒtikute ja tootmanageerijate seas. Et too toode tĂ”useks, on vaja esimesi katsetajaid, kes kinnitaksid, et kĂ”ik töötab ja seda on mugav kasutada.

Kui keegi soovib jagada lahendust kolmandale ĂŒlesandele, mida eespool kirjeldati — tere tulemast 🙂

Allikas: habr.com

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster