„Forðastu ósjálfráða vinnu“ og önnur ráð frá Sr hugbúnaðarverkfræðingi í Adtech

Í þessari þriðju útgáfu af Jampper Stories gefur Claudio Freire, okkar snjalla yfirtæku hugbúnaðarverkfræðing, okkur innsýn í „tæknina“ á bakvið „adtech“ og segir okkur svolítið um tæknileg viðfangsefni dagskrárgerð í rauntíma, ást á skyndiminni, forritunarmálin sem við notum, tækin sem við búum til…. Við skulum kafa rétt inn!

Segðu okkur aðeins frá fyrri reynslu þinni áður en þú gengur til Jampp

Í upphafi tímans (fyrir mig) var ég að vinna hjá fyrirtæki sem bauð ríkisstjórninni bókhaldsþjónustu. Fyrir þá sem ekki hafa haft ánægjuna (?) Er stigi skriffinnsku og tregðu sem þú getur fundið á þessum stöðum aðeins samsvarað því hversu mikið stjórnmálin taka þátt í nákvæmlega hverju þrepi í hverju verkefni, stórt eða lítið. Ég fór frá því fyrir Livra og nokkrum árum seinna gekk ég til liðs við Jampp.

Erfitt er að aðskilja tíma mína hjá Livra frá tíma mínum á Jampp vegna þess að andrúmsloftið og menningin var mjög svipuð - - sem við the vegur er engin tilviljun, bæði fyrirtækin voru stofnuð af sama fólki.

Hérna er Claudio á Livra Games 2008, hann lifði af og dafnaði ...

Livra var raunveruleg námsupplifun frá fyrsta degi.

Ég myndi fá verkefni á sviði sem ég vissi lítið um, nota tæki sem ég hafði ekki notað áður og svona lærði ég Python næstum frá grunni (ég var búinn að nota tungumálið svolítið við leikjagerð, en ekkert alvarlegt fyrr en þá ).

Mér fannst þetta frábært og eftir að hafa eytt tíma í launaskrá ríkisstjórnarinnar gat ég vel þegið hversu heppinn ég var.

Svo segðu okkur frá núverandi hlutverki þínu ... Hvað er dæmigerður dagur fyrir þig?

Ég er hluti af Core liðinu hér á Jampp þar sem við þróum tilboðsgjafa- og skýrsluhugbúnað. En það var ekki alltaf Core lið. Í byrjun var ekki einu sinni tilboðsgjafi.

Þegar ég byrjaði þurfti ég að rannsaka tilboð í rauntíma (sem ég vissi næstum ekkert) og jafnvel Adtech viðskipti. Þetta er dæmigerður dagur í þróun hugbúnaðar hér á Jampp: að læra nýja hluti . Til að vera heiðarlegur ætti það að vera svona í öllum hugbúnaðarþróunarteymum, en það gerist ekki alltaf. Auðvitað skiptum við ekki um tækni á hverjum degi, en það eru nægar breytingar til að halda hlutunum áhugaverðum, og það er ekki einu sinni með framleiðslustuðning (eða „að slökkva eld, til að nota rétta tæknilega hugtakið). Trúðu mér, með hundruð netþjóna sem þjóna hundruðum þúsunda beiðna á sekúndu fer eitthvað úrskeiðis allan tímann, svo við erum aldrei aðgerðalaus.

Hvaða áskoranir stendur frammi fyrir í þessu hlutverki?

Stuðningur við framleiðslu. Þvílík ferð! Þegar tilboðsgjafi var í bleyjum áttum við rofa til að slökkva á honum í klípu, ætti einhver reiknirit að fara á hausinn. Nú á dögum væri óhugsandi að snúa þeim rofi við. Það myndi jafngilda því að leggja niður kauphöllina. Stundum held ég að stærsta áskorunin sé að stjórna þeirri geðveiku strangu ósaglegu kröfu: að vera alltaf í gangi. „Constant Uptime“ þýðir að kerfin okkar eyða (og helst einnig að græða) peninga 24/7/365 daga á ári.

