Kod

Jak zostać programistą i zdobyć corgi

Jak zostać programistą i zdobyć corgi

Dowiedz się: Zawód Programista

Dowiedz się więcej
Zdjęcie: archiwum osobiste Vladislav Masunov

Kierownik działu rozwoju, pasjonat podróży samochodem i pies o imieniu Bruce.

Zacząłem programować w 2008 roku, jeszcze w szkole. Moja pasja zaczęła się od telefonów komórkowych, zwłaszcza popularnych wówczas smartfonów Nokii i pierwszych aplikacji na nie. Niektóre aplikacje wymagały specjalnego certyfikatu podpisanego dla konkretnego urządzenia. Kiedy oficjalna strona internetowa Nokii przestała wydawać certyfikaty, rynek zaczął wypełniać się chińskimi producentami, co wpłynęło na rozwój rozwoju aplikacji mobilnych. Ta zmiana była ważnym krokiem w mojej karierze i otworzyła nowe możliwości nauki programowania i tworzenia aplikacji.

Znalazłem na forum instrukcję składania wniosku i postanowiłem samodzielnie zacząć wydawać certyfikaty aplikacji. W tym celu stworzyłem prostą stronę internetową w kreatorze stron uCoz, który szybko zyskał popularność. Zaoferowano mi nawet 2500 dolarów za nią — był to mój pierwszy znaczący sukces. Będąc jednak ambitnym studentem, postanowiłem nie sprzedawać strony, lecz ją promować i zarabiać znacznie więcej. Wkrótce popularność pierwszych iPhone'ów znacznie wzrosła, a urządzenia Nokii zaczęły odchodzić w zapomnienie.

Latem pracowałem na pół etatu w fabryce, instalując sieci lokalne w warsztatach, co pozwoliło mi zgłębić branżę IT. Praca instalatora okazała się dość trudna: musiałem ciągle czołgać się po brudnych kątach z kablami, a wielu było niezadowolonych z mojej obecności. Pomimo wszystkich trudności, to doświadczenie okazało się cenne, ale zawsze chciałem zająć się programowaniem.

Upiększyłem swoje CV do pierwszej pracy

Długo szukałem pracy jako programista, ale na poziomie podstawowym, jako junior, nie było na mnie popytu. Ostatecznie w 2013 roku dostałem swoją pierwszą posadę w firmie hostingowej. To doświadczenie było ważnym krokiem w mojej karierze i otworzyło nowe możliwości rozwoju zawodowego.

Nie chciałem pracować za darmo, więc dodałem do CV informacje o moim rzekomym doświadczeniu w rozwoju komercyjnym. Podczas rozmowy kwalifikacyjnej pewnie opisałem firmę i moją rolę w niej. W rezultacie zostałem zatrudniony. Pracowałem sumiennie i starałem się sprostać wymaganiom zawartym w CV, i pozostałem na tym stanowisku przez sześć miesięcy.

Na początku mojej kariery powierzono mi zarządzanie przestarzałym systemem odsprzedaży domen. To doświadczenie doprowadziło do jednego z moich pierwszych poważnych błędów: nie wyłączyłem funkcji automatycznego odnawiania, co spowodowało, że wiele domen zostało odnowionych bezpłatnie za znaczną kwotę. W końcu wyjaśniono mi, że takie sytuacje się zdarzają i nie stanowią poważnego problemu.

Zostałem przeniesiony do nowego działu, w którym rozwijaliśmy agregator hostingu w chmurze dla usług takich jak DigitalOcean i Linode. Zintegrowaliśmy się z tymi usługami, udostępniając klientom przyjazny panel administracyjny za pośrednictwem interfejsów API dostawców oraz opcje płatności dla użytkowników z Rosji. W tamtym czasie najpopularniejszymi metodami płatności były WebMoney i Yandex.Money, a wszystkie rozliczenia odbywały się w rublach. Karty plastikowe nie były tak powszechne jak dzisiaj, a PayPal nie był powszechny wśród Rosjan.

Integracja z wiodącymi dostawcami usług w chmurze pozwoliła nam znacząco rozszerzyć naszą obecność na rynku. Teraz klienci mogą kupować serwery praktycznie w każdym kraju, tworząc unikalne warunki biznesowe. Stało się to naszą kluczową przewagą konkurencyjną, zapewniając dostęp do rozwiązań chmurowych użytkownikom na całym świecie.

