Kreativita versus disciplína

Koordinovat několik geograficky vzdálených vývojových týmů je náročné pro firmu jakékoli velikosti zvláště pokud...


Koordinovat několik geograficky vzdálených vývojových týmů je náročné pro firmu
jakékoli velikosti zvláště pokud se jedná o spolupráci vývojářů pocházejících z
různých národů a kultur. Zeptali jsme se zástupců několika významných
softwarových společností na jejich názory.

Kde a jaká má vaše firma vývojová střediska?
Oracle v současné době provozuje čtyři hlavní vývojová střediska:
1. Kalifornie, San Francisco/Redwood Shores největší vývojové středisko, sídlo
divize Server Technologies. Zde jsou vyvíjeny databázové a aplikační servery.
Ve středisku pracuje kolem 3 000 vývojářů.
2. Nová Anglie zde probíhá vývoj databází RDB a některých subsystémů databází
Oracle (RAC, Spatial, Data Guard).
3. Indie divize pro vývojové nástroje a drivery (JDBC, ODBC).
4. Velká Británie vývoj modelovacího nástroje Designer a UML modeleru pro
JDeveloper.

Jaký vliv na výsledný produkt podle vás má decentralizace či naopak
centralizace vývoje?
Centralizace vývoje přináší lepší spolupráci jednotlivých vývojových týmů,
která umožňuje dosáhnout lepšího odladění vazeb mezi jednotlivými produkty a
jejich integrace do celkové platformy. Díky rychlejší a silnější zpětné vazbě
mohou jednotlivé týmy rychleji reagovat na požadavky svých kolegů a
implementovat či změnit funkčnost svých produktů.
Stinnou stránkou centralizace pak může být užší záběr produktů, které jsou
"šité na míru" prostředí (kultuře), v nichž vznikají. To pak může působit
globální problémy při konfiguraci produktů, které jsou provozovány koncovými
uživateli nejrůznějších kultur a jazyků.

Má vývoj v Česku nějakou výhodu? Jakou úlohu podle vás budou mít čeští vývojáři
v budoucnu?
Řekl bych, že výhoda je stejná jako v případě vývoje v Indii apod. Je zde
kvalifikovaná pracovní síla, dostupná za pouhý zlomek ceny než např. v USA či
západní Evropě. Příslibem do budoucna by mohlo být několik českých softwarových
firem, jejichž produkty se již etablovaly na světové úrovni (např. Logis se
svým MigRatorem). Myslím, že v případě našeho vstupu do Evropské unie nastane v
oblasti IT poměrně rychlé přibližování platů podmínkám obvyklým ve členských
státech EU, zvláště pokud by bylo dosaženo možnosti volného pohybu osob. V
takovém případě by ČR přestala být dodavatelem levné pracovní síly a došlo by
zřejmě ke snížení poptávky po pracovnících v oblasti vývoje, případně odlivu
části kvalifikovaných pracovních sil do zahraničí.

Co se proti tomu dá dělat?
Do budoucna vidím z hlediska vývojářů a softwarových firem v ČR jako velmi
důležitou podmínku perspektivního vývoje vznik softwarových firem, které se
dokáží prosadit na trhu v globálním měřítku. Jedině takovéto firmy budou moci
čelit stále obtížnějším podmínkám na trhu a získat dostatek prostředků na další
vývoj a rozšiřování portfolia svých produktů i čelit globální konkurenci.

Hodně se hovoří o vývojářích v Indii. Čím to je, že mnoho firem včetně vaší zde
zakládá svá vývojová centra?
Jak již bylo zmíněno výše, Indie nabízí kvalifikovanou pracovní sílu za velmi
nízkých nákladů. Tyto náklady jsou ještě výrazně nižší než v případě ČR, čemuž
odpovídá i zájem velkých softwarových firem a jejich přesun vývojových
středisek právě do této oblasti. V tomto směru hraje výraznou roli také Čína,
která se snaží vytvářet pro zahraniční investory co nejoptimálnější podmínky.
Oracle přesunul část svých vývojových kapacit do Indie již před několika lety,
nachází se zde také velké středisko zákaznické podpory.

