Zaposlitev: Anna Vorobyova, vodilni razvijalec navideznega stroja pri vzporednicah

Kazalo:

Anonim

Dekleta uspevajo v tipičnih moških poklicih in to dejstvo se že dolgo ni več dojemalo kot družbeni pojav. Današnja junakinja Anna Vorobyeva lahko vsakemu strokovnjaku za IT da 100 točk naprej. Je vodilna razvijalka ene od ključnih komponent virtualnih strojev na Parallelsu. Čas je, da ugotovite, kako deluje na področju sistemskega programiranja in ali je po njenem mnenju v programskem inženirskem timu prostor za dekleta.

Kaj delate na delovnem mestu?

V Parallelsu sem vodilni razvojni tim. Temeljna ekipa se ukvarja z ustvarjanjem in izboljševanjem tako imenovanega virtualnega nadzornega stroja - osrednje komponente virtualizacije v celotni liniji izdelkov Parallels hypervisor. V monitorju so ustvarjeni iluzorni procesor, pomnilnik in vse naprave.

Strinjam se, to je nekoliko nestandarden poklic za dekle. V svoji IT karieri se moram zahvaliti svojim staršem - zelo so skrbeli za prihodnost svojih popolnoma humanitarnih sinov. Toda že na inštitutu (pri MESI) sem se soočil z resničnimi IT fanatiki, ki so bili pripravljeni govoriti o oblikovanju operacijskih sistemov cel dan. Dva izmed najbolj naprednih fantov sta odšla v Parallels, ko je bila zelo majhno podjetje. Bili so tako fascinantni glede ravni nalog in vzdušja v ekipi, da so njihove zgodbe na koncu pomagale pri izbiri delovnega mesta.

Neprekinjen pogon je pri delu komajda mogoč. Delo inženirja programske opreme ni izjema. Obstajajo ustvarjalni koraki in obdobja ustvarjalne apatije. Toda na splošno virtualizacija in računalništvo v oblaku ne postanejo dolgčas. V tej panogi se nekaj nenehno dogaja, zato se morate soočiti s temi novimi izzivi. Poleg tega nenehno izboljšujemo našo kodo, naše tehnologije in ves čas nekaj naučimo. Še posebej veliko potovanj na mednarodne konference.

Naš monitor navideznih strojev je skupen celotni vrstici izdelkov za virtualizacijo hipervizorja - Parallels Desktop, Parallels Workstation, Parallels Server. V bistvu je monitor takšen mikro operacijski sistem, ki živi po lastnih pravilih, z lastnimi porazdeljenimi pomnilniki, odloženimi klici, časovniki in sinhronizacijo. Hkrati pa je monitor povsem neviden za gostiteljski operacijski sistem - aplikacija dostopa do gonilnika, gonilnik začne delovati in - in tu je čarobna! - smo že v monitorju, ne v operacijskem sistemu. Pravzaprav je to čarobno kontekstno stikalo z vsemi svojimi univerzalnostmi na golem monterju razlog za moj profesionalni ponos. On, dobro, in še vedno močno izboljšala gostoto virtualnih strojev na enoto opreme v strežniškem izdelku Parallels Server Bare Metal. Tam smo s spominom na to, da je lepo videti.

Pri iskanju najboljših rešitev za delovanje Virtual Machine Monitorja, moram kopati globoko v jedro operacijskih sistemov. Več o tem razvijalci OS, verjetno bi bili zelo presenečeni. Težko je verjeti, toda tudi na Appleovih sistemih se občasno pojavijo napake. Ko smo prvič predstavili naš znani Parallels Desktop (PD) med 64-bitnimi Mac aplikacijami, je gostiteljski Mac OS sam postal popolnoma kaotično preobremenjen ali obešen na smrt. Zdelo se mi je, da sem iskal napako, verjetno zaradi kombinacije moje odgovornosti in celotne kompleksnosti naloge. Za takšne vrste padcev ni diagnostike, zato uporabljam standardne 64-bitne težave.

