Ma'lumotlar muhandisi yoki o'lish: bitta ishlab chiquvchining hikoyasi

Dekabr oyining boshida men halokatli xatoga yo'l qo'ydim va ishlab chiquvchi sifatida hayotimda burilish yasadim va kompaniya ichidagi Data Engineering (DE) jamoasiga o'tdim. Ushbu maqolada men DE jamoasida ikki oylik ishlaganim davomida qilgan ba'zi kuzatishlarim bilan o'rtoqlashaman.

Ma'lumotlar muhandisi yoki o'lish: bitta ishlab chiquvchining hikoyasi

Nima uchun Data Engineering?

Mening DE ga sayohatim 2019 yilning yozida boshlangan, biz o'shanda Xneg ga boramiz Tarqalgan hisoblash maktabi, va u erda men ma'rifatga erishdim. Men mavzuga qiziqa boshladim, algoritmlarni va hatto ular haqida o'rgana boshladim yozing, va keyin qo'llash doirasi haqida o'ylab ko'rdim va bizning kompaniyamizdagi amaliy dastur ma'lumotlar bazalari tarqatilganligini tezda bilib oldik.

Jamoamiz aynan nima qiladi? Biz, barcha moda yigitlari va qizlari kabi, Data Driven Company bo'lishni xohlaymiz. Va bu mumkin bo'lishi uchun biz hech bo'lmaganda kompaniyaga kerak bo'lgan har qanday hisobotlarni yaratish uchun ishlatilishi mumkin bo'lgan ishonchli saqlash inshootini qurishimiz kerak. Lekin eng muhimi, bu saqlashdagi ma'lumotlar ishonchli bo'lishi kerak. Bundan tashqari, ushbu ma'lumotlardan foydalanib, siz t vaqtida tizimning holatini tiklashingiz kerak. Bularning barchasi biz mikroservislarning jasur yangi dunyosida yashayotganimiz bilan murakkablashadi va bu mafkura har bir xizmat o'zining kichik funksiyalarini amalga oshirishini, uning ma'lumotlar bazasi o'z biznesi ekanligini va uni hech bo'lmaganda har kuni o'chirib tashlashi mumkinligini anglatadi, lekin bir vaqtning o'zida biz xizmat holatini qabul qilish va qayta ishlash imkoniyatiga ega bo'lishimiz kerak.

Agar siz ma'lumotlarga asoslangan bo'lishni istasangiz, avval voqealarga asoslangan bo'ling

Juda oddiy emas. Voqealar har xil bo'lib, ishlab chiquvchi va ma'lumotlar muhandisi ularga boshqacha qarashadi. Voqealar haqida gapirish - bu alohida maqola uchun mavzu, shuning uchun men bu erda unga kirmayman. Bundan tashqari, bunday maqola allaqachon mavjud yozgan ma'lum bir Martin Fauler, men uning yutuqlarini olib tashlamayman, u ham mashhur bo'lsin.

Umuman olganda, o'ylash uchun ko'p narsa bor va shuning uchun bu hudud jozibali. Shunday bo'ladiki, bizning kompaniyamizda ma'lumotlar muhandisi ETL/ELT quvurlarini yozadigan shaxsga qaraganda ancha kengroq mas'uliyat sohasidir (agar siz bu qisqartmalar nimani anglatishini bilmasangiz, keling. uchrashuv. Kontekstli reklama sifatida).

Biz saqlash arxitekturasi, ma'lumotlarni modellashtirish, ma'lumotlar xavfsizligi bilan bog'liq muammolar va quvurlarning o'zi bilan shug'ullanamiz. Shuningdek, biz, bir tomondan, mahsulot ishlab chiqaruvchilar uchun bizning mavjudligimiz unchalik og'ir emasligiga va tizimga yangi xususiyatlarni kiritishda ular bizning talablarimiz bilan iloji boricha kamroq chalg'itishi kerakligiga ishonch hosil qilishimiz kerak, boshqa tomondan, biz ularni tahlilchilar va BI jamoasi uchun saqlash ma'lumotlarida qulay tarzda taqdim etishi kerak. Biz shunday yashaymiz.

Rivojlanishdan o'tishda qiyinchiliklar

Ishning birinchi kunida men siz bilan baham ko'rmoqchi bo'lgan bir qator qiyinchiliklarga duch keldim.

1. Men ko'rgan birinchi narsa - tyuling va ba'zi amaliyotlarning yo'qligi. Misol uchun, testlar bilan kod qamrovini olaylik. Bizda ishlab chiqilayotgan yuzlab sinov tizimlari mavjud. Ma'lumotlar bilan ishlashda hamma narsa murakkabroq. Ha, biz ETL quvurlarini test ma'lumotlari bo'yicha sinab ko'rishimiz mumkin, ammo biz buni qo'lda qilishimiz va har bir alohida holat uchun echimlarni izlashimiz kerak. Natijada, test qamrovi ancha yomonlashadi. Yaxshiyamki, monitoring va jurnallar ko'rinishidagi yana bir fikr-mulohaza qatlami mavjud, ammo bu bizdan faol emas, balki reaktiv munosabatda bo'lishni talab qiladi, bu esa g'azablantiradigan va asabiylashtiradi.

2. DE nuqtai nazaridan dunyo oddiy mahsulot ishlab chiqaruvchisi uchun umuman ko'rinadigan darajada emas (yaxshi, albatta o'quvchi unday emas va u allaqachon hamma narsani biladi, lekin men bilmasdim va endi men jinnilik qilyapman. yuqoriga). Ishlab chiquvchi sifatida men oʻz mikroservisimni yarataman, maʼlumotlarni [siz tanlagan maʼlumotlar bazasiga] joylashtiraman, oʻsha yerda oʻz holatimni saqlayman, ID boʻyicha biror narsa olaman va bu yaxshi. Xizmat sekin, buyurtmalar chalkash, hammasi shu. Ular mening davlatimni boshqa xizmatda izlashimni so'rashadi, shuning uchun men RabbitMQ-ga voqea o'tkazaman va tamom. Va bu erda biz yana yuqorida tavsiflangan voqealar masalasiga qaytdik.