Kde, jaká a jak velká má Microsoft vývojová střediska?
Microsoft v současnosti zaměstnává přibližně 21 tisíc vývojářů a výzkumných
pracovníků. Hlavní centra vývoje a výzkumu jsou v Redmondu, tedy v sídle
společnosti Microsoft, dále v anglickém Cambridge, v San Franciscu, v Silicon
Valley a v Pekingu. Menší vývojové týmy jsou také v Indii a Irsku. Irsko se
zaměřuje hlavně na lokalizaci našich produktů.

Jaký vliv na výsledný produkt má podle vás decentralizace či naopak
centralizace vývoje?
Většina strategických produktů je vyvíjena a testována centrálně. Jednotlivé
technologie jsou však u firmy Microsoft většinou nezávislé na konkrétním
produktu a jsou společné celé platformě. Vývoj je soustředěn do týmů, které
pracují na technologiích, a teprve z nich se skládají jednotlivé produkty. Týmy
pracující na technologiích mohou být geograficky vzdálené a nezávislé. Všichni
vývojáři Microsoftu, jsou totiž systémem práce nuceni spolu komunikovat bez
ohledu na to, v jaké části světa zrovna sedí.
Přesto ale necítíme potřebu uměle snižovat náklady na vývoj tím, že bychom
přesouvali vývojová pracoviště do zemí s nízkou mzdou programátorů. V konečném
důsledku se to mnohdy nevyplatí. Spíše se snažíme umísťovat vývoj tam, kde je
nejlepší znalost technologie. Decentralizace se proto často využívá například
při řešení výzkumných úkolů týkajících se globalizačních technologií, jako je
rozpoznávání řeči, písma atd. To je nejsložitější pro Asii, přičemž v Číně mají
nejlepší expertizu. Tudíž centrum výzkumu a vývoje je v Pekingu.

Má vývoj softwaru v Česku nějakou výhodu? Jakou úlohu podle vás budou mít čeští
vývojáři v budoucnu?
V České republice je vysoká úroveň vzdělání a znalostí programátorů při
relativně levné pracovní síle. To je společně s průhledným systémem legislativy
a práva základním předpokladem vzniku výzkumných a vývojových týmů. Mnoho
mezinárodních softwarových firem uvažuje o využití našich programátorů nebo je
již využívá. Osobně si však myslím, že u nás nevznikne žádné opravdu velké
centrum s tisíci pracovníky. Důvodem je velikost České republiky (počet
lokálních programátorů) v porovnání s Ruskem, Indií nebo Čínou. Vznikají a
budou zde vznikat menší vývojářské týmy mezinárodních firem, hledající kvalitní
a levné programátorské kapacity. Nezapomeňme však na lokální vývojářské firmy,
které se spojují navzájem a pomalu expandují i od nás do "levnějšího"
zahraničí. Jsou zde také známé firmy, které u nás začaly růst a poté odešly na
trh USA, kde mají větší potenciál.

Hodně se hovoří o vývojářích v Indii. Čím to je, že mnoho firem včetně vaší zde
má či zakládá svá vývojová centra?
Indie je typickým příkladem využití vysoké úrovně vzdělání při relativně levné
pracovní síle, doplněné velkým počtem programátorů. I Indii však začínají
konkurovat země jako Rusko nebo Čína. Microsoft má v Indii pouze jeden z
menších specializovaných týmů.

Zdá se vám ještě nějaká další světová země velmi zajímavá z diskutovaného
hlediska?
Velmi zajímavým specifikem v oblasti vývoje a výzkumu je Izrael. Má velmi silné
softwarové domy, které jsou světovou špičkou v softwarech pro firewally. Firmy
přitom vyvíjejí převážně v Izraeli, neboť tam stát přilákal díky speciálním
programům obrovské množství vědeckých kapacit z celého světa. Do zahraničí
potom pronikají tak, že kupují firmy, které jejich produkty ve světě prodávají,
anebo prodají špičkové produkty někdy i spolu s vývojářskými týmy velkým
světovým hráčům.