Po dolgotrajnih raziskavah se je izkazalo, da lahko MacOS za 64-bitne procese uporabi napačne podatke in se opira na shranjeno kopijo. Operacijski sistem pri prehodu na 64-bitni proces ni popolnoma preobremenil vseh registrov procesorja (za tiste, ki so v temi, govorimo o GS in FS). Procesor je delal na predpomnjene vrednosti. In naš virtualni strojni monitor je med delovanjem obnovil vse registre, vključno z napačnimi (samo ob tem čarobnem preklapljanju). Podatki v teh registrih so bili tako kritični za operacijski sistem, da ni mogel niti narisati sporočila o kritični napaki jedra (panika jedra), ampak je rekurzivno klical obdelovalca. PD je podatke posodobil, pri čemer se je zanašal na dejstvo, da so pravilni. Na svoj račun, Apple je treba omeniti, da se takoj odzovejo na hrošče, in v Lionu, v manj kot enem letu, so odpravili težavo.

Kako izgleda vaše delovno mesto?

Moje delovno mesto lahko opišemo kot harmonično kombinacijo veliko "železa" in pakete zelenega čaja. Ljubim čaj, impresivna flota vozil pa je ostra proizvodna potreba. Virtualizacija iz Parallelsa je izdelek, ki temelji na več platformah, zato je potrebno izdelati in testirati prototipe novih različic na najbolj pestri strojni opremi.

Kakšno strojno opremo uporabljate?

Na veliki mizi (in tudi pod njo) v živo:

Dve namizni računalniki - ena na procesorju Intel, druga pa na procesorju AMD.

Strežnik MacPro.

Prenosnik macbook.

Na strojni opremi je nameščen celoten živalski vrt - MacOS X, Windows z različnimi številkami in različnimi različicami ter vse vrste različic Linuxa.

Bil sem brezbrižen do strojne opreme na splošno in do pripomočkov, zlasti do mojega zadnjega obiska na WWDC (Apple Developer Conference), kjer sem se brezupno navdušil nad iPhoneom. Mimogrede, moja kopija naprave je trofeja. Dobila sem jo v profesionalni stavi s soustanoviteljem Parallelsa in zdaj s predsednikom upravnega odbora Sergeyem Belousovom. Nekoč smo sedeli v restavraciji. In ne morejo se spomniti imena ene od nedavno uvedenih Apple tehnologij. Sergej googled, grunted in rekel: "Torej, kdo se prvi spominja, da in iPhone." Vsak je imel tri poskuse. Najprej sem se spomnil. In tehnologija se je imenovala FaceTime.

Katero programsko opremo uporabljate?

Na lokalni "strojni opremi" je nameščenih 8-10 kosov različnih operacijskih sistemov. Slike OS - nešteto število. In mimogrede, niso nič slabše. Večina moje programske opreme je specifična - prevajalniki, razhroščevalniki, različna integrirana razvojna okolja (IDE), disassemblerji, profilerji, DebugKit. Od najljubših sredstev je dodeliti disasembler IDA. Parallels ima tudi široko paleto razvojnih orodij. Zbiramo odlagališča za goste in spremljamo, hranimo števce uspešnosti, dnevnike, zgodovino, zdaj zaključujemo naš iskalnik napak. Sistemsko programiranje zahteva sistematičen pristop k iskanju napak.

Ali obstaja konfiguracija sanj?

Bojim se, da bom izrekel svoje sanje o strojni opremi - tako hitro se uresničijo:) Skupna želja po strojni opremi je bolj logična CPU (od 16), več pomnilnika (od 8 GB). Najbolj kritično pa je kakovost procesorskih funkcij - svež procesor, novejše »igrače« - EPT, Neomejen, VT-D, TXT. No, pametni trdi disk. Vse ostalo v večini sodobnih "žlez" me na splošno zadovolji.

Zaposlitev: Anna Vorobyova, vodilni razvijalec navideznega stroja pri vzporednicah