Potem zaczęliśmy rozwijać platformę do przechwytywania wygasłych domen. W tym czasie odszedłem już z firmy, ale według moich współpracowników platforma rozwijała się pomyślnie i wykazywała wzrost. Nadal okresowo śledzę nowości i osiągnięcia zespołu.

Moja kolejna praca była związana z SEO — zajmowałem się promocją stron internetowych. Pracowałem w tej branży przez około rok, w trakcie którego poznałem wielu interesujących ludzi. Jednak proces promocji okazał się dość monotonny, z wieloma powtarzalnymi zadaniami. Na przykład, jedna firma zaprosiła mnie do stworzenia systemu analitycznego dla SEO. Początkowo byłem optymistycznie nastawiony, wierząc, że będę w stanie wykazać się swoimi umiejętnościami. W rzeczywistości spędziłem miesiąc na edytowaniu nagłówków na stronie internetowej, co uznałem za nieefektywne i nudne. Ostatecznie uznałem, że to nie to, co chcę robić i postanowiłem rzucić pracę.

Założyłem własną firmę i pracowałem w kilku startupach

Postanowiłem założyć własną firmę i okazało się to jeszcze większym wyzwaniem niż praca dla kogoś innego. Planowałem stworzyć „maszynę” do tworzenia stron internetowych, licząc na wykonanie 10 stron za 30 000 rubli i zarobienie 300 000. Rzeczywistość okazała się jednak inna. Skontaktowałem się z agencjami rządowymi i stworzyłem cztery strony internetowe, ale proces zatwierdzania i formalności trwał znacznie dłużej niż samo tworzenie.

W rezultacie nadal nie udało nam się osiągnąć akceptowalnych terminów i zysków, a ja zdałem sobie sprawę, że projekt powinien zostać zamknięty. Ku mojemu zaskoczeniu, w tym momencie nasz marketing szeptany w końcu zaczął działać i zacząłem otrzymywać oferty. Podjąłem już jednak decyzję i odpowiedziałem, że nie zamierzam kontynuować tej działalności.

Ostatnio pracowałem w giełdzie transportowej, gdzie obliczałem koszty transportu i paliwa oraz tworzyłem wygodne mapy dla użytkowników. Było to jednorazowe zajęcie, ale dało mi cenne doświadczenie, które później pomogło mi zdobyć pracę w startupie rozwijającym platformę transportu towarów podobną do dzisiejszego YouDo.

Usługa koncentrowała się na komercyjnym transporcie B2B, a my w zaledwie trzy miesiące stworzyliśmy konto osobiste dla firmy transportowej oraz aplikację dla kierowców. Prezentacja dla inwestorów okazała się sukcesem, a oni wyrazili zadowolenie: „Wszystko jest świetnie, będziemy nadal rozwijać projekt!”. Dodatkowo, nasz dyrektor zasugerował wdrożenie funkcjonalności dla ubezpieczeń OSAGO.

Szybko okazało się, że dyrektor nie przeznaczył budżetu na reklamę, marketing i promocję. Uważał, że nasze pomysły i produkty są tak unikalne, że sprzedadzą się same. Tak się jednak nie stało i przez cały okres istnienia naszego startupu nie zarobiliśmy nawet stu tysięcy rubli. W rezultacie inwestorzy zdecydowali się wycofać z projektu. Zabawne, że podczas prezentacji funkcjonalności dyrektor tak bardzo chwalił nasz projekt i jego niezawodność, że zasugerował nawet zaciągnięcie kredytu hipotecznego na jego sfinansowanie. Poważnie rozważałem tę możliwość, ale ostatecznie firma nagle została zamknięta.

Po zamknięciu startupu aktywnie szukałem pracy w Moskwie i już pierwszego dnia otrzymałem ofertę. Poszedłem w sumie na osiem rozmów kwalifikacyjnych. W moich oczach widać było desperację, ponieważ mieszkałem na północy miasta i sortowałem rozmowy według odległości od domu. Ostatnia rozmowa odbyła się w Rumiancewie – po drugiej stronie Moskwy, a dojazd zajmował prawie cztery godziny. Nie miałem jednak wyboru, a oferta wyglądała obiecująco, z przyzwoitym wynagrodzeniem, więc postanowiłem ją przyjąć.