Kde má vaše firma vývojová střediska?
Computer Associates je globální firmou a taková je i struktura jejích
vývojových center jsou rozeseta po celém světě a jsou jich desítky. Dokonce
mnohé jednotlivé vývojové týmy, pracující na společném projektu, jsou globální.
Jejich členové, ač jsou v jiné zemi, v jiném časovém pásmu, mluví jinou řečí a
mají různou kulturu, používají nástroje, které jim umožňují pracovat jako
vysoce efektivní virtuální tým.

Jaký vliv na výsledný produkt podle vás má decentralizace či naopak
centralizace vývoje?
Vzhledem k rozsahu našeho portfolia a struktuře zákazníků je pro nás
decentralizace absolutní nutností. Navíc historicky různé oblasti přinášejí
vynikající znalosti pro specifická řešení, která se ve výsledku dají s výhodou
kombinovat do jedinečného celku. Například náš antivirový program eTrust
Antivirus užívá najednou dva separátní mechanismy pro záchyt virů, jeden je
vyvíjen v Izraeli, druhý v Austrálii. Výsledným efektem je vyšší bezpečnost,
avšak dosažená stále jediným produktem.

Jaké vidíte kladné a záporné stránky vývoje na několika geografických místech v
různých státech a kulturách?
Je-li náš software určen pro různé státy a kultury, je pak nesmírná výhoda,
když tam probíhá i vývoj. Přizpůsobení se potřebám zákazníka je pak mnohem
operativnější a přesnější. Takový systém vývoje je samozřejmě náročnější na
vývojové prostředí, koordinaci a management, avšak v konečném důsledku je
efektivnější.

Hodně se hovoří o vývojářích v Indii. Má vaše firma nějaké zkušenosti s vývojem
v této zemi? Čím to je, že mnoho firem zde zakládá svá vývojová centra?
I Computer Associates zde má určité vývojové kapacity a zároveň mnoho
pracovníků CA i v jiných zemích je původem z této části světa. Rodí se tam asi
velmi chytří a schopní lidé, neboť mnoho revolučních myšlenek a Nobelových cen
má svůj původ právě tam.

Kde má vaše firma vývojová střediska?
Naši vývojáři sídlí v Praze. Máme však vývojové týmy v našich dalších pobočkách
v Budapešti a hlavně pak v Bukurešti, kde je umístěno vývojové středisko divize
LLP Software.

Jaký vliv na výsledný produkt podle vás má decentralizace či naopak
centralizace vývoje?
Centralizace vývoje je velmi důležitá. Mám rád, když je vztah mezi designéry a
programátory plodný (tzn. když drží pospolu). Blízkost a porozumění mezi
pracovníky je téměř nutností. Jaké vidíte kladné a záporné stránky vývoje na
několika geografických místech v různých státech a kulturách?
Momentálně mne napadá, že klady jsou pouze v šetření nákladů. Co se týká
záporných stránek vývoje v různých geografických místech mohou zde nastat
obrovská nedorozumění. A to jak jazyková, tak profesní. Jediným způsobem, jak
eliminovat tato nedorozumění, je vyvíjet a navrhovat dané programy velmi
strnule a neflexibilně.

Hodně se hovoří o vývojářích v Indii. Čím to je, že mnoho firem zde zakládá svá
vývojová centra?
Firmy zakládají vývojářská centra v Indii ze dvou důvodů. Za prvé jsou to nízké
náklady potřebné na vývoj a za druhé je to velmi dobrá znalostní úroveň
programátorů. V této zemi je také velice působivá kultura ve vztahu ke službám
zákazníkovi. Mají tam také vysoké akademické standardy. Osobně zkušenosti
nemáme. Vím však, že některé firmy považují přístup indických programátorských
týmů za méně tvůrčí než přístup jejich kolegů ze západních zemí. Je možné říci,
že čím více je disciplíny, tím méně je tvůrčích schopností. V týmu je však
potřeba obou těchto vlastností.









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.