17 października 2009

Szabelka

Od półtora miesiąca pracuję sobie w Sabre i wszyscy pytają mnie, jak tam jest. Oto więc, jak jest:

Jest inaczej. Pod każdym możliwym względem. Zupełnie, diametralnie inaczej, niż było w JCo.

  • Inne są warunki pracy – zamiast pokoików mamy open space. Nie jest tak źle – nie mamy boksów rodem z Dilberta, tylko biurka pogrupowane czwórkami. Koło mnie siedzi mój buddy – kolega, który jest ze mną w projekcie i wprowadza mnie w tajniki pracy w nim i w samym Sabre – i drugi kolega, który jest moim lokalnym... no, nie managerem, raczej kimś, kto przyklepuje moje urlopy i inne takie.
  • Bo generalnie jest to korporacja, a nie mała firma, i to się czuje – są procedury, jest inercja, jest łańcuch odpowiedzialności i takie tam. Na razie nie czuję, żeby mi to w jakikolwiek sposób przeszkadzało, ani nie czuję się od tego głupszy czy ubezwłasnowolniony. Wręcz przeciwnie – po tygodniu pracy udało mi się namówić managera, żeby mnie puścił na konferencję JDD (wczoraj byłem), a po miesiącu pracy dostałem urlop na koniec Października (jadę do Malmo!!! :)
  • Projekt jest superciekawy – rozwijająca się od ponad 10 lat aplikacja, właściwie całe środowisko developerskie dla różnych, związanych z podróżami klientów. Aplikacja desktopowa, bardzo wielowarstwowa – jest warstwa prezentacji w Swingu, którego uwielbiam (tak, napiszę to jeszcze raz, dla niedowiarków: UWIELBIAM SWINGA), jest warstwa logiki, są połączenia przez RMI, są interfejsy do porozumiewania się z różnymi nietypowymi urządzeniami, jakie można spotkać na lotniskach czy w biurach podróży... no, po prostu żyć nie umierać!
  • Jako, że jest to aplikacja desktopowa, żegnaj, J2EE! Było fajnie, ale jednak niezmiernie się cieszę, że wreszcie jestem w środowisku, w którym WIEM, CO SIĘ DZIEJE. Jadę sobie po kodzie debuggerem, linijka po linijce, metoda po metodzie, i zawsze wiem, gdzie jestem! Żadnych pieprzonych interceptorów, żadnego zgadywania, gdzie postawić kolejny breakpoint... Flow aplikacji jest wreszcie sensowny, przejrzysty i zrozumiały. Bardzo, bardzo mi tego w J2EE brakowało.
  • Zupełnie inne są narzędzia pracy, dzięki czemu poznaję nowe: zamiast Eclipse – IntelliJ Idea, zamiast SVNa – ClearCase, zamiast Mavena – Ant, zamiast Jiry – Version One, zamiast MS Projecta – Primavera...
  • Sam kod jest bardzo różny – jako, że aplikacja rozwija się od czasów Javy 1.2, nie napotkałem jeszcze w ponad 3000 klas ani pół enuma czy adnotacji... Brakuje mi ich trochę, no, ale taka specyfika. Dobrze, że generiki są ;)
  • No i wreszcie – inna metodologia. Po pierwsze – Test Driven Development, wreszcie. Przy szaleńczym tempie pracy w JCo żywcem nie było czasu na unit testy, testy funkcjonalne ani nic z tych rzeczy. Tutaj każda linijka kodu musi być przetestowana. Zaczyna mi to wchodzić w krew do tego stopnia, że znalazłem lukę w instrukcji korzystania z naszej sabrowskiej kuchni (jeden nieobsłużony przypadek testowy). Po drugie – AGILE, czyli iteracje, scrumy, a przede wszystkim code review, na co też w JCo niestety nie było czasu. I dzięki temu mogę się bardzo wiele o dobrych praktykach kodowania nauczyć.
  • Na koniec – płaca. Ale o tym nie będę mówił, bo dżentelmeni o tym nie rozmawiają ;) Blaze mnie spytał: "Nie żałujesz, że się przeniosłeś?" Popatrzyliśmy na siebie, a potem wybuchnęliśmy śmiechem...

Specyfika pracy w międzynarodowej korporacji przejawia się też tym, że z mojego projektu tylko 2-3 osoby są w Polsce (w tym ja). Reszta siedzi w Stanach, co się przekłada na to, że stand-up meetingi odbywają się przez telefon o godzinie 16 (w Stanach jest 9 rano), więc nie mam co marzyć o wychodzeniu do domu np. o 16:30, jak planowałem. Ale za to z tygodnia na tydzień coraz lepiej w projekcie się czuję, coraz lepiej się odnajduję i coraz więcej robię – w tym tygodniu miałem dwa dwugodzinne telefoniczne meetingi w których już nie tylko słuchałem, ale które prawie że prowadziłem, przedstawiając wyniki rozpoznań, testów, prób i tzw. spike'ów, a potem uczestniczyłem w dyskusji co z tymi wynikami zrobić. Miło było też usłyszeć słowa uznania od architekta projektu.

Naprawdę się tam odnajduję :)

A z JCo najbardziej brakuje mi chyba tylko ludzi, z którymi na szczęście kontakt trwa (w zeszłym tygodniu byliśmy w knajpie i świetnie się bawiliśmy, dzisiaj – dwie koleżanki maja parapetówkę). Ale coraz więcej z nich widuję już na korytarzach w Sabre, i wygląda na to, że ta tendencja się utrzyma ;)