Marcin opowie w jaki sposób dostał się do Automattic pomimo małego doświadczenia z WordPressem i jego środowiskiem. Opisze także proces rekrutacji programistów oraz zdradzi, jak wygląda codzienna praca w tej firmie.
***
Marcin Bot podczas WordCamp Lublin 2017:
https://2017.lublin.wordcamp.org/session/od-zera-do-automattica/
3. Do Automattica zaaplikowałem mając
następujące doświadczenie z
WordPressem i PHP:
• Dwa razy pisałem proste skrypty w PHP
• Raz postawiłem WordPressa na lokalnym Apache
• Miałem ponad pięcioletnie, nieaktywne konto na
WordPress.com
• Raz modyfikowałem znajomemu stronę postawioną
na konkurencyjnym CMS
4.
5. Inne doświadczenie
University of Edinburgh - Bachelor of Software
Engineering (odpowiednik licencjatu)
Linux, Java, trochę C i C++ oraz innych języków
Wiele osób w firmie, w tym i sam założyciel, nie ukończyło studiów
Skyscanner - skrypter, front-end developer
Python, C#, JavaScript
Rockstar North - front-end developer
C#, JavaScript
6. • Duża część mojej wiedzy i doświadczenia to
technologie Microsoftu. Ale uważam, że język
programowania, środowisko i OS to jedynie
narzędzia. Ten sam problem można często
rozwiązać na wiele sposobów.
• Automattic szukał kogoś na pozycję JavaScript
Engineer
• W mojej ówczesnej pracy zaczynaliśmy trochę
projektów z Reactem, poza tym znam inne
technologie front-endowe
7.
8. Aplikacja
• https://automattic.com/work-with-us/
• "Wyślij nam maila w którym opowiesz trochę o sobie i
załącz swoje CV" - a więc list motywacyjny
• Staram się żeby moje listy motywacyjne były krótkie (3
akapity po 2-3 zdania) i zawierały tylko najważniejsze
informacje. Resztę można wyczytać w CV
• W tym momencie warto bardziej wybadać firmę do
której aplikujemy, jeśli jeszcze tego nie zrobiliśmy
9. Interview
• Po około dwóch tygodniach dostałem odpowiedź i
zostałem zaproszony na rozmowę kwalifikacyjną,
która odbyła się 6 dni później
• Rozmowa była tekstowym chatem na Slacku
• Pytania ogólne (dlaczego zaaplikowałem,
poprzednia praca itp.) oraz proste pytania
techniczne
10. Coding Test
• Krótko po rozmowie dostałem zadanie
sprawdzające podstawowe umiejętności techniczne
• Prosty plugin do którego miałem
dodać funkcjonalność
• Należy stosować się do coding standards: https://
codex.wordpress.org/WordPress_Coding_Standards
• Plugin miał wiele innych problemów, które należy
znaleźć i naprawić samemu
11. Trial
• Najdłuższa i najbardziej pracochłonna część rekrutacji
• Projekt "z życia wzięty" - coś, co jest naprawdę
potrzebne i nad czym na co dzień pracują ludzie w
firmie
• Współpracujemy z potencjalnymi przyszłymi kolegami
• Nad wszystkim czuwa "mentor" - osoba do której można
kierować pytania i która obserwuje nasz postęp
• Za pracę nad projektem dostajemy zapłatę
12. Trial
• Mój projekt: prosty edytor zdjęć dla Calypso
• Najlepiej sprawdzony przez innych developerów
kod jaki napisałem
• Sama funkcjonalność nie jest do dzisiaj w pełni
zaimplementowana. Jednak to co udało mi się
napisać, wystarczyło, abym przeszedł do
następnego etapu
14. "Matt Chat"
• Ostatni etap rekrutacji: rozmowa z CEO i
założycielem Automattica, Mattem Mullenwegiem
• Każdy kto dostał się do tego momentu musi przez
nią przejść
• Rozmowa odbywa się na Slacku
• Pytania mogą być różne: od prostych technicznych,
poprzez doświadczenie, po ogólne zainteresowania
15. • Cały proces, od wysłania aplikacji do rozpoczęcia pracy,
zajął prawie 4 miesiące
• Z punktu widzenia kandydata potrzebna jest cierpliwość
• W każdym momencie można zapytać kogoś o status aplikacji
• Proces dobrze sprawdza umiejętności i motywację
aplikantów
• Wiele osób w firmie podkreśla, że mimo iż proces sprawdza
się w przypadku Automattic, to nie musi być on najlepszym
wyborem dla innych firm
• Warto
16. Happiness Rotation
• Po rozpoczęciu pracy, każdy, niezależnie od pozycji,
musi odbyć rotację w obsłudze klienta WordPress.com
• Rotacja trwa trzy tygodnie
• Odpowiadanie na emaile oraz live chat z użytkownikami
• Pozwala lepiej poznać produkt, nawet jeśli ktoś dołącza
z dużym doświadczeniem
• Pozawala też poznać częste problemy z jakimi
borykają się użytkownicy
17. Prawdziwa praca!
• WooCommerce Services (https://wordpress.org/
plugins/woocommerce-services/)
• WooCommerce for Calypso
Team Hydra
18. • Na codzień programuję w JavaScript (React, Redux,
Node.js) i PHP
• Firma jest otwarta na nowe idee i technologie
• Każdy pracownik może używać IDE i systemu jaki preferuje
• Większość programistów używa GiHuba do kontroli wersji
• Inne narzędzia to między innymi ElasticSearch, Phabricator,
SVN oraz sandboxy odzwierciedlające środowiska z
produkcji
• Nowy kod jest bardzo dokładnie sprawdzany przez innych
developerów - w firmie nie ma "tradycyjnych" testerów
19. • Komunikacja odbywa się głównie przez Slack, P2
(specjalny motyw dla stron na WordPress.com) oraz
na GitHubie
• Teamy mają własne blogi z P2 oraz kanały na Slacku
• Email prawie nie jest używany wewnątrz firmy
• W zależności od potrzeb, kilka razy w tygodniu team
może spotkać się i dyskutować przez
wideokonferencje
• Raz w miesiącu lub częściej organizowane są
wideokonferencje dla większej liczby osób
20. Korzyści
• Tworzysz coś, co jest używane przez ludzi dookoła świata na
ogromną skalę, w tym przez znane nazwy takie jak Time,
CNN, Reuters, Sony, TechCrunch i wiele innych (https://
wordpress.com/notable-users/)
• Zdolni współpracownicy
• Nielimitowany urlop
• Nieregulowane godziny pracy
• Dodatkowe koszty są często pokrywane przez firmę (podróże,
komputer, urządzenie biura, shared space, a nawet kawa)
26. Więcej informacji
• https://automattic.com/work-with-us/
• Scott Berkun - The Year Without Pants (książka) - opisuje
wydarzenia z 2010, więc niektóre rzeczy mogły się zmienić
• Blog Matta Mullenwega, założyciela firmy: https://ma.tt/
• Wiele osób opisało swoje doświadczenia z Automattic w
internecie, np. http://davemart.in/remote-hiring/
• Jeśli nie uda się za pierwszym podejściem, warto
spróbować jeszcze raz!