To był startup – internetowa szkoła języka angielskiego, która podczas rozmowy kwalifikacyjnej została wymieniona jako konkurencja dla Skyeng. Rzeczywistość okazała się jednak daleka od oczekiwań. Kiedy zacząłem tam pracować, odkryłem, że firma ma jedynie prymitywną stronę docelową i prosty arkusz kalkulacyjny w Excelu zamiast pełnoprawnego systemu CRM. Moim zadaniem było stworzenie platformy do hostowania kursów, zarządzania instruktorami i klientami oraz zarządzania subskrypcjami i telefonami. Szybko i skutecznie stworzyłem absolutne minimum.

Kierownictwo stopniowo budowało zespół i zdecydowało, że skoro dołączyłem jako pierwszy, najlepiej rozumiem produkt i powinienem objąć stanowisko lidera zespołu. W tamtym czasie nie miałem doświadczenia w zarządzaniu ani delegowaniu zadań. W rezultacie dwóch członków zespołu było nieaktywnych i nie wywiązywali się ze swoich obowiązków. Chociaż później opanowałem umiejętności delegowania zadań, nadal nie spisali się na medal i ostatecznie zostali zwolnieni. Zbudowaliśmy silny zespół składający się z front-end developera, mobile developera i dwóch back-end developerów i pracowaliśmy razem z powodzeniem przez około rok.

Startup dysponował dobrymi budżetami reklamowymi, ale były one wydawane nieefektywnie. Kupiliśmy trzy reklamy od popularnych rosyjskich gwiazd, takich jak Buzova i Borodina, aby promować nasze konto na Instagramie. Nie przełożyło się to jednak na wzrost liczby klientów i budżet szybko się wyczerpał. Pomimo ambitnych planów – dołączyłem do firmy w listopadzie, a wejście na rynek międzynarodowy planowano na kwiecień – w kwietniu mieliśmy zaledwie 400 klientów. Inwestor wyraził niezadowolenie i zażądał zmiany. Zdałem sobie sprawę, że projekt jest w stanie krytycznym: mógł funkcjonować jeszcze przez jakiś czas z powodu bezwładności, ale to się nie uda.

Zespół deweloperski został znacznie zredukowany, a pozostali pracownicy otrzymali obniżki pensji. Postanowiłem zostać, aby zyskać moralne wsparcie kolegów, ale proporcjonalnie zmniejszyłem liczbę godzin pracy do czterech tygodniowo. W wolnym czasie aktywnie uczestniczyłem w rozmowach kwalifikacyjnych. Ostatecznie projekt został zamknięty, a nasza współpraca dobiegła końca.

Dzięki pracy w carsharingu dostałem psa.

Dostałem pracę w mojej pierwszej i być może jedynej dużej firmie – BelkaCar, znanej usłudze carsharingu. Byłem zaskoczony, widząc założycieli na konferencji amoCONF w telewizji, a teraz byli tak blisko. W BelkaCar wdrożyliśmy ciekawe projekty, takie jak nowe inspekcje, drzwi Bluetooth i system ogrzewania samochodu. Praca w innowacyjnym środowisku, gdzie każdy projekt przyczyniał się do poprawy wygody i jakości obsługi użytkowników, była wyjątkowym doświadczeniem.

W trakcie procesu, z powodu oczekiwania na nową rundę inwestycji i potrzeby analizy danych, ogarnęła nas nuda. Przez kilka tygodni aktywnie tworzyliśmy wykresy w Grafanie. Doprowadziło to do tego, że zespół stracił zainteresowanie bieżącymi zadaniami. W rezultacie otrzymaliśmy nowy projekt związany z monitorowaniem długoterminowego parkowania, przedłużonych przestojów i nieaktywnych wynajmów.

Ponieważ trzy moduły działały niezależnie, postanowiliśmy zaangażować do ich stworzenia trzech różnych programistów. To podejście się opłaciło i zaobserwowaliśmy pozytywne rezultaty.