Það þýðir líka að við þurfum að gera grunnvirkin skilvirkari án þess að trufla daglegan rekstur. Yfirleitt eru erfiðustu spurningarnar sem svarað er við hönnun á nýjum eiginleikum eða skipulagningu kerfisskoðunar: „Hvernig flytjum við gömlu gögnin?“ og „Hvernig kveikjum við á þessum eiginleika án þess að hiksta?“. Í Kjarateyminu er hugbúnaðurinn sem við framleiðum kjarninn í viðskiptunum og stöðvun fyrirtækisins í viku eða tvær á meðan þú „flytur efni“ er í raun ekki valkostur, svo þú verður að verða skapandi.

Svo fyrir utan að vera „skapandi“, hvernig vinnur þú að þessum áskorunum?

Það er aldrei neitt silfurskot. Við notum sjálfvirkni og A / B prófanir mikið, við dreifum líka öllum nýjum hugbúnaði í því sem kallast „blágrænn“ dreifing (eða Canary Deployment). Það er í grundvallaratriðum þegar þú prófar nýjan hugbúnað í litlu broti af raunverulegri umferð þar sem hermt umhverfi mun ekki endilega ná öllum málum.

Eftirlit er annað mjög áríðandi tæki til ráðstöfunar þegar eitthvað nýtt er prófað. En ekki er hægt að leysa allt með þessum hætti: þegar við erum með stærri verkefni sem ekki er hægt að prófa með þeim skilmálum… svo verðum við að hugsa út úr kassanum .

Að verða aðeins tæknilegri, hver er besta leiðin til að stjórna miklu magni upplýsinga sem fara inn á netþjónana?

Við erum með hundruð netþjóna sem fá meira en hálfa milljón beiðnir á sekúndu allan tímann - það er víst að gefa öllum höfuðverk ef þú dvelur við það - svo TL; DR útgáfan er sú að við notum gríðarlegt magn af skyndiminni til að gera allt svona hratt.

  • Við skyndiminni auglýsingarnar sem við birtum með CDN svo þær hleðst hratt á tækin sem það þarf að sýna. Ef þú ert í Berlín að horfa á Jampp auglýsingu, muntu líklega hlaða henni af einum af evrópskum brúnstöðum okkar.
  • Við skyndiminni hvernig herferðir eru settar upp þannig að við þurfum ekki að hlaða það úr gagnagrunninum í hvert skipti sem tilboðsbeiðni berst líka.
  • Við skyndum jafnvel skyndiminnið sjálft vegna þess að það er mun hægara að hlaða eitthvað af ytri netþjóni sem fær yfir hálfa milljón beiðnir á sekúndu en að hlaða það af staðbundnu eintaki.

Svo við erum með frekar flókna skyndiminni arkitektúr (við höfum langvarandi innlegg um það í tækniblogginu okkar).

Við notum Amazon AWS fyrir flesta skýjainnviði okkar, memcache til skyndiminnis en einnig nokkrar heimagerðar skyndiminningar. Allur bjóðandinn er skrifaður í Python, svo það er auðvelt að vinna með það, og við notum síðan Cython til að flytja Python yfir í C ​​svo það gangi eins hratt og mögulegt er.

Við notum Tornado sem veframma okkar og við birtum mikið af því sem við gerum sem opnar heimildir: Chorde og shared buffers eru nokkur dæmi um það. Við notum Postgres mikið í ýmsum tilgangi, aðallega til greiningar. Allt sem kerfið okkar gerir (uppboð, tilboð, birtingar, smelli) er eytt af öllum persónulegum upplýsingum, safnað saman í nafnlausar samanlagðar línur og gefnar inn í Postgres sem við getum gert fullt af skýrslum.

Lið okkar notar einnig EMR (hadoop, býflugnabú, presto, neista) og nokkur „big data“ verkfæri sem við gerðum sjálf.

