Rzemiosło.it – moja relacja

Trochę czasu upłynęło od konferencji Rzemioslo.it, ale w końcu znalazłam chwilę by napisać parę słów o tym jak było.

Zacznijmy od tego, że była to konferencja w temacie jak sama nazwa wskazuje – rzemiosła czyli Software Craftsmanship i była pierwszą w tej tematyce na podkarpaciu. Odbyła się w ostatni weekend maja – 27, w sobotę w Jasionce (pod Rzeszowem) w Podkarpackim Park Naukowo-Technologiczny AEROPOLIS.

Organizatorom udało się ściągnąć takie znakomitości jak Sławek Sobótka, Piotrek Stapp, Jakub Gutkowski czy Jarek Pałka. Było zatem kogo posłuchać i było wiele ciekawych tematów.

Sławek w prezentacji pt. Co gryzie świadomego programistę DDD?” opowiedział nam o problemach z jakimi może zetknąć się programista stosując podejście DDD – tym samym przeszedł przez różne tematy – od mikroserwisów, przez RESTa, wspomniawszy również o architekturze monolitycznej. Przedstawił całą masę ciekawych przykładów i dobrych praktyk. Myślę, że prezentacja była bardzo przydatna nawet jeśli nie stosujemy DDD na co dzień, ponieważ obejmowała wiele koncepcji i przydatnych uwag.

Piotrek opowiedział historię pt Od juniora do seniora czyli tam i z powrotem. Jak kierować swoją kariera na przykładzie własnym i znajomych” czyli podzielił się z nami swoimi doświadczeniami z poszczególnych projektów w jakich brał udział pełniąc rożne role. Każdy „rozdział” kończył się wnioskami wyciągniętymi z danego okresu. Bardzo ciekawe!

Jakub zaprezentował temat języka Elixir – niestety nie miałam okazji w tym uczestniczyć, ponieważ wybrałam równoległe odbywającą się prezentację Namysława Szymaniuka – Dlaczego warto „skakać” pomiędzy technologiami?”. Niestety ona tylko w połowie zgadzała się z pierwotnym tematem, ponieważ okazało się, że nie była ona pierwotnie tak długa by wypełnić godzinne okienko czasowe jakie było przeznaczone na prezentację. Dlatego też drugą połowę wypełniła opowieść o Xamarin Forms, która utwierdziła mnie w przekonaniu, że od czasu moich przygód z Xamarinem (opisywanych tutaj) niewiele się w tym frameworku zmieniło. Szkoda.
Natomiast jeśli chodzi o pierwszą część, to faktycznie znalazło się w niej parę ciekawych rad i spostrzeżeń. Jak na przykład to, że wybór technologii to nie wyrok na całe życie czy że biorąc pod uwagę zmianę technologii musimy się liczyć z koniecznością poświęcenia sporej ilości prywatnego czasu na douczenie się wielu rzeczy.
Tak czy inaczej zmiana technologii w ramach tej samej firmy, czy też po prostu wykorzystanie innego języka niż dotychczas wydaje się być w miarę proste. Brakło mi w tej prezentacji trochę pełniejszego spojrzenia na tego typu zmiany – na przykład tematu zmiany technologii przy jednoczesnej zmianie firmy – taki skok na głęboką wodę. To również jest istotne z punktu widzenia „skoków” między technologiami. Moim zdaniem zatem troszkę za mało doświadczeń jeszcze zebranych w tej prezentacji.

Jarek Pałka w prezentacji Agile & architecture” dzielił się swoimi doświadczeniami z pozycji architekta oprogramowania.

Z kolei ciekawy show pokazały chłopaki z białostockiej firmy Software Hut (Hubert Zub i Marcin Bartoszuk) w prezentacji pt: Dlaczego programiści nie rozumieją wymagań?”. W dużej części prezentacja składała się ze scenek odgrywanych pomiędzy przykładowym programistą przykładowym project managerem a także klientem. Było o najczęściej popełnianych błędach w specyfikacji tworzonej na starcie projektu, o sposobach poprawienia komunikacji z klientem a także o tym jak ważne jest by wymagania odnośnie projektu były jednoznaczne i wyczerpujące. Wszystko to podane w formie bardzo przystępnej i zapadającej w pamięć. Wykonanie naprawdę super!