Można utworzyć jedną usługę abstrakcyjną, a następnie nieznacznie ją dostosować, aby zaimplementować kilka konkretnych usług. Jest to podobne do używania klas abstrakcyjnych i regularnych w Javie. Takie podejście pozwala uzyskać ujednolicony kod przy minimalnych zmianach. Wybraliśmy jednak inną ścieżkę: każdy programista zaimplementował własną usługę, co zaowocowało trzema zupełnie różnymi podejściami. Kiedy zaczęliśmy integrować te usługi, pojawiły się poważne trudności. Po drodze ktoś z naszego zespołu został przeniesiony do innych zadań, a projekt trafił do innego zespołu. To doświadczenie okazało się najbardziej niefortunnym w mojej karierze.

Jak senior stał się seniorem z corgi

Od dzieciństwa marzyłem o psie. Na początku moim marzeniem był owczarek niemiecki, potem modne stały się husky. Pewnego dnia spędziłem cały dzień na wędrówce z husky i pokonaliśmy około czterdziestu kilometrów. Byłem wyczerpany, a husky energicznie skakał, jakby pytając: „Czy to już?”. To doświadczenie sprawiło, że zwątpiłem w swoje możliwości wyprowadzania tak aktywnego psa, zwłaszcza biorąc pod uwagę moje dwie prace.

Mojego corgi, Bruce'a, dostałem dzięki BelkaCar. Stało się to po tym, jak kolega przyprowadził swojego corgi do pracy i cała praca w biurze ustała – wszyscy dali się ponieść zabawie z psem. Zbadałem rasę i zdałem sobie sprawę, że ten mały owczarek to dokładnie to, o czym marzyłem. Marzenia z dzieciństwa się spełniają.

Mój kolega polecił renomowanych hodowców, znanych z wysokiej jakości podejścia do hodowli psów. W miocie był tylko jeden rudy szczeniak, przeznaczony wyłącznie na wystawy, więc nie był na sprzedaż. Postanowiłem obejrzeć pozostałe szczenięta i wypatrzyłem mojego przyszłego pupila. Przypomniał mi Batmana, więc nadałem mu imię Bruce.

Nowonarodzone szczenięta u hodowcy. Zdjęcie: archiwum osobiste Władysława Masunowa.

Spotkaliśmy się w połowie stycznia i wspominam ten dzień jako jeden z najszczęśliwszych w moim życiu. Podniosłem go na ręce – był taki malutki, drżący i bezbronny. Bruce spojrzał na mnie i w chwili, gdy nasze oczy się spotkały, przestał się trząść i zaczął lizać moje ręce. Zrozumiałem, że to mój pies, mój wierny towarzysz, z którym łączyła nas szczególna więź.

Miesiąc później zabrałem Bruce'a do domu. Kiedy otrzymałem papiery, odkryłem, że nasze urodziny praktycznie się pokrywają. Gdyby urodził się dzień wcześniej, moglibyśmy świętować to święto razem.

Moje pierwsze dni jako „pseudoojca” były pełne nieoczekiwanych sytuacji. Powiedziano mi, że szczeniak Bruce jest dobrze przystosowany do obroży, ale nie ostrzeżono mnie o jego niezdolności do chodzenia na smyczy. Zalecono mi spędzanie z nim więcej czasu w ciągu dnia, aby był spokojniejszy w nocy. Tego wieczoru poszliśmy na spacer, który okazał się prawdziwym wyzwaniem: niesforny szczeniak skakał, kopał i próbował uciec. Przygotowałam się jednak wcześniej, obejrzałam kilka filmów instruktażowych o tym, jak obchodzić się ze szczeniakami, i zabrałam ze sobą smakołyki. W rezultacie najpierw spędziliśmy półtorej godziny, krążąc po mieszkaniu, a potem wyszliśmy na zewnątrz na zaledwie 15 minut. To było nasze pierwsze małe zwycięstwo i dało mi nadzieję na powodzenie szkolenia Bruce'a.