Við miðlum öllum íhlutum annaðhvort í gegnum ekki viðvarandi krá-undir-strætó sem er byggður ofan á zmq, eða viðvarandi læki með Amazon Kinesis. Og auðvitað notum við og misnotum S3 mikið, það er í raun ósigrandi fyrir geymslu. (Plús að það er ódýr og skilvirk, ef þú getur hannað umsókn þína í kringum styrkleika hennar).

Hvernig er tækni okkar frábrugðin tækni hjá öðrum fyrirtækjum?

Ég held að það sem gerir innviði okkar einstaka sé að við sjáum um hagkvæmni mikið. Mörg fyrirtæki þarna úti munu nota hvaða fyrirfram smíðaða tól sem þau geta náð í sínar hendur (og sem verkfræðingarnir vita) og reyna að hamra hvern einasta nagla með það og henda peningum í vandamálið þegar hlutirnir verða erfiður. Við reynum að forðast það‍.

Við höfum smíðað töluvert af sérsniðnum verkfærum (jafnvel þegar það er þegar eitthvað í opna vistkerfinu sem gæti gert bragðið). Gott dæmi er hvernig við gerum samanlagningu til skýrslugerðar. Í stað þess að nota eitt af stóru gagnatækjunum og eyða, í óeiginlegri merkingu, vörubíl af peningum í það, stjórnum við því verkefni með aðeins smá snjallleika og sérhannaðri arkitektúr sem ýtir samanlagningarverkefninu eins nálægt bjóðendum og mögulegt er og lækkar kostnað í lágmarki. Það kerfi er að safna saman meira en hálfri milljón beiðnum á sekúndu með aðeins 2 (frekar litlum) vélum og örlítið smá hjálp frá öllum kerfunum sem ýta upplýsingum inn í það. Og í næstum rauntíma til að ræsa!

Hvaða flott verkefni hefur þú verið að vinna í (og ert frelsi til að ræða )

Persónulega held ég að flottustu verkefnin hafi tilhneigingu til að vera lítil, mikils virði „örverkefni“. Jafnvel þó ég neiti því þangað til ég deyi andardráttinn, erum við í hjörtum okkar sogandi að glansandi hlutum. Að minnsta kosti þar til þeir valda vonbrigðum, sem þeir gera venjulega (sjá, ég er nú þegar að neita því). Fyrir mig voru töluvert af þessum litlu stjörnu örverkefnum í innra eftirlitsverkfærunum okkar. Einn sem er glansandi og nokkuð skemmtilegur að horfa á (og mjög gagnlegur) sýnir alla netþjóna og frávikin sem gerast í þeim í rauntíma og á myndrænan, leiðandi hátt sem þú getur athugað í fljótu bragði.

Við erum líka að vinna að því sem veitir sýnileika á því sem er að gerast í þeim straumum umferðar en er um leið dáleiðandi flott ... en innra eftirlitstæki eru ekki flott fyrir neina nema okkur, svo gleymdu öllu sem ég sagði.

Að fara í nokkur af BIG verkefnum ... við erum að endurhanna fullt af kerfum, útrýma notagildi, sveigjanleika og viðhalds hindranir. Það hefur meira að segja verið beðið um gagnrýni á löngum staðfestu „visku“ sem féll úr samstillingu við raunveruleikann, olli endurskrifum og endurhönnun byggðum á nýrri innsýn. Verkefnið hefur mikla möguleika og það gerir það mjög flott. Það er líka stórkostlega flókið, og það gerir það ... Jæja, líka mjög flott Lang saga stutt, þegar það er búið, munum við hafa opnað hliðin fyrir endurbætur sem voru mjög erfiðar áður svo fylgstu með tækniblogginu okkar, ég ' m nokkuð viss um að það verður mörg bloggfærsla þegar hún er tilbúin.

Þú hefur augljóslega brennandi áhuga á verkinu sem þú vinnur, er eitthvað annað sem gerði Jampp rétt fyrir þig?

