Dhiheenya kana akkaataa kutaaleen sirnoota keenyaa Buffer irratti mul'ata duubaan walqunnamsiisan qulqulleessuuf pirojektii xiqqaa jalqabneerra.Haala saffisaa tokko tokko: waan SQS (Amazon Simple Queue Service) jedhamu fayyadamna. Tarreewwan kun akka kutaa eegaa hojiif ta'u. Kutaan sirna keenyaa tokko ergaa tokko gadi dhiisa, kan biraan immoo booda fudhata. Akka nama waliin hojjettuuf yaadannoo dhiisuutti yaadi: "Hey, when you get a chance, process this data." Sirni yaadannoo ergu deebii argachuuf naannoo eeguu hin qabu.Pirojektiin keenya suphaa idilee raawwachuu ture: meeshaalee tarreewwan naannootti qorachuuf itti fayyadamnu haaromsuu fi qindeessuu isaanii qulqulleessuu.Garuu osoo tarreewwan qabatamaan fayyadamnu kaartaa gochaa turre, waan hin eegne arganne: adeemsa duubaa adda addaa torba (ykn hojiiwwan cron, kanneen hojiiwwan sagantaa qabaman kanneen ofumaan hojjetan) fi hojjettoota hojjetamaa turan callisee hanga waggaa shaniitti Hundi isaanii homaa faayidaa hin qabne.Kunoo maaliif akka barbaachisaa ta'e, akkamitti akka isaan arganne, fi waa'ee isaa maal akka hojjenne.Eeyyee, bu'uuraalee misoomaa hin barbaachifne fiiguun maallaqa kan gaafatu yoo ta'u, hojjettoota sana keessaa tokkoof, silaa maallaqa xiqqaadha scheme of our finances, but definitely pure waste for a process that does nothing.Haa ta'u malee, erga qulqullina kana keessa darbee booda, baasii faayinaansii dhugumatti kutaa rakkoo sanaa isa xiqqaadha jedheen falma.Yeroo hunda injinariin haaraan tokko garee sanatti makamee sirna keenya qoratu, adeemsa dhoksaa kana qunnamu "Hojjetaan kun maal hojjeta?" Hundi keenya achi turre — tarii waan barbaachisaa hojjechaa waan jiruuf tuquu sodaanne.Bu'uuraalee misoomaa "dagatamanii" illee darbee darbee xiyyeeffannoo barbaadu, hirkattummaa, sirreeffama walsimsiisaa yeroo wanti biraa jijjiiramu kun gareen keenya marsaa suphaa daandii koodii kaayyoo tokkollee hin tajaajille irratti akka dabarsu taasiseera it a temporary fix that became permanent?Namni isa uume waggoota dura dhaabbaticha dhiisee deeme, haala dubbiinis isaan bira hafe.Kun akkamitti illee ta'a?Quba akeekuun salphaadha, garuu dhugaan jiru kun sirna umurii dheeraa qabu kamiyyuu keessatti uumamaan ta'a.A feature gets deprecated, but the background job that supported it keeps running, and it keeps up a worker to handle a migration, and it never gets torn down.A scheduled task becomes redundant after an architectural change, but nobody thinks to check.Kana gochuuf ammoo hojii sagantaa qabame kan guyyaa dhalootaa guyyaa ammaa wajjin walsimuuf kuusdeetaa guutuu sakatta'u fi maamiltootaaf email dhuunfaa ta'e ergine During a refactor in 2020, we switched our transactional email tool but forgot hojjetaa—waggoota shan dabalataaf fiiguu itti fufe.Kanneen keessaa tokkollee kufaatii namoota dhuunfaa miti — isaanis kufaatii adeemsaati.Akkaataa itti hojjennu keessatti itti yaadanii qulqulleessuun yoo hin ijaaramne, intiroopiin ni mo'ata.Akkaataa arkiteekchariin keenya akka argannu nu gargaareAkkuma dhaabbilee hedduu, Buffer sochii microservices (mala beekamaa dhaabbileen koodii isaanii tajaajila xixiqqoo, of danda'e hedduutti qoodan) waggoota dura hammate.We split our monolith into separate services, each with its own kuusaa, ujummoo bobbaa, fi bu'uuraalee misoomaa Yeroo sanatti, hiika qaba ture: tokkoon tokkoon tajaajilaa ofuma isaatiin bobbaa'uu danda'a, gareewwan gidduutti daangaa ifa ta'e qaba.Garuu waggoota darban keessatti, baasii ol'aanaa kuusaawwan kudhan bulchuu garee guddina keenyaaf qabu caalaa akka ta'e arganne Kanaaf kuusaa tokkicha tajaajila hedduu qabutti walitti qabne, garuu tajaajiloonni ammallee akka daangaa loojikii ta'anii jiraatu turned out to be what made discovery possible.Addunyaa microservices keessatti, tokkoon tokkoon kuusaa odola mataa isaati.Hojjetaan dagatame tokko repo tokko keessa jiru tokko maqaa tarree barbaaduuf gonkumaa hin hubatamne, ilaalcha tokkummaa qabu kan waan eessatti fiigu hin jiru.With everything in one repository, we could finally see the full queue to its users oomishtoota waliin garuu fayyadamtoota hin qabne Hojjettoota tarree kana booda hin jirre wabii ta’an argachuu dandeenya turre.Walitti makamuun bu’uuraalee misoomaa zoombii argachuuf akka nu gargaaruuf hin qophaa’in ture — garuu sana godhediscovery almost inevitable.What we actually godAdeemsa yatiima ta’an erga adda baasnee booda maal akka goonu murteessuu qabna turre. Akkasitti itti dhiyaanne kunooti.Jalqaba tokkoon tokkoon isaanii hanga ka'umsa isaaniitti hordofne. Tokkoon tokkoon hojjetaa maaliif jalqaba irratti akka uumame hubachuuf seenaa git fi sanada durii keessa qonnee turre. Yeroo baayyee, kaayyoon jalqabaa ifa ture: godaansa deetaa yeroo tokkoo, amala aduun lixxu, yeroodhaaf furmaata faayidaa isaa caalu.Ergasii dhuguma akka hin fayyadamne mirkaneessine. Waan tokkollee osoo hin balleessin dura, adeemsi kun callisanii waan barbaachisaa nuti dhabne hojjechaa akka hin jirre mirkaneessuuf galmee itti daballe. Guyyoota muraasaaf hordofnee tasuma akka hin waamamne mirkaneessinee, dabalataan isaan buqqisne. Waan hunda al tokkotti hin haqne. Adeemsa tokko tokkoon buqqisne, miidhaa hin eegamne kamiyyuu ilaalaa turre. (Akka carraa ta'ee hin turre.)Dhuma irratti waan baranne galmeessine. Adeemsi tokkoon tokkoon isaa jalqaba irratti maal akka hojjetee fi maaliif akka haqame ilaalchisee yaadannoowwan galmee keessoo keenyaa irratti daballee turre, kanaaf injinaroonni gara fuula duraa wanti barbaachisaan tokko yoo bade jedhanii hin yaadne.Maaltu erga qulqullaa'ee booda jijjiirameHanga ammaatti dhiibbaa guutuu safaruu irratti jalqaba jirra, garuu hanga ammaatti waan argine kunooti.Inventaariin bu'uuraalee misoomaa keenya amma sirrii dha. Namni tokko "Hojjetoota akkamii fiignu?" dhugumatti gaaffii sana ofitti amanamummaadhaan deebisuu dandeenya.Onboarding conversations have gotten simpler, too. Injiinarroonni haaraan adeemsa dhoksaa irratti gufatanii haala dubbii (context) dhabaniiru jedhanii hin yaadne. Codebase waan nuti qabatamaan hojjennu calaqqisiisa malee waan waggaa shan dura hojjenne miti.Refactors akka arkiyooloojii fi ittisaatti ilaaliPirojektii kana irraa wanti guddaan fudhadhu: refactor guddaan hundi carraa arkiyooloojiiti.Yeroo sirna tokko keessa gad fageenyaan jirtu, dhuguma akkaataa ciccitoonni walitti hidhaman hubachuudhaan, waan ammallee barbaachisu gaaffii keessa galchuuf haala gaarii keessa jirta. Tarreen sun pirojektii durii tokko tokko irraa? Hojjetaa namni tokko godaansa deetaa yeroo tokkoof uume? Hojii sagantaa qabame kan amala dhageessanii hin beekne wabeeffatu? Isaan ammallee hojjechaa jiraachuu danda'u.Kunoo waan nuti adeemsa keenya fuulduratti ijaaraa jirru:Yeroo refactor kamiyyuu, gaafadhu: maaltu kan biraa sirna kana tuqee yeroo muraasa booda hin ilaalle?Yeroo amala tokko deprecating, trace it all the way to its background processes, not just the user-facing code.Yeroo namni tokko garee keessaa bahu, waan isaan itti gaafatamaa turan galmeessi kutaalee durii kuusdeetaa koodii keenyaa kanneen hanga ammaatti gara kuusaa tokkichaatti hin godaanne qaban. Yeroo walitti makamuu itti fufnu, hambaalee dhokataa kana caalaa akka argannu ofitti amanamummaa qabna. Amma garuu isaan qabachuu fi haaraan akka hin uumamne ittisuuf qophaa'eera.Yeroo koodii kee hundi bakka tokkotti jiraatu, bu'uuraaleen yatiima bakka itti dhokatan hin qaban.
Hojii Dagatame 7 Waggaa 5 Fiiguun Erga Argannee Waan Barre
By Social Media
·
·
6 min read
·
543 views
Read in:
aa
ace
af
ak
alz
am
ar
as
awa
ay
az
ba
ban
be
bew
+191 more
bg
bho
bik
bm
bn
brx
bs
bug
ca
ceb
cgg
ckb
co
crh
cs
cv
cy
da
de
din
doi
dv
dyu
dz
ee
el
en
eo
es
et
eu
fa
ff
fi
fj
fo
fr
fur
fy
ga
gd
gl
gom
gn
gu
ha
haw
he
hi
hil
hne
hmn
hr
hrx
ht
hu
hy
id
ig
ilo
is
it
ja
jam
jv
ka
kab
kbp
kg
kha
kk
kl
km
kn
ko
kri
ku
ktu
ky
la
lb
lg
li
lij
ln
lo
lmo
lt
ltg
lua
luo
lus
lv
mai
mak
mg
mi
min
mk
ml
mn
mni-mtei
mos
mr
ms
mt
my
nd
ne
nl
nn
no
nr
nso
nus
ny
oc
om
or
pa
pag
pam
pap
pl
ps
pt
pt-br
qu
rn
ro
ru
rw
sa
sah
sat
sc
scn
sg
si
sk
sl
sm
sn
so
sq
sr
ss
st
su
sus
sv
sw
szl
ta
tcy
te
tg
th
ti
tiv
tk
tl
tn
to
tpi
tr
trp
ts
tt
tum
ty
udm
ug
uk
ur
uz
ve
vec
vi
war
wo
xh
yi
yo
yua
yue
zap
zh
zh-hk
zh-tw
zu