Jeden z najtrudniejszych dni szczenięcego życia Bruce'a nadszedł w nocy, kiedy nie dawał mi zasnąć. Tego ranka obudził mnie wcześnie i był nieposłuszny podczas spaceru: ciągnął na smyczy, szamotał się, próbował zdjąć obrożę i podnosił przedmioty z ziemi. To doświadczenie było dla nas obojga prawdziwym wyzwaniem, ale pomogło mi też lepiej zrozumieć potrzeby i zachowania szczeniaka, co jest ważnym elementem jego wychowania i socjalizacji.

Kiedy wróciliśmy do domu, mój pupil zaczął skakać po korytarzu, skakał na mnie i zostawiał wszędzie ślady. Szybko wszystko posprzątałam: umyłam go, nakarmiłam i posprzątałam korytarz. Nagle zauważyłam, że jest już jedenasta, ktoś do mnie zadzwonił, a ja poczułam się zmęczona i głodna. Przez chwilę ogarnęła mnie frustracja i pomyślałam: „Dlaczego wszystko jest takie trudne?”. W tym momencie zrozumiałam trochę, czym jest depresja poporodowa. Bruce nadal czasami mnie denerwuje, ale nadal bardzo go kocham.

Połowa moich obserwujących na Twitterze to jego zasługa. Jednak jego popularność nie ogranicza się tylko do tej platformy. Gdy tylko pojawił się w moim życiu, wszyscy, których znałam, od razu zwrócili na niego uwagę. W pierwszych dniach czułam nawet zazdrość.

Zrzut ekranu Bruce'a i autora z Twittera: Skillbox Media

Stał się prawdziwy

Po pracy w BelkaCar szukałem pracy w większej firmie z dodatkowymi benefitami, takimi jak dobrowolne ubezpieczenie zdrowotne. Przeszedłem rozmowy kwalifikacyjne z polecenia i otrzymałem zaproszenia od firm takich jak Citymobil, Tinkoff i innych. Nie lubię jednak rozmów kwalifikacyjnych z polecenia, ponieważ odczuwam presję odpowiedzialności wynikającą z rekomendacji. To sprawia, że ​​nie daję z siebie wszystkiego.

Kiedy przyjechałem do Tinkoff, na drzwiach wisiał napis „Na własną rękę” lub „Na własną rękę”. Spróbowałem otworzyć drzwi w przeciwnym kierunku, co natychmiast sprawiło, że zwątpiłem w siebie. To wydarzenie sprawiło, że pomyślałem, że moje późniejsze wrażenia mogą nie być zbyt pozytywne.

Podczas rozmowy kwalifikacyjnej w Citymobil moje poczucie humoru najwyraźniej mnie zawiodło. Kiedy rekruter wspomniał o pracy z frameworkiem Yii, spróbowałem zażartować, ale to się nie udało i ostatecznie zostałem odrzucony z powodu braku doświadczenia. Teraz wolę żartować dopiero po okresie próbnym – trzy miesiące pozwalają mi lepiej zrozumieć atmosferę w zespole i dostosować się do stylu komunikacji.

Po poprzednich niepowodzeniach, biorąc pod uwagę moje ograniczone doświadczenie, postanowiłem objąć stanowisko kierownicze. Znalazłem firmę specjalizującą się w podróżach służbowych i dołączyłem do zespołu zarządzającego hotelem. Sytuacja okazała się trudna: poprzedni kontrahenci pozostawili niejasne zadania, co utrudniało dokładne zrozumienie, co się dzieje i jak. Moim zadaniem było przejęcie projektu od kontrahentów, zrozumienie jego specyfiki i stopniowe budowanie zespołu zdolnego do samodzielnego wspierania i rozwijania go.

Przez pierwszy miesiąc wszystko szło dobrze. Jednak w styczniu 2020 roku zostałem przeniesiony do projektu biletowego, gdzie musiałem zmierzyć się z wieloma tymczasowymi rozwiązaniami. Pomimo trudności udało nam się wdrożyć usługę, która działała nawet podczas pokazu. Jednak z czasem zacząłem czuć się zmęczony tą sytuacją.

Ostatnią kroplą była awaria ekspresu do kawy. Zdałem sobie sprawę, że nie mogę już tego znieść i wysłałem niezadowolonego maila do mojego menedżera. W odpowiedzi otrzymałem standardową wiadomość z frazą w stylu „to się zdarza” i nikt nie wyraził chęci omówienia tej sytuacji ze mną osobiście. Ponieważ nadal byłem na okresie próbnym, postanowiłem odejść tego samego dnia.

