
Alexander Baranov arbetar som R&D-direktör pÄ Veeam och lever mellan tvÄ lÀnder. Han tillbringar halva tiden i Prag och den andra halvan i Sankt Petersburg. I dessa stÀder finns Veeams största utvecklingskontor.
Ă r 2006 var det en startup av tvĂ„ entreprenörer frĂ„n Ryssland, relaterad till programvara för sĂ€kerhetskopiering av virtuella maskiner (dĂ€rifrĂ„n kommer ocksĂ„ namnet â V[ee][a]M, virtuell maskin). Idag Ă€r det ett gigantiskt företag med mer Ă€n fyratusen anstĂ€llda vĂ€rlden över.
Alexander berÀttade för oss hur det Àr att arbeta i ett sÄdant företag och hur svÄrt det Àr att komma in i det. Nedan följer hans monolog.
Traditionellt kommer vi att berÀtta om företagets betyg pÄ "Min krets": Veeam Software fick av sina anstÀllda . Det uppskattas för sin bra sociala paketering, en bekvÀm arbetsmiljö i teamet, intressanta uppgifter och för att företaget gör vÀrlden bÀttre.

Vilka produkter utvecklar Veeam
Produkter som sÀkerstÀller IT-infrastrukturens driftsÀkerhet. Lyckligtvis har hÄrdvaran blivit tillrÀckligt pÄlitlig över tid, och moln erbjuder driftsÀkerhet. Men mÀnskliga misstag kvarstÄr fortfarande.
Till exempel, ett klassiskt problem med inkompatibilitet av uppdateringar med organisationens infrastruktur. Administratören rullade ut en otestad uppdatering, eller sÄ skedde det automatiskt, och detta störde driften av företagets servrar. Ett annat exempel: nÄgon gjorde Àndringar i ett gemensamt projekt eller dokumentuppsÀttning, trodde att det var rimligt. Senare upptÀcktes ett problem och det krÀvdes att ÄterstÀlla tillstÄndet frÄn en vecka tidigare. Ibland Àr sÄdana förÀndringar inte ens relaterade till medvetna handlingar: nyligen har ransomware-virus blivit populÀra. En anvÀndare för in ett USB-minne med tveksamt innehÄll pÄ sin arbetsdator eller gÄr in pÄ en webbplats med katter, och som resultat infekteras datorerna i nÀtverket.
I situationer nÀr det redan har hÀnt nÄgot dÄligt ger vi möjlighet att rulla tillbaka Àndringar. Om förÀndringar bara planeras tillÄter vi att pÄverkan kontrolleras i en isolerad infrastruktur, Äterskapad frÄn en sÀkerhetskopiering av datacentret.
Backup fungerar ofta som en "stum vittne" vid revisioner inom organisationen. Publika företag mÄste uppfylla krav frÄn externa tillsynsmyndigheter (till exempel Sarbanes-Oxley Act), och det Àr inte utan anledning. à r 2008 skakades den globala ekonomin pÄ grund av att vissa aktörer pÄ finansmarknaden, grovt uttryckt, förfalskade sina resultat. Detta satte igÄng en snöbollseffekt som ledde till en ekonomisk nedgÄng. Sedan dess har tillsynsmyndigheter noga övervakat processerna i publika företag. Möjligheten att ÄterstÀlla IT-infrastrukturens, e-postsystemets och dokumenthanteringssystemets tillstÄnd under rapporteringsperioder Àr ett av kraven frÄn revisorer.
Microsoft, Amazon, Google och andra molnleverantörer har inbyggda lösningar som sÀkerstÀller sÀkerhetskopiering av resurser inom molnet. Men deras lösningar Àr "avskilda enheter". Problemet Àr att stora företag oftast har en hybrid IT-infrastruktur: en del finns i molnet, en del pÄ plats. I molnet finns vanligtvis webbprojekt och kundorienterade applikationer. Applikationer och servrar som lagrar konfidentiell information eller personuppgifter finns oftast pÄ plats.
Dessutom anvÀnder organisationer flera olika moln för att bygga ett hybridmoln, för att minimera risker. NÀr ett multinationellt företag bygger ett hybridmoln behöver det ett enhetligt och gemensamt system för hela infrastrukturen för hög tillgÀnglighet.