Ég sé Jampp sem lausn á hámörkun hamingjunnar vegna þess að það er krefjandi og áhugavert, en er samt afslappað og óformlegt. Við eyðum flestum lífi okkar í vinnunni, þannig að ef þú getur ekki umgengist þig vel á skrifstofunni og verið greindur og faglegur áskorun á sama tíma, þá eru engir möguleikar á vexti og hamingju. Mér líkar ekki að leiðast, ekki pínulítill, þess vegna er Jampp fullkomin passa fyrir mig.

Jampp Camp 2017

Þú hefur verið í farsímanum síðastliðin 3-4 ár ... hvað finnst þér vera mest spennandi / krefjandi við það?

Sennilega er það sem slær þig mest er umfang þess. Þú tekur ekki eftir því í fyrsta lagi í tækni, því allt sem þú sérð eru beiðnir um að vinna úr þeim. En nú á dögum eru allir með farsíma og á mörgum mörkuðum hafa snjallsímar orðið nýju tölvurnar. Mobile er að sigra heiminn og þú getur fundið að umfangi þess sem við gerum og magn upplýsinganna sem flæðir: við erum að vinna úr + 500K uppboðum á sekúndu.

Ertu með uppáhalds hvatningar- / frumkvöðlastilboð? Eða er eitthvað sem þú segir alltaf?

Ég set ekki mikinn hlut í gæsalappir og hvatningarsetningar. Mér finnst kornungur þeirra vera lokun. Sérhver tilraun til grunnt hvatningarræðu er mér hvatning, hún kallar fram „augnablik“. En, kannski vegna þess að það ómaði það sem ég var að ganga í gegnum á þeim tíma, eða kannski vegna þess að ég fann merkingu í því (líklega ekki sömu merkingu sem höfundurinn ætlaði að hafa, en hverjum er sama) mér finnst eftirfarandi tilvitnun veita nákvæma lýsingu af einhverju sem ég tel raunverulega mikilvægt í þróunarstarfi:

„Forðastu ósjálfráða vinnu“ - Minnen Ratta

Ósiðfræði er bæði mælikvarði á óreiðu og upplýsingar. Mér skilst að „ósjálfráttdrifin vinna“ sé vinna sem fylgir leið minnstu mótspyrnu, sem hreyfist af handahófi án skýrs markmiðs, bara af því að það er auðvelt að fara í þá átt. Hugbúnaðarþróun er u.þ.b. 80% hugsun, 10% skrif og 10% endurskrifun, með klípu af innblæstri. Enginn ætti nokkru sinni að byrja að skrifa kóða án þess að skilgreina tilætluð lokaniðurstaða.

  • Áhugamál: Að kenna dóttur minni nýtt efni (það er alltaf sprengja), og spila á píanó.
  • Handahófskennd staðreynd: Ég les reglulega eðlisfræði og astrophysics ritgerðir.
  • Uppáhalds Jampp stuttermabolur: Jamppowski stuttermabolur.
  • Ráð fyrir einhvern sem sækir á Jampp: Búast við því að verða mótmælt.
  • Lýstu Jampp með 3 orðum: 2 eru nóg: „Skemmtilegt efni“.

Síðasta spurning ... Hvernig myndirðu klára þessa setningu: „Að vinna fyrir tæknifyrirtæki er eins og…“

Að laga vél locomotive, skipta um hjól bílsins, mála alla bíla í öðrum lit og festa nýja bíla (sem þú byggir auðvitað í húsinu), allt á meðan lestin er að flytja, vegna þess að ekki er hægt að stöðva það. Í 350kph, vegna þess að það er TGV. Og aðeins með annarri hendi, vegna þess að þú þarft að hafa hina til að halda í kaffikönnunni

Um sögur Jampper

Lið okkar er mesta eign okkar og við erum ánægð að deila nokkrum sögum þeirra. Ef þú vilt læra meira um hvernig það er að vinna hjá Jampp skaltu fylgja okkur á Instagram á @gojampp eða heimsækja jampp.com/jobs til að finna réttu tækifærið og sjáðu sjálfur yourself