Na samym końcu chciałabym wspomnieć o bardzo „mięsnej” prezentacji Szymona Kulca pt The only thing that matters”. Była to zdecydowanie najbardziej techniczna z prelekcji na których byłam tego dnia. Szymon wyciągnął na światło dzienne wnętrzności kryjące się w takich mechanizmach jak SQL Server, Kafka czy Event Store. Było dużo o bazach danych, sposobach przechowywania i przetwarzania danych w nowszych i starszych silnikach.

Podsumowując – konferencja jak na pierwszy raz wyszła naprawdę super i myślę, że na pewno zawitam z rok. Polecam Wam również w przyszłym roku na nią wstąpić. Wstęp był niedrogi a i sobotni termin pozwalał wybrać się bez uszczerbku dla pracy. Tegoroczne prelekcje były rejestrowane i zapewne niedługo pojawią się w sieci, więc będziecie mogli zobaczyć co w tym roku przegapiliście.

Konkurs, konkurs i po konkursie – znowu:)

Tak sobie pisałam i pisałam te notki, że aż przegapiłam, kiedy przekroczyłam regulaminową liczbę 20 notek w ciągu 10 tygodni. A było to 5 notek temu (jeśli liczyć tą to 6).

W takim razie dziś postanowiłam napisać sobie jakieś małe podsumowanie.

Przyznam, że tym razem już nie czuję się tak bardzo wygrana jak w poprzedniej edycji po zakończeniu tych trzech miesięcy. W zeszłym roku był to dla mnie pierwszy raz i naprawdę nie sądziłam, że uda mi się te trzy miesiące wytrwać. Tym razem – już wiedziałam, że jestem w stanie czemuś takiemu podołać. Oczywiście tak samo się cieszę, że dotrwałam, bo fajnie jest jednak kolejny raz „się spróbować”. Jednak nie jestem do końca zadowolona z efektu, bo o ile w zeszłym roku maj kończyłam z praktycznie gotową aplikacją o tyle w tym kończę go jedynie z dużą ilością wiedzy w głowie.

Czy bardzo mnie to martwi? Nie do końca, ale trochę mi szkoda, że nie miałam tak dużo czasu jakbym chciała, żeby osiągnąć więcej. Nie mniej – przez czas trwania konkursu nauczyłam się bardzo dużo na temat Pythona i jego możliwości wykorzystania w temacie Data Science. Tą wiedzę zamierzam nadal poszerzać i utrwalać.

No i na koniec – kto powiedział, że „Daj się poznać” nie może trwać cały rok? Właśnie, że może! Niniejszym ogłaszam rozpoczęcie jeszcze jednego pet projectu. Tym razem będzie miał związek z Django, ponieważ chciałabym poznać Pythona również w zastosowaniu związanym z tworzeniem aplikacji przeglądarkowych. Pomysł jaki chcę zrealizować, to w skrócie aplikacja do wybierania filmu na wieczór. Powiedzmy, że chcemy się z kimś umówić na wspólne oglądanie filmu więc przesyłamy sobie mailem propozycje a później się dogadujemy, że to bym obejrzała, a to może a tego to nigdy. Moja aplikacja ma pomóc w dzieleniu się tymi informacjami. Zamiast przesyłać sobie maile, będzie można po prostu wrzucić listę filmów do aplikacji jako propozycji. Aplikacja dociągnie z serwisów takich jak Filmweb czy IMDB informacje na temat filmu – oceny, opis itd by ułatwić wybór filmu i mieć wszystko w jednym miejscu. I teraz osoby korzystające z serwisu mogą sobie wybrać które z propozycji ich interesują i zakolejkować je do obejrzenia lub też odrzucić i wtedy te filmy pozostaną tylko na liście osoby, która je zaproponowała.

Żródła apki znajdziecie na Githubie.