Hur svÄrt Àr det att utveckla sÄdana produkter?
Nya teknologier uppkommer stÀndigt, vilket krÀver studier, anpassning och erfarenhet. NÀr vi precis började och var en startup, fanns det fÄ som tog virtualisering pÄ allvar. Det fanns applikationer för sÀkerhetskopiering av fysiska datacenter. Virtualiserade datacenter betraktades som leksaker.
Vi började stödja backup med hÀnsyn till virtualisering frÄn början, nÀr tekniken endast anvÀndes av entusiaster. Sedan dess har det exploderat i anvÀndning och blivit en standard. Nu ser vi andra omrÄden som stÄr inför en liknande kvalitetsökning, och vi försöker hÀnga med. FörmÄgan att följa med vinden Àr djupt förankrad i företagets DNA.
Företaget har nu överlevt startup-tiden. För mÄnga större kunder Àr stabilitet och pÄlitlighet viktiga, och beslut om fel tolerans kan strÀcka sig över flera Är. Det pÄgÄr anpassning, produktkontroll och uppfyllande av mÄnga krav. Det uppstÄr en lustig situation - Ä ena sidan mÄste man sÀkerstÀlla pÄlitlighet och förtroende för produkterna, Ä den andra sidan mÄste man förbli modern.
Men det nya innebÀr alltid en viss nivÄ av okunskap om teknologier, marknad eller bÄda.
Till exempel, efter flera Ärs arbete insÄg vi att vi behövde anvÀnda de inbyggda funktionerna hos lagringssystem för att pÄskynda sÀkerhetskopiering. SÄ föddes en hel riktning för integration med hÄrdvaruproducenter. Idag Àr alla stora aktörer pÄ denna marknad - HP, NetApp, Dell EMC, Fujitsu och fler - vÄra partners i detta program.
Vi trodde ocksÄ att virtualisering skulle ersÀtta klassiska servrar. Men livet har visat att de sista 10 % av fysiska servrar fortfarande kvarstÄr, vars virtualisering antingen inte Àr möjlig eller inte meningsfull. Och de behöver ocksÄ sÀkerhetskopieras. SÄ Veeam Agent för Windows/Linux kom till.
Vid den tiden trodde vi att Unix skulle ta sin plats i museet och vÀgrade att stödja det. Men sÄ snart vi kom i kontakt med kunder med lÄng historia insÄg vi att Unix Àr mer levande Àn nÄgonsin. Och vi utvecklade ÀndÄ en lösning för det.
Det var samma historia med bandstationer. Vi tÀnkte: "Vem behöver dem i den moderna vÀrldens?" DÄ arbetade vi med sÄdana funktioner som granulÀr datarÀddning eller inkrementell sÀkerhetskopiering med syntetisk full kopia - sÄdant gÄr inte att göra med band, disk behövs. Sen visade det sig att bandstationer fungerar som ett av verktygen för att sÀkerstÀlla oförÀndrade sÀkerhetskopior, som behövs för lÄngsiktig lagring - för att om fem Är komma, ta ett band frÄn hyllan och göra en revision. Och storleken pÄ kunderna - vi började med smÄ företag - dÀr anvÀnds inga band. Men sedan vÀxte vi till kunder som sa att de inte skulle köpa produkten utan band.

Vilka teknologier anvÀnds i Veeam
För affÀrslogikrelaterade uppgifter anvÀnder vi .NET. Vi började med det och fortsÀtter att optimera. Just nu anvÀnder vi .NET Core i flera lösningar. NÀr startupen just hade bildats fanns det flera föresprÄkare för denna teknologi i teamet. Den Àr bra nÀr det kommer till att skriva affÀrslogik, utvecklingshastighet och anvÀndarvÀnlighet hos verktygen. DÄ var det inte den mest populÀra lösningen, men nu syns det att de föresprÄkarna hade rÀtt.
Samtidigt skriver vi för Unix, Linux, arbetar med hĂ„rdvara, vilket krĂ€ver att vi anvĂ€nder andra lösningar. De systemdelar som Ă€r kopplade till informationen om de data som vi lagrar i backup, algoritmer för databasering, algoritmer kopplade till hĂ„rdvaruarbete â allt detta Ă€r skrivet i C++.