Operatsion ish uchun xizmatga kerak bo'lgan narsa tarixiy ma'lumotlar uchun bizga mos kelmaydi, shuning uchun xizmat shartnomalarini qayta ishlash va ishlab chiqish guruhlari bilan yaqin ishlash masalasi boshlanadi. Bizni kelishish uchun qancha soat vaqt ketganini tasavvur ham qila olmaysiz: u bizning kompaniyamizda qanday Event Driven.

3. Siz boshingiz bilan o'ylashingiz kerak. Yo'q, men ishlab chiquvchilar o'ylamaydilar degani emas (garchi men hamma uchun gapirishim kerak), bu shunchaki mahsulotni ishlab chiqishda sizda ko'pincha qandaydir arxitektura mavjud va siz turli xil aralashishlarni orqada qoldirib ketasiz. Albatta, bu rejalashtirish va o'ylashni talab qiladi, lekin bu oqim ishi, bu erda asosiy muammo shunchaki uni yaxshi va samarali bajarishdir.

Biz uchun bu unchalik oson emas, chunki turli xil tizim komponentlarini issiq va qulay monolitdan yovvoyi mikroservis o'rmonlari dunyosiga o'tkazish unchalik oson emas. Xizmat voqealarni tarqatishni boshlaganda, siz xotirani to'ldirish mantiqini qayta ko'rib chiqishingiz kerak, chunki ma'lumotlar endi boshqacha ko'rinadi. Bu erda siz endi ishlab chiquvchi sifatida emas, balki ma'lumotlar muhandisi sifatida ko'p va puxta o'ylashingiz kerak. Bir necha kunni daftar va qalam bilan yoki taxtada marker bilan o'tkazsangiz, bu oddiy voqea. Bu juda qiyin, men o'ylashni yoqtirmayman, men ham ishlab chiqarishni yaxshi ko'raman.

4. Ehtimol, eng muhim narsa ma'lumotdir. Bilim yetishmasa nima qilamiz? Stackoverflow deb kim aytdi? Bu odamni xonadan olib chiqing. Biz hujjatlarni, mavzu bo'yicha kitoblarni o'qiymiz, shuningdek, forumlar, uchrashuvlar va konferentsiyalar tashkil qiluvchi hamjamiyat mavjud. Hujjatlar juda yaxshi, lekin afsuski, u to'liq bo'lmasligi mumkin. Biz bir qator loyihalarda Cosmos DB dan foydalanamiz. Ushbu mahsulot uchun hujjatlarni o'qishda omad tilaymiz. Kitoblar yagona najotdir; xayriyatki, ular mavjud va topish mumkin, ular juda ko'p fundamental bilimlarni o'z ichiga oladi va siz ko'p va doimiy o'qishingiz kerak. Ammo muammo jamiyatda.

Endi bizning hududimizda kamida bitta tegishli konferentsiya yoki uchrashuvni topish qiyin. Yo'q, albatta, Data so'zi bilan uchrashish juda ko'p, lekin bu so'zning yonida odatda ML yoki AI kabi g'alati qisqartmalar mavjud. Demak, bu biz uchun emas, biz neyronlar bilan o'zimizni qanday bulg'ashimiz haqida emas, balki saqlash joylarini qanday qurish haqida gapiramiz. Bu hipsterlar hamma narsani egallab olishdi. Natijada biz jamiyatsiz qoldik. Aytgancha, agar siz ma'lumotlar muhandisi bo'lsangiz va yaxshi jamoalarni bilsangiz, sharhlarda yozing.

Xulosa va yig'ilish haqida e'lon

Biz nima bilan yakunlaymiz? Mening birinchi tajribam shuni ko'rsatadiki, ma'lumotlar muhandisi o'rnida his qilish har bir ishlab chiquvchi uchun foydali bo'ladi. Bu bizga narsalarga boshqacha qarashga imkon beradi va ishlab chiquvchilar o'z ma'lumotlariga qanday munosabatda bo'lishini ko'rganimizda, ko'zlarimiz qon ketishidan hayron bo'lmaymiz. Shunday qilib, agar sizning kompaniyangizda DE mavjud bo'lsa, shunchaki bu bolalar bilan gaplashing, siz ko'p yangi narsalarni o'rganasiz (o'zingiz haqingizda).

Va nihoyat, e'lon. Kun davomida mavzuimiz bo'yicha uchrashuvlar topish qiyin bo'lgani uchun biz o'zimiznikini qilishga qaror qildik. Nega biz yomonroqmiz? Yaxshiyamki, bizda ajoyib narsa bor Schvepsss va bizning do'stlarimiz Yangi kasblar laboratoriyasi, biz kabi, ma'lumotlar muhandislari adolatsiz ravishda e'tibordan mahrum bo'lgan deb hisoblaydilar.

Fursatdan foydalanib, men qiziqqan barchani 27.02.2020-yil XNUMX-fevral kuni Dodo Pizza ofisida boʻlib oʻtadigan “DE or DIE” nomli istiqbolli jamoaviy uchrashuvimizga kelishga taklif qilaman. Tafsilotlar Timepad.

Agar biror narsa sodir bo'lsa, men u erda bo'laman, siz menga ishlab chiquvchilar haqida qanchalik noto'g'ri ekanligimni yuzimga aytishingiz mumkin.

Manba: www.habr.com

a Izoh qo'shish