Tak czy inaczej trochę mi smutno, że kolejna edycja DSP dobiegła końca. Trzymam kciuki za wszystkich uczestników i mam nadzieję, że do zobaczenia na Gali w czerwcu!

Rekruterów rozmaite przypadki – część 3

Witajcie w trzeciej części cyklu na temat różnych przypadków związanych z procesem rekrutacji widzianej oczami kandydatów. Poprzednie części znajdziecie tutaj:

http://programistka.net/rekruterow-rozmaite-przypadki-czesc-1/
http://programistka.net/rekruterow-rozmaite-przypadki-czesc-2/

Niestaranność

Ręka w górę kto dostał kiedyś maila zatytułowanego „Panie Wojciechu” chociaż ma na imię Paweł? Z kolei dziewczyny – ile razy dostałyście ofertę pracy zatytułowaną „Drogi Panie”? Ja nie zliczę…

Rekruter musi podjąć próbę kontaktu z około setką osób, żeby z tego chociaż jedna mogła być tym poszukiwanym kandydatem. Jeśli poszukuje 2-3 osób musi zatem wysłać setki maili/wiadomości na LinkedIn/Goldenline itp. żeby kilkadziesiąt osób odpisało. Z tych kilkudziesięciu może kilkanaście będzie naprawdę zainteresowanych. A tylko kilka ostatecznie zostanie przedstawionych klientowi czyli firmie docelowej. Jeśli poszukuje kilkunastu osób skala jest oczywiście odpowiednio większa i w pierwszym etapie musi spróbować skontaktować się z naprawdę niesamowitą ilością ludzi. Do tego oczywiście dochodzą terminy, więc trzeba działać szybko.

Niestety często szybkość jest wrogiem dokładności. Jak wszyscy programiści wiedzą – nie da się zrobić projektu szybko, dobrze i tanio. Wygląda na to, że podobnie ma się sprawa z rekrutacją – przynajmniej z punktu widzenia kandydata. W tej masowej komunikacji często ginie jakiekolwiek indywidualne podejście, co sprowadza się do tego, że rekruter wysyła jednakową wiadomość nie patrząc na płeć kandydata.
Co myślę, gdy dostaję ofertę zaczynającą się od słów „Drogi Panie” – no cóż, może powiem tylko, że bardzo rzadko zdarza mi się odpowiadać na takie wiadomości. Do odpowiedzi może zachęcić mnie tylko naprawdę interesująca zawartość oferty.

Kiedy wyobrażam sobie nadawcę takiego maila, widzę osobę, która w jakimś CRMie albo na LinkedIn z góry na dół przekleja tą samą wiadomość nie zwracając uwagi na to, do kogo ją tak naprawdę kieruje. Zastanawia mnie też dlaczego oferty pracy nie są konstruowane w bardziej uniwersalny sposób – nasz język jest przecież bardzo bogaty i bez trudu można napisać ofertę na tyle bezosobowo, by pasowała do obu płci. Ot choćby zwrot „Droga Pani/Drogi Panie” – tak mało a tak dużo. Nie jestem jakąś wojująca feministką ani w ogóle feministką w sumie, ale miło by było gdyby wreszcie te oferty zaczęły wyglądać jakby nie pisał ich ktoś, komu nawet nie przyjdzie do głowy, że kobieta może pracować w tej branży.
Zwłaszcza, gdy ktoś pisze do danej osoby bezpośrednio – powinien zadać sobie tą odrobinę trudu i tak skonstruować mail, żeby formy gramatyczne i językowe jednak do tego odbiorcy pasowały. Tego po prostu wymaga kultura.

Wniosek

Naprawdę niewiele trzeba, żeby oferty pracy wysyłać zgodnie z zasadami dobrego wychowania. Jeśli rekruter chce zrekrutować specjalistów na poziomie, musi się na ten poziom wspiąć. 

NumPy, NumPy ale Pandas to dopiero coś

Kiedyś już wspominałam o Pandas czyli bibliotece do Pythona, która umożliwia analizę danych a przy tym robi to bardzo wydajnie oraz jest łatwa i przyjemna w użyciu. Przy tym jest obecnie najpopularniejszą biblioteką do pracy z danymi tabelarycznymi w Pythonie.