Hur anstÀllda Àr fördelade över vÀrlden
Just nu arbetar omkring fyratusen personer i företaget. Cirka tusen av dem finns i Ryssland. Företaget har tvÄ stora grupper. Den första sysslar med utveckling och teknisk support för produkter. Den andra gör produkterna synliga för vÀrlden utanför: deras kompetens omfattar försÀljning och marknadsföring. FörhÄllandet mellan grupperna Àr ungefÀr trettio till sjuttio.
Vi har omkring trettio kontor runt om i vĂ€rlden. FörsĂ€ljningen Ă€r mer globalt fördelad, men Ă€ven utvecklingen ligger inte efter. Vissa produkter utvecklas samtidigt pĂ„ flera kontor â en del i St. Petersburg, en del i Prag. Vissa utvecklas endast pĂ„ ett stĂ€lle, till exempel den produkt som sĂ€kerstĂ€ller fysisk backup för Linux som utvecklas i Prag. Det finns en produkt som endast utvecklas i Kanada.
Vi gör distribuerad utveckling för att uppfylla kundernas krav. Stora kunder kÀnner sig tryggare nÀr utvecklingen befinner sig i samma region som produkten Àr verksam.
Vi har redan ett mycket stort kontor i Tjeckien, och nĂ€sta Ă„r planerar vi att öppna ett till i Prag â för 500 utvecklare och testare. De som flyttade till Tjeckiens huvudstad under "den första vĂ„gen" delar gĂ€rna sina erfarenheter och tips pĂ„ Habr med alla som Ă€r intresserade av att arbeta i Europa. I Ryssland ligger kontoret i Sankt Petersburg, en del interna projekt bedrivs i Izjevsk, och supporten sitter delvis i Moskva. Generellt sett hanteras teknisk support av flera hundra personer vĂ€rlden över. DĂ€r finns specialister med olika nivĂ„er av teknisk kunskap och specialisering. Den högsta nivĂ„n omfattar personer som kan förstĂ„ produkten pĂ„ kĂ€llkodsnivĂ„, och de arbetar pĂ„ samma kontor som utvecklarna.

Hur processerna Àr uppbyggda
UngefĂ€r en gĂ„ng per Ă„r har vi stora lanseringar med ny funktionalitet, och varannan till var tredje mĂ„nad slĂ€pper vi uppdateringar för felkorrigeringar och justeringar som svarar mot akuta marknadskrav eller plattformsförĂ€ndringar. Kraven tilldelas prioriteringar â frĂ„n mindre till kritiska, utan vilka lansering inte Ă€r möjlig. De senaste kallas "epics".
Det finns en klassisk triangel â kvalitet, resursantal, tid (i vardagligt tal, "snabbt, kvalitativt, billigt, vĂ€lj tvĂ„"). Vi kan inte göra dĂ„ligt jobb; kvaliteten mĂ„ste alltid vara hög. Resurserna Ă€r ocksĂ„ begrĂ€nsade, Ă€ven om vi alltid försöker vĂ€xa. Det finns mycket mer flexibilitet i tidshanteringen, men Ă€ven den kan ofta vara fast. SĂ„ det enda vi kan variera Ă€r mĂ€ngden funktionalitet i lanseringen.
Vi försöker vanligtvis att hÄlla epics till högst 30-40% av de förvÀntade tidsramarna för lanseringscykeln. Det kvarstÄende kan vi klippa, flytta, finjustera eller modifiera. Det Àr vÄrt utrymme för manövrar.
För varje krav i lanseringen skapas ett tillfÀlligt team. Det kan bestÄ av tre personer eller femtio, beroende pÄ komplexitet. Vi följer en agil utvecklingsmetodik, och en gÄng i veckan har vi genomgÄngar och diskussioner om utfört och kommande arbete för varje funktionalitet.
HĂ€lften av releasecykeln Ă€gnas Ă„t utveckling och hĂ€lften Ă„t att fĂ€rdigstĂ€lla produkten. Men vi har fĂ„tt ett uttryck â "den tekniska skulden för ett konkursdrabbat projekt Ă€r noll". Det Ă€r dĂ€rför viktigare att göra en produkt som fungerar och Ă€r eftertraktad Ă€n att stĂ€ndigt finslipa koden. Om produkten Ă€r populĂ€r, dĂ„ Ă€r det vĂ€rt att vidareutveckla den och anpassa den efter framtida förĂ€ndringar.

