Dne 23.10.2010 jsem vyrazil na Den s vývojáři Seznam.cz v Brně Na cestě jsem se již nemohl dočkat až dojedu do Brna. Vlak byl značně nepohodlný, ale co bych neudělal pro to, abych se více dozvěděl pro sebe i pro vás co nejvíce informací ze zákulisí Seznam a.s.. Po příjezdu jsem se účastnil přednášky kterou vedl Tomáš Pergner s názvem Scrum & popis vzniku nové služby. Fáze projektu: 1) Návrh může podat jakýkoliv zaměstnanec o tom co se bude realizovat rozhoduje řídící komise 2) Strategie 3) Analýza nápadu nákladů lidí 4) Realizace 5) Ukončení Projekt je vyhodnocen, poté se z projektu získá poučení pro příště Projekt je posuzován: Vvelký mlýn (řídící komise) - schvaluje návrhy Střední mlýn - dohlíží na stav projektů - má na starosti meziprojektový vliv Cíl vs. Přínosy Cíl Přínosy - stav do kterého se snaží projekt přenést - finance - uživatelé
- cena projektu? náklady by se měli vyvážit ziskem Náklady Přehled priorit k nákladům: Kvalita - klíč k úspěchu Čas - musí mít termín Náklady - málokdy jsou hlavní osou Snaha o řízení - agilemanifesto.org Většinou se projekt mění po cestě a proto je zapotřebí mít priority a informovaný (propojený) vývojový tým, proto vývojáři pracují synchronizovaně. Agilní manifest spolupráce je důležitější, než vyjednáváni o smlouvě se zákazníkem v seznamu neplatí SCRUM v Seznamu SCRUM v Seznamu koncem roku 2008 se začal rozvíjet SCRUM v seznamu, díky nově přijatému pracovníkovi. Lidem v seznamu vysvětlil v jednodenní prezentaci SCRUM a již to začalo. Museli vysvětlit, že SCRUM má smysl, certifikace SCRUM MASTRŮ proběhla u seznamu a přineslo se do seznamu spousta nových nápadů začíná se šířit SCRUM po celém seznamu a vzniká skupina lidi pro SCRUM, od roku 2011 bude ve SCRUMU tak zvané SCRUM 2.01 neboli upravená verze SCRUMU seznamem pro seznam, SCRUM je vpodstatě blog Body říření pro vývojáře seznamu jsou: 1) Radši fungující software než dokumentace. SCRUM - interaktivní způsob vývoje softwaru - není zkratkou i když se píše většinou velkými písmeny SCRUM - Sprint produkt backlog sprint backlog sprint fungující část Sprinty jsou malé kousky projektu na nichž se pracuje zhruba 2 až 3 týdny. Lidi ve SCRUMU: scrum master - není součastí týmu - má dohled nad projektem (dohlíží, že tým dokáže to k čemu se zavázal) product owner - reprezentuje zákazníka (u seznamu) - vysvětluje co a jak se má vyvíjet tým - klíčoví lidé, kteří vyvíjejí - programátoři, webmastři a další
SPRINT - BACKLOG Určuje co se musí vytvořit ve sprintu. skládá se z USER STORY 1) priroita 2) odhad v bodech 3) definice finále SCRUM MEETINGY 1) co vyrobime 2) jak vyrobit 3) jak si stojime (koná se denně, probírá se co se za 24 následlujicich hodin bude dělat a kdo to bude dělat) 4) ukázka 5) co jde, co zlepšit U seznamu se 1 a 2 se často slučují. Pokud má programátor problém a nedaří se mu ho vyřešit, pošle ho SCRUM MASTEROVI. Tabule SCRUMU obsahuje sloupce s položkami: co se má udělat, co se dělá, co je hotové, časový graf, neplanované, co dál. SCRUM KOLOBĚH MUSÍ MĚLI TŘEŠNIČKY NA DORTU KONEC KONEC Když nejsou finance nebo podpora, či něco jiného, tak se projekt končí na měli. Když je možné pokračovat, tak až za třešničkou. Slovníček & přehled dalších pojmů: VELOCITY zkušenost s předchozími sprinty RETROSPEKTIVA - Co jde dobře. Co šlo. Co může jít líp. CO SCRUM PŘINESL - přinesl informovanost ve firmě Práce na dálku & Spolupráce mezi centry - Seznam má celkem má tři vývojové centra. - Komunikace mezi centry probíhá přes videokonference. Dotaz: zákazníky jste vy sami, termin není důležitý? - termíny jsou důležité, stejně jak náklady. Dotaz: používá se planning poker? - ano
Poté následovala přednáška Lukáše Greba s názvem Hlavní stránka Seznamu a její obsah. Úvodní slovo Život není jen hledání - Lukáš Greba. Hlavní stránka Seznamu je jedna defakto RSS čtečka => Homepage vygneruje denně 31 milionů stránek => dvě servrovny pro homepage pracují na co nejvyšší možné duplicitě Šetření výpočtové kapacity: C++ VLASTNI KNIHOVNY VICEUROVNOVE CACHOVANI NoSQL databaze BINARNI KOMUNIKACE MEZI KOMPONENTY PERSONALIZACE HOMEPAGE každý si může přizpůsobit vzhed či obsah svým potřebám Homepage prochází: razantni změny, evolučně A, B testování Výkonnostní testování Programovaci jazyky: C++, Python, Java Můj dotaz: jak se dostat do katalogu pro RSS? RSS pro ostatní uživatele se vybírají za pomoci globálních statistik.
Poté následovala přednáška Štěpána Škroba s názvem Fulltext. Zálohování -- primární.. ještě jedna servrovna zálohuje se servrovna robot má 21 MySQL servru s jednou tabulkou dohromady, kde jsou údaje o URL. když se rozpadne - katastrofa a proto je záloha jinde úplně stejná taky 21 (zrcadlení) chystá se nový robot pro ukládání stránek do klastrů zhruba 30 servrů - indexace 2 000 stránek za sekundu větsina se zákazem robotů ani nevi, že to tam má (zapomene po aktualizaci, atd.) objem dat při reindexaci denně 20 000 000 stránek druhý den ve fullu připravovaný 2 000 stránek za sekundu vyhledavani v zahranici sloučení svět a cr do jednoho pokles návštěvnosti zmenšený podil na českém internetu? top list prakticky nejisté (nevime co čísla znamenaji) s robotem nesouvisí, protože není kompletni zářijový update asi ne. BEZ KOMENTÁŘE. master tool seznamu plánuje se jiné nástroje >> informace. ověření indexace pro veřejnost
Poté následovala přednáška Leoše Póla s názvem Používanné technologie v Seznamu. Seznam má dva server housy, které nejsou v budově seznamu. Schéma server housu: GO (H) DNS NG (H) Teng - šablonovací systém open-source Metaserver Automatické vkládáni headeru Databáze - PostgreSQL - MySQL Databáze Super master Master slave slave slave slave FastRPC open.source, protokol pro vzdálené volání NoSQL Memcached, Redis Fulltext search Energy Sphinx Hadoop našeptávač
Poté následovala přednáška Dušana Janovského & Jiřího Materny s názvem Fultex a výzkum. Oprava výrazů viz. fejsbook na facebook Nástroj AIKA lematizace Synonymie viz. zubař stomatolog překládal jazyk = tlumočil písek = tlumočil X neshodné! laterní sématická analýza > Kontextové cílení reklamy Sklik výbírání reklam, které jsou vhodné pro daný web slova na stránce se nadají použít, musí se z nich použít jen část za pomoci lexikální metody lexikální metody kategorie věty 600 stránek byl základ cílem klíčových slov (+ návrhy pro inzerenty) pro inzerenty Distribuované výpočty hadoop Poté následovala přednáška Michala Feixe s názvem informace o provozu. Operativa nasazování udržování služeb Inovace snižování nákladů reakce na technologie a o bchodní změny Zajímavá čísla 1100 serverů 1900 instalovaných operačních systémů virtualizace Open VZ přes 70% 95% Linux pak Solaris, Windows (nejméně) Administrace skriptové SSH děleni servrů mezi centry je 60:40 99,9% dostupnost tedy asi 8 hodin ročně jsou výpadky 110 milionů operaci za vteřinu ze 4 serverů 4,5 miliardy vygenerovaných stránek za měsic
Nasazení rollout INSTALAČNÍ POŽADAVEK ZASLÁN SKRZE REQUEST TRACKER open-source Požadavek je struktorován tak, aby administrátorovi umožnil vyznat se podle služby je směrován požadavek Monitoring podle rolloutu - ověřit monitoring a opravit - upravit na wiki, když vzniká nový monitoring je pro operátory Postup oprav: operátor při opravě podiva se do wikiny opravuje když se oprava povede běží, když ne volá aminidtrátora - reakčni doba operátora není u všech služeb stejná, řadi se dle významu - po době, která je daná službě, je nutné kontaktovat administrátora, pokud není oprava funkční operátor používá spíš in-house nástroje (nejsou tolik technicky zdatní) Statistiky: za první pololeti 2010 byla dostupnost 99,94 Seznam komunikuje Jabber,telefon,videokonference mezi zaměstnanci Dotaz: monitorovaný? interní zevnitř (spolehlivost 50%) mimo síť (zbývajících 50%) helpdesk (dalších 50%) softwarer MOON, Nagios, Syux Dotaz: upravené programy jdou ven?? většinou ne tým není veliký, má moc práce a proto není moc propracovaný letos něco půjde ven, už půl roku se na tom pracuje
Poté následovala přednáška Luboše Starého s názvem Odborné služby pilíře seznamu FOBR SMOB IRES, SRCH, OGEN společné rysy - pilíře seznamu db backend user web admin web import podrobnější popis nemám přednášející mluvil potichu a já seděl poměrně vzadu vzník a rozvoj služeb + Optimálně Produktový Manažer obchod vývoj produktový manažer uspokojit uživatele obchod vydelat zákazníky vyvoj vyhotovit funkčni verzi služby co čeka Seznam za práci? Sjednoceni hledáni jednotná technologie synergie služeb efektivnějšípodpora podnikáni v ČR Závěr repotáž na vyvojari.seznam.cz Můj závěr Na seznam den s vývojáři Seznam.cz mi přestal fungovat foťák, proto je tu fotka z webky a nemám fotky prednášejicich. Je to smůla.