W Pandas do przedstawiania danych tabelarycznych stosujemy tzw dataframe czyli dwuwymiarową strukturę, która dostarcza nam zestaw narzędzi do szybkiego przeglądania, analizowania i wizualizowania danych.

W czym Pandas jest lepsze od NumPy?

  • Jednym z powodów jest to, że w NumPy w tabeli mogliśmy mieć wyłącznie dane jednego typu. W Pandas te dane mogą mieć różne typy.
  • Przewagą Pandas jest również obiekt NaN, który umożliwia nam obsługę nie istniejących danych (na przykład pustych niektórych pól w tabeli).
  • Kolejna rzecz to możliwość odwoływania się do wierszy i kolumn nie tylko poprzez numery, ale również poprzez nazwy (label).

Przede mną jeszcze kilka lekcji na temat Pandas, więc na pewno wrócę tutaj z kolejnymi ciekawostkami.

Rekruterów rozmaite przypadki – część 2

Witajcie w drugiej części cyklu na temat różnych przypadków związanych z procesem rekrutacji widzianej oczami kandydatów. Poprzednią część znajdziecie tutaj:

http://programistka.net/rekruterow-rozmaite-przypadki-czesc-1/

Tajny agent

Poprzednio pisałam o anonimowości oferty pracy polegającej na ukrywaniu nazwy firmy na początku procesu rekrutacyjnego. Dziś będzie o czymś podobnym, ale z drugiej strony – o tzw anonimizacji profilu kandydata. Jest to mechanizm, który stosują niektóre firmy rekrutacyjne aby ograniczyć dyskryminację.

Na czym to polega? Otóż z CV wysyłanego klientowi (firmie dla której rekruter szuka kandydatów) usunięte są wszelkie dane osobowe – od imienia i nazwiska, poprzez zdjęcie, narodowość, wiek czy płeć kandydata. Póki co wszystko w porządku.

Niestety niektóre firmy idą o krok dalej i mieszają w CV. W skrajnym przypadku – tutaj akurat moim własnym, doprowadziło to do tego, że w CV przestawiono dane na temat okresów zatrudnienia w poszczególnych firmach. O ile zmiana kolejności firm, w których pracowałam nie byłaby jeszcze niczym strasznym o tyle zmieniono daty początku i końca zatrudnienia. Zrobiono to na dodatek tak nieudolnie, iż okresy się o siebie zazębiały i z CV wynikało, że w danym momencie pracuję jednocześnie w trzech firmach.

Na szczęście historia ta ma szczęśliwy koniec, bo dostałam zaproszenie na rozmowę w firmie do której byłam rekrutowana i miałam okazję odpowiedzieć na pytanie jak to się stało, że pracuję w trzech miejscach naraz. Możliwe, że nawet nie dostałabym zaproszenia na tą rozmowę, ale okazało się, że pomógł mój profil na LinkedIn, który umożliwił ludziom z firmy zweryfikowanie tego CV gdy już dostali moje pełne dane i domyślenie się, że to firma rekruterska maczała palce w tak dziwnym dokumencie.

Wniosek

Niestety nie zawsze mamy wpływ  na to co z naszym CV zrobi firma rekruterska, ale pewne ryzyka możemy ograniczyć. Ja od wielu lat swoje CV wysyłam wyłącznie w formacie PDF, żeby uniemożliwić nieautoryzowane przeze mnie zmiany. Niestety zdarza się, że rekruter prosi nas o dokument w formacie Word – jeśli tak, koniecznie dopytajmy czy zamierza wprowadzać w nim jakieś zmiany i czy możemy się z nimi zapoznać przed wysłaniem naszego CV do firmy docelowej.  Dobrze również mieć swój profil w sieci – LinkedIn, Goldenline, lub na własnej stronie. Firma do której się rekrutujemy ma wówczas jakiś punkt odniesienia oprócz naszego CV. Dodatkowo możemy tam umieścić o wiele więcej informacji niż w tym jednym dokumencie.