Hur Veeam anstÀller folk till utveckling
Urvalet Àr flerstegigt. Första nivÄn Àr ett samtal mellan kandidaten och rekryteraren om kandidatens önskemÄl. PÄ denna nivÄ försöker vi förstÄ om vi passar kandidaten. Det Àr viktigt för oss att vara intressanta som företag, eftersom det Àr en kostsam affÀr att introducera en person i projektet.
Om intresset finns, erbjuder vi en provuppgift pÄ andra nivÄn för att förstÄ hur relevant kandidatens erfarenhet Àr och vad de kan visa som specialister. Till exempel kan vi be att fÄ göra en filkompressor. Det Àr en standarduppgift som visar hur personen förhÄller sig till koden, vilken kultur och stil de följer och vilka lösningar de anvÀnder.
Genom provuppgiften Àr det vanligtvis tydligt vad man har att göra med. En person som just har lÀrt sig grunderna och skriver sitt första brev skiljer sig markant frÄn en person som skriver brev regelbundet.
DÀrefter genomför vi intervjun. Oftast leds denna av tre teamledare för att allt ska bli sÄ objektivt som möjligt. Dessutom hjÀlper det till att fÄ tekniskt kompatibla mÀnniskor som har ungefÀr samma metoder och tillvÀgagÄngssÀtt inom utveckling, Àven om de i slutÀndan kommer att arbeta i olika team.
Under en vecka genomför vi flera intervjuer för den lediga tjÀnsten och fattar beslut om med vem vi ska fortsÀtta arbeta.
Ofta kommer personer till oss och sĂ€ger att de söker jobb eftersom de inte har nĂ„gonstans att gĂ„ pĂ„ sin nuvarande arbetsplats â avancemang kan bara ske i samband med chefen som gĂ„r i pension. Vi har en nĂ„got annorlunda dynamik. För tolv Ă„r sedan var Veeam en startup med tio anstĂ€llda. Nu Ă€r det ett företag med flera tusen anstĂ€llda.
MĂ€nniskor kommer hit som till en stormig flod. Nya riktningar dyker stĂ€ndigt upp, och teamledare blir gĂ„rdagens vanliga utvecklare. MĂ€nniskor vĂ€xer tekniskt och administrativt. Om du arbetar med att utveckla en liten funktion men vill ta den vidare, sĂ„ Ă€r halva jobbet redan gjort. Stödet finns pĂ„ alla nivĂ„er, frĂ„n teamledaren till företagsĂ€garna. Vet du inte hur du ska hantera nĂ„got administrativt â det finns kurser, interna trĂ€nare och erfarna kollegor. Saknar du erfarenhet inom utveckling â det finns projekt som Veeam Academy. SĂ„ vi Ă€r öppna för alla, bĂ„de för proffs och nybörjare.
Projektet Veeam Academy â en gratis kvĂ€llsintensiv kurs i C# för nybörjande programmerare med möjlighet till anstĂ€llning pĂ„ Veeam Software för de bĂ€sta eleverna. Projektets mĂ„l Ă€r att minska gapet mellan kunskapsinnehĂ„llet och praktiska fĂ€rdigheter hos en genomsnittlig universitetsexamen och det kunskapsinnehĂ„ll som behövs för att intressera en bra arbetsgivare. Under tre mĂ„nader studerar deltagarna OOP-principerna i praktiken, dyker ner i C#-specifikationerna och studerar .Net-grunderna. Förutom förelĂ€sningar, tester, laborationer och personliga projekt arbetar deltagarna med ett gemensamt projekt enligt alla regler för riktiga företag. Temat för projektet Ă€r okĂ€nt i förvĂ€g â det vĂ€ljs tillsammans med alla deltagare de första dagarna efter kursens start. PĂ„ den senaste kursen blev det Virtuella banken.
Just nu Àr antagningen öppen för .
KĂ€lla: habr.com
