Linux E X P R E S

Facebook

Sun Microsystems: Testování - atraktivní kariéra nebo nekvalifikovaná práce?

sun_03_2008.jpg

Dnes budu hovořit o tom, co děláme v týmu Solaris System Test. Jak testujeme Solaris? Do jaké míry je testování automatizováno? S jakými technologiemi pracujeme? Které programovací jazyky používáme k automatizaci? Kdo u nás může najít uplatnění? Jak často hrajeme ping-pong a hry na PlayStation? Na tyto otázky se pokusím odpovědět.


Jak asi většina z vás ví, Solaris je operační systém, který vyvíjí společnost Sun Microsystems. Solaris se používá na hardwaru Sunu i na běžných PC. Zdrojové kódy Solarisu byly otevřeny pod licencí CDDL na OpenSolaris.org a Sun do vývoje Solarisu intenzívně investuje.

V současné době testujeme dvě verze Solarisu - Solaris 10 a Nevadu, což je kódové označení pro budoucí verzi Solarisu. Solaris 10 je stabilní verze, pro kterou se vydávají několikrát ročně aktualizace, které obsahují opravy chyb (ty se vydávají i průběžně v podobě jednotlivých patchů, zejména pro kritické chyby a bezpečnostní problémy), podporu pro nové hardwarové platformy a případně novou funkcionalitu, kterou se Sun rozhodnul backportovat z Nevady. Testování a kvalita Solarisu 10 je extrémně důležitá - našimi zákazníky jsou významní klienti jako banky, telekomunikační operátoři a mnohé internetové firmy, které jsou na jeho stabilitě závislí.

Nové technologie: software...

V Nevadě probíhá intenzívní vývoj nové funkcionality a technologií. A my jsme první, kteří se s těmito novými technologiemi dostanou do styku - dříve než se vůbec dostanou na trh a k zákazníkům. Takovými technologiemi může být nový souborový systém ZFS, nový diagnostický nástroj DTrace, atd. V současné době to jsou třeba věci kolem hardwarové virtualizace a paravirtualizace.

... hardware ...

Sun vyvíjí a prodává hardware, operační systém a software. Součinnost Solarisu se stávajícími i nově vyvíjenými produkty je, pochopitelně, nezbytná a správnost této součinnosti velmi důležitá. Mezi podporovaný hardware patří i takový, který nevyrábí přímo Sun, Solaris může běžet třeba i na vašem laptopu.

Proto v našich laboratořích najdete širokou škálu zajímavého hardwaru v různých konfiguracích: Do našeho portfolia patří většina hardwaru, který Sun vyrábí a komponenty nezbytné k testování Solarisu - pracovní stanice, škálovatelné servery s desítkami procesorů, disková pole, optické switche, terminálové servery atd.

... a hardwarové prototypy

I v oblasti hardwaru se dostáváme do styku s novými technologiemi ještě dříve, než se dostanou na trh, a to v podobě prototypů. Může se jednat třeba o nové Sun Blade chassis, nové servery, pracovní stanice, nebo serverové moduly. Testování prototypů je samostatná disciplína, která má svá specifika. Nedávno jsme pracovali na nové generaci CoolThreads server modulů, nyní pracujeme na ... to bohužel nemůžu prozradit ;-)

Ale pokud vás zajímá, co je pod hardwarovou pokličkou nových serverů a baví vás si hrát s hardwarem, pojďte k nám pracovat. A pokud vás to nebaví - nevadí, přímo s hardwarem u mě pracuje jen čtvrtina týmu.

Jak se testuje?

Noví členové týmu, zejména pokud prozatím nemají zkušenosti s testováním, bývají většinou udiveni. Testování máme automatizováno softwarem, který jsme si sami vyvinuli pod jménem Electron. Když dostaneme nový build Solarisu na testování, vložíme ho do Electronu společně se seznamem testů a konfigurací na otestování. Electron si daný build sám nainstaluje a nakonfiguruje na tři stovky serverů rozmístěných v laboratořích v USA a v Praze. Poté sám pustí testy, posbírá výsledky a předá je do analytického modulu. Ten vytřídí pouze ty problémy, které se ještě v minulosti nevyskytly a musí je řešit softwarový engineer.

A co tedy dělá softwarový engineer?

Ten stráví 40-50% času analýzou problémů. Analýza je založena na metodologii Kepner-Tregoe ATS, teprve v druhé fázi se člověk začne zabývat technickými detaily. Protože opakované chyby se vyfiltrují automaticky, neřeší stále stejné problémy. Na své si přijde každý. Pokud to engineer umí, může debuggerem analyzovat 'core dumps'. A pokud to neumí, nevadí, může to přenechat zkušenějším. Anebo si může zajít na školení a rozšířit svoje schopnosti ;-)

Dále má na starosti integraci nových testů a projekty. Nové testy můžou přijít z Quality Engineeringu nebo z Developmentu a my je musíme zaintegrovat do našeho systému. To vyžaduje znalost test frameworku a schopnost skriptování.

Projekty se týkají buď testů, které musíme vyrobit a zautomatizovat sami, nebo úpravy či zlepšení našich procesů nebo samotného Electronu. Údržba a vývoj automatizace je součástí pracovní náplně a používáme k nim hlavně shell scripting, Expect/Tcl, programování v Perlu, databáze a okrajově Javu.

Co Sun nabízí a jak to je s tím ping-pongem?

Pracuji v Sunu jako manažer a v tuto chvíli rozšiřuji svůj tým Solaris System Test. Co by vám práce v tomto týmu přinesla?

Nejrychlejší je učit se v praxi a já vám v týmu Solaris System Test poskytnu příležitost poznat softwarový cyklus velkého projektu zevnitř a firmu s mluvenou angličtinou. Stanete se expertem na administraci Solarisu. Nabízím možnost pracovat s nejnovějšími technologiemi v Unixovém prostředí a to ještě dříve, než se tyto technologie dostanou na trh. V neposlední řadě nabízím vzdělávání, kariérní růst a kompenzaci, které jsou ekvivalentní programátorským pozicím - jak jste si mohli přečíst v mém předchozím článku Jaké to je pracovat pro Sun? Pozice v týmu Solaris System Test je dobrým kariérním krokem pro systémové administrátory.

Nabízím neformální prostředí, kde oficiální úbor znamená tričko a džíny. A když si chcete dát pauzu, můžete si zahrát fotbálek, odreagovat se u PlayStation, Nintendo Wii, učit se žonglovat a nebo se mnou probrat další projekt při ping-pongu. Upozorňuji, že pracovat se taky musí.

Co očekávám od kandidátů?

Požaduji znalosti Linuxové či Unixové administrace, analytické a algoritmické myšleni a aktivní zkušenost se skriptováním či programováním, která je nezbytná k automatizaci naší práce. Skriptování v shellu je minimum, pokud ovšem používáte pouze jednořádkové skripty, automatizujete jenom své zálohy, nebo znáte Unix a programování jen ze školy, stačit to nebude. Zkušenosti s Perlem beru jako plus, ale nejsou nezbytné.

Jaké pozice jsou otevřeny?

Nyní jsou otevřeny tři pozice: junior, senior a tech lead software engineer. Kompletní seznam všech otevřených pozic v Sunu je k dispozici na jobs.sun.cz nebo na talents.cz/sunjobs. Pokud máte o tyto pracovní nabídky zájem, pošlete email na zamestnani@sun_cz nebo t.kolsky@talents_cz.

Karel Zatloukal
www.linkedin.com/in/karelzatloukal

Diskuze (0) Nahoru