Praca nad dwoma projektami

Po odejściu otrzymałem dwie nowe oferty: jedną od biura podróży, a drugą od agencji reklamowej. Postanowiłem odrzucić ofertę z reklamy, co rozczarowało przedstawicieli firmy, którzy poprosili mnie o ponowne rozważenie. W międzyczasie odbyłem kilka kolejnych rozmów kwalifikacyjnych i w końcu zdecydowałem się ponownie zadzwonić do agencji reklamowej. Do tego czasu znaleźli już lidera, ale zaoferowali mi stanowisko kierownicze na tych samych warunkach co poprzednio.

Starszy menedżer to bardziej samodzielna jednostka bojowa, zdolna do rozwiązywania problemów na poziomie abstrakcyjnym. Potrafi rozkładać zadania na czynniki pierwsze, doprecyzować szczegóły i identyfikować potencjalne problemy, w tym przypadki, gdy zadanie jest niepraktyczne. Menedżer średniego szczebla z kolei pracuje nad bardziej precyzyjnie określonymi zadaniami, ale może również zgłaszać sugestie. W rezultacie moja rola była ważniejsza i bardziej wymagająca w porównaniu z menedżerem średniego szczebla, ale mniej odpowiedzialna niż lider. To pozwala na wyższe wynagrodzenie przy mniejszej odpowiedzialności, dlatego się zgodziłem.

Biuro firmy przechodziło remont, którego zakończenie przewidywano za półtora miesiąca. Postanowiłem wykorzystać ten czas na krótką przerwę. Jednak już po tygodniu zacząłem odczuwać niepokój: chociaż nie szukałem nowej pracy, dręczyło mnie poczucie bezczynności. W rezultacie nie mogłem się naprawdę zrelaksować i cieszyć wolnym czasem.

Skontaktowałem się ze znajomym, który właśnie rozpoczął nowy solowy projekt, którego teraz jestem liderem. Zaoferował mi pomoc i wykonałem kilka zadań. W rezultacie pracowałem równolegle nad kampanią reklamową. W ten sposób podczas kwarantanny udało mi się z powodzeniem połączyć pracę nad dwoma projektami.

Projekt kampanii reklamowej okazał się dość prosty, pomimo niedawnego przejęcia ich platformy przez Beeline za 1,5 miliarda rubli. Skupiłem się na automatyzacji wszystkich możliwych procesów, aby zoptymalizować czas. Największe trudności pojawiły się z planowaniem, ponieważ rozmowy telefoniczne zajmowały prawie cały dzień, co jest typowym przykładem nadmiernego zarządzania. Zespół składał się zaledwie z czterech osób, wliczając lidera. W rezultacie w zeszłym roku zdecydowałem się odejść z tego projektu.

Pracowałem nad projektem arbitrażu ruchu w sektorze finansowym, związanym z zaciąganiem pożyczek. Przez prawie rok, wraz z kolegą, rozwijaliśmy złożoną funkcjonalność. Teraz nasza firma zaczęła się rozwijać i skalować w nowych obszarach: mój kolega zmienił kierunek, a ja założyłem zespół i objąłem stanowisko kierownika działu arbitrażu. Do moich obowiązków należy rozwój, zarządzanie zespołem, kontrola procesów, przygotowywanie dokumentacji, zatwierdzanie projektów oraz dyskusje z kolegami zaangażowanymi w generowanie ruchu na temat niezbędnych zasobów programistycznych.

Nie byłem w stanie długo skupić się na jednym projekcie. Otrzymałem wiadomość od znajomego ze studiów, który otworzył pizzerię i potrzebował usługi dowozu. Pracowaliśmy razem do sierpnia 2021 r., ale potem zabrakło im funduszy na realizację projektu i tymczasowo zawiesiliśmy współpracę.

Zawód programisty

Kurs dla osób, które marzą o pracy w branży IT, ale nie wiedzą, od czego zacząć lub nie są pewne siebie. Pomożemy Ci wybrać najlepszy zawód spośród sześciu, pokonać Twoje lęki i znaleźć drogę do zatrudnienia.

Dowiedz się więcej