JavaRush /Blog Java /Random-PL /Mechanika ciał odkształconych i programowanie
Сергей Алещенко
Poziom 33
Тбилиси

Mechanika ciał odkształconych i programowanie

Opublikowano w grupie Random-PL
Konto na info: info.javarush.ru Linki do sieci społecznościowych: Dossier na Instagramie :
  • Kto: Siergiej Aleszczenko
  • Pracował jako: absolwent
  • Miejsce zamieszkania: Tbilisi, Gruzja
  • Wiek w momencie rozpoczęcia szkolenia Java: 25 lat
  • Pierwsza praca jako programista: rok po rozpoczęciu szkolenia
  • Oryginalna historia sukcesu
Mechanika brył odkształconych i programowanie - 1
Jest mało prawdopodobne, aby moja historia była podobna do innych; każda ma swoje własne niuanse. Piszę swoją historię, ponieważ bardzo dobrze pamiętam, jak bardzo motywowały mnie historie zatrudnienia innych osób. Mam nadzieję, że i Tobie, drogi czytelniku, pomoże. Tak naprawdę w tej historii nie będzie ani słowa o mechanice zdeformowanej bryły. Może z wyjątkiem wzmianki o tym, że jest to specjalność autora tej historii sukcesu – Siergieja Aleszczenki. Obecnie ten mieszkaniec Petersburga zmienił (zauważamy – z sukcesem!) dwie prace i osiadł na trzeciej. Przeczytaj, a dowiesz się, jak mu się to udało (a także dowiesz się, kogo Siergiej uważa za „leniwych dupków”). Studia
  • Zaszedłem dość daleko w edukacji. Absolwent największej uczelni w Petersburgu. Co prawda w zupełnie innej specjalności: mechanice ciał odkształcalnych. W momencie zakładania Java Rush byłem na trzecim roku studiów podyplomowych Rosyjskiej Akademii Nauk (specjalność: mechanika numeryczna).

  • Nie pamiętam już, dlaczego zdecydowałem się rozpocząć naukę Java Rush . Od dawna chciałem poważnie zaangażować się w rozwój, ale czytanie „Talmudów” o językach tylko mnie zniechęciło. Musiałem znaleźć zupełnie inne podejście i wypróbowałem pierwsze dziesięć poziomów kursu. Najwyraźniej dzięki nim zdecydowałem się od razu wykupić nielimitowany abonament z udziałem w prawdziwym projekcie.

  • Nauka szła mi dość wolno, ale cały czas posuwałam się do przodu. Ukończono poziom 31 z procentem rozwiązanych problemów bliskim 100 . Zrobienie tego zajęło mi dokładnie rok.

  • Nadszedł czas na staż. Fatalnie nie udało mi się rozwiązać zadania testowego. Potrzebowałem napisać małą aplikację internetową, ale nie miałem na to czasu, ponieważ w tamtym czasie nie znałem nawet takich słów jak „ Wiosna ”, „ Hibernacja ”, „ Tomcat ” itp. Nie chciałem czekać na kolejny nabór na staż, więc samodzielnie napisałem 5-6 aplikacji internetowych podobnych do zadania testowego. W Internecie jest ich całkiem sporo, są nawet instrukcje wideo krok po kroku.
  • Szukaj
  • Osobno chciałbym podkreślić dystrybucję CV i wywiadów. To jest bardzo ważne! Chcę powiedzieć, że jeśli, drogi czytelniku, wysyłasz mniej niż 10-15 CV dziennie , to jesteś leniwym tyłkiem! To załatwione.

  • Musisz być także przygotowany na to, że za każdym razem będziesz musiał o tym przypominać, dzwoniąc do firmy, do której wysłałeś swoje CV. Jeśli chodzi o rozmowy kwalifikacyjne, z prawdopodobieństwem bliskim 100 procent otrzymasz jakiś hardkorowy test, podobny do tych, w których obfituje Quizful i inne zasoby. Gorąco polecam ćwiczyć na takich testach.

  • Znalezienie pracy zajęło mi 3 tygodnie . W tym czasie odbyłem cztery rozmowy kwalifikacyjne twarzą w twarz i dwie przez Skype . Było kilkadziesiąt odmów. Na ostatniej rozmowie korespondencyjnej zostałem zatrudniony.
  • Trochę o pracy
  • Znalazłem się w dość dużej firmie ( około 100-120 programistów ) z bardzo szerokim zakresem zadań i różnorodnymi projektami (w zależności od klienta), zaczynając od frontendu , a kończąc na surowym i bezlitosnym backendie i dataminingu .

  • Od razu zaangażowałem się w projekty ETL . Zacząłem ładować i przetwarzać zbiory danych dla szeregu klientów zagranicznych. Platforma i wszystkie narzędzia, z których korzystam, są open source. Prawie wszystkie są napisane w Javie i Groovy ( jeśli ktoś nie zna Groovy to cudowna rzecz, polecam ).

  • Oczywiście od czasu do czasu trzeba zagłębić się w kod źródłowy, bo cała ta sprawa jest bardzo uciążliwa i trzeba ją regularnie aktualizować, optymalizować i poprawiać. Pracuję około miesiąca. W tym czasie przeszedłem tak intensywne „pranie mózgu”, że połknąłem ogrom informacji, których przyswojenie zajęłoby mi samodzielnie co najmniej 2-3 lata .
  • Wskazówki Ten punkt pozwoli Ci zaoszczędzić dużo czasu podczas przygotowań. Podczas studiów kupiłem kilka książek: „ Filozofia Java ” Bruce’a Eckela, „ Algorithms: Construction and Analysis ” ( Cormen, Leiserson, Rivest, Stein ) i kilka innych na temat baz danych i architektury komputerów.
    Wiesz co? Oceń to. Mówię poważnie, zapomnij o tym. Nie przeczytałem do końca ani jednej książki. Czytanie książek to bardzo przydatne zajęcie, ale nie w tym przypadku.
    Spróbuję wyjaśnić mój punkt widzenia: w tej chwili Twoim celem jest zdobycie pracy jako programista. Nie wymaga to głębokiej wiedzy z zakresu programowania, której rozwój jest celem czytania książek. W tej chwili potrzebujesz bardzo specyficznego zestawu praktycznych umiejętności i zdolności. Wybieranie ich z książek jest zadaniem niezwykle niewdzięcznym i żmudnym. Znacznie lepszymi pomocnikami w tej kwestii będzie Java Rush lub, jeśli to możliwe, udział w jakimś projekcie open source. Jest mało prawdopodobne, że będziesz w stanie zrobić coś pożytecznego, ale przynajmniej posłuchaj inteligentnych rozmów swoich kolegów z projektu - a coś wychwycisz. Chociaż udział w projektach wcale nie jest konieczny. Jeśli potrzebujesz głębokiej wiedzy na jakiś temat, możesz łatwo znaleźć to w książce i od razu wykorzystać w swoich zadaniach. Nie ma potrzeby połykania całej książki. Myślę, że już czas to zakończyć. Wszyscy, którzy przeczytali do końca, mają się dobrze. Życzę wszystkim utrzymania pozytywnego nastawienia i pewności siebie w dążeniu do swoich celów. Okres próbny zakończył się pomyślnie w ciągu dwóch miesięcy ( miał trwać trzy ). W tym czasie byłem zaangażowany w dwa projekty: ETL ( buduję platformę transmartową dla Johnson & Johnson ) oraz machine learning ( piszę aplikację do rozpoznawania obiektów na obrazach i filmach ). 9 miesięcy później Minęło dziewięć miesięcy, odkąd kurs Java Rush pomógł mi zostać programistą. A teraz, mój drogi czytelniku, spieszę podzielić się dobrą nowiną i opowiedzieć, czym byłem zajęty w tym krótkim czasie. W mojej pierwszej pracy ( nie podam nazwy firmy, powiem tylko, że była to firma outsourcingowa ) dość szybko mi się to znudziło. Wszystko było w porządku, ale nie było żadnych poważnych projektów Java , było znacznie więcej projektów C#/.net . Poza tym po sześciu miesiącach znudziło mi się grzebanie w otwartym kodzie, przyjemność ta jest wyraźnie poniżej średniej. Biblioteki i narzędzia, z którymi udało mi się zapoznać, są najbardziej standardowe: Java , Groovy , Tomcat , Hibernate , trochę Springa , dużo Linuksa , dużo Oracle DBMS i postgreSQL . Pewnego gorącego letniego poranka zadzwoniła do mnie firma tworząca aplikację klient-serwer dla bardzo dużego bukmachera i zaproponowała mi pracę. Było więcej pieniędzy, a zadania były ciekawsze. Oczywiście od razu się zgodziłam. Najśmieszniejsze jest to, że pół roku wcześniej byłem z nimi na rozmowie ( kiedy pierwszy raz szukałem pracy) i odmówili mi. Ale teraz byłem trochę bardziej doświadczony i trochę odważniejszy. Tak więc pracowałem tam przez kilka następnych miesięcy. Szybko jednak nauczyłem się różnicy pomiędzy aplikacjami klient-serwer a aplikacjami internetowymi. Chciałem zrobić to drugie. Tutaj nie przechodzimy zbyt płynnie do dalszej części opowieści. Narzędzia, z którymi udało mi się pracować w tej firmie: Java , SWT .
    Znowu zacząłem chodzić na rozmowy kwalifikacyjne. Teraz było to o wiele ciekawsze i nawet przyjemniejsze zajęcie. Tak naprawdę przygotowanie się nie jest takie trudne, bo w większości firm podczas rozmów kwalifikacyjnych pytają, plus minus, o to samo.
    W niektórych przypadkach można nawet przewidzieć pytania i od razu wybrać najlepszą odpowiedź dla konkretnego rozmówcy. Krótko mówiąc, uczestniczyłem w kilkunastu rozmowach kwalifikacyjnych i dostałem trzy oferty pracy. Pierwsze dwa pochodzą z małych firm outsourcingowych zatrudniających 100–150 osób. Użyłem trzeciego, który pochodził ze Sbierbanku ( Sbertech ). O mojej pracy w tej firmie opowiem szczegółowo później, teraz jest za wcześnie, bo jestem tu dopiero miesiąc. Powiem tylko, że warunki pracy są więcej niż przyzwoite, zespół jest więcej niż przyjazny, zadania są bardzo poważne i ciekawe. Jestem pewien, że druga część mojej historii przypadła Ci do gustu, drogi czytelniku. Już słyszę, jak spieszysz się tak szybko, jak to możliwe, aby rozwiązać kolejny problem, który pojawił się wraz z Java Rush . Życzę Ci cierpliwości i pewności siebie. AKTUALIZACJA (17.11.2018) Jeśli chodzi o czytanie książek, nieco zmieniłem zdanie. Prawda nie jest odwrotna, ale trochę inna. Konkluzja jest taka: przygotowując się do pierwszej pracy, absolutnie nie musisz zakopywać się w książkach. Jednak po pewnym czasie, po pewnym czasie pracy, książki stały się dobrymi pomocnikami. I naturalnie, stopniowo pochłonęłam prawie wszystkie zakupione książki, a nawet kilka na wierzchu. Stało się to naturalnie. Co więcej, nie wymagało to tak dużego wysiłku, ponieważ miałem większe doświadczenie zawodowe, a materiał w książkach nie wydawał się już taki trudny (w większości). W tej chwili lista wygląda następująco: 1) Bruce Eckel „Filozofia Javy” 2) Joshua Bloch „Efektywna Java” 3) Cormen, T., Leiserson, Ch., Rivest, R., Stein, K. „Algorithms : Konstrukcja i analiza” 4) E. Tanenbaum, T. Austin, „Architektura komputerowa” 5) Strasznie dużo różnych artykułów, w większości autorstwa autorów zagranicznych. I ogólnie rzecz biorąc, wyrób sobie nawyk czytania co najmniej 2-3 artykułów każdego dnia przed pójściem spać. Każdy temat IT będzie odpowiedni, nawet jeśli nie jest ściśle związany z rozwojem. Nie bądź wielkim koniem w próżni, poszerzaj swoje horyzonty. 6) I oczywiście cała masa najróżniejszej dokumentacji, głównie tej potrzebnej do pracy. AKTUALIZACJA (1 sierpnia 2019) Ciekawe, czy ktoś tu jeszcze zagląda? A może wszyscy są zajęci rozwiązywaniem problemów?)) Cóż, rozwiązuj, rozwiązuj, to pożyteczne zajęcie =) Wiele ciekawych rzeczy wydarzyło się przez ostatnie 2,5 roku. Najpierw były zmiany administracyjne: rok temu zostałem przeniesiony z Sbertech do Sberbank PJSC. Dodatkowo zmieniłem zespół: na początku pracowałem nad silnikiem otwierania kont (fizyka, prawo). W obecnym (do którego niedawno się przeniosłem) będę zajmował się oceną ryzyka kredytowego (moduł, który zbiera informacje o kliencie i podejmuje decyzję o udzieleniu danej osobie kredytu czy nie). Moduł zbiera informacje o osobie z różnych źródeł (operatorów komunikacji, agencji rządowych itp.). Gdyby ktoś nie wiedział, prawie wszystkie pożyczki (z wyjątkiem kredytów hipotecznych lub jeśli dana osoba ma złożoną historię kredytową) w Sbierbanku są udzielane przez maszyna. Ludzie łączą się tylko w trudnych lub kontrowersyjnych sytuacjach. Jeśli chodzi o proces pracy w banku, wszystko jest proste: było milion defektów (dużych i małych), dużo usprawnień w części serwerowej (java), dużo pracy z danymi (gridgain, oracle), tam był nawet front-endem (napisanym w React, Redux i innym JavaScript). Równolegle z całą tą hańbą pojawił się devOps, tuż obok wszystkich pęknięć. Napisałem milion skryptów w Yaml, Shell, Groovy. Wykonałem kilka zadań (jenkins, nexus) związanych z ciągłą integracją, potokiem i to wszystko. Kopałem za pomocą ansible, dockera, wildfly itp. Administracja Linuksem oczywiście. Przy tym wszystkim nie mogę powiedzieć, że rozdaję dziennie 2 kg fajnego kodu, raczej 500 g, ale i tak nikt nie obraża się pieniędzmi ;) Nawet nie wiem, co w końcu powiedzieć. Najprawdopodobniej nie dają już testów na rozmowach kwalifikacyjnych, teraz trend dotyczy problemów z informatyki, algorytmów i struktur danych, matematyki dyskretnej, teorii teoretycznej i statystyki matematycznej. Powtarzaj więc całą tę czynność okresowo, jest to dobre dla zdrowia. Na przykład obecnie biorę udział w kursie dotyczącym algorytmów prowadzonym przez Roberta Sedgewicka i Kevina Weina (można go znaleźć na Coursera). Z nostalgią pamiętam, jak 3,5 roku temu rozpocząłem swoją przygodę z Java Rush, a po moim brodatym policzku spłynęła skąpa męska łza. AKTUALIZACJA (9 marca 2023 r.) Z powodu wojny opuścił kraj. Niech diabli będą Putin i jego wspólnicy. Sbierbank umożliwił mi przez kilka miesięcy pracę zdalną z zagranicy, jednak w połowie grudnia 2022 roku nadal zostałem zwolniony. Pracy w zagranicznych firmach musiałem szukać „aż do góry”. Z pewnością było to stresujące, ale nie na długo, martwiłem się na próżno. Na trzeciej rozmowie sprzedałem się firmie arabsko-emirackiej za 4500 dolarów miesięcznie. Zarobki nie są wysokie jak na standardy europejskie, ale życie w Gruzji nie jest bardzo drogie, więc wystarczy. Firma współpracuje z dystrybutorami kart SIM w wielu regionach: Afryka, Bliski Wschód, Azja. Piszemy klienta do prowadzenia bazy danych zarejestrowanych osób fizycznych i prawnych użytkowników kart SIM. Łącznie zatrudnionych jest około 250. Po 6 latach pracy w ogromnym i niezgrabnym Sbierbanku praca w małej firmie jest jak powiew świeżego powietrza. A ludzie są ciekawsi, banda obcokrajowców z kilkudziesięciu krajów i z tych samych regionów: Azji, Wschodu, Europy i innych. Prawie wszyscy pracują zdalnie, a jest z tego wiele korzyści. A w Gruzji podatki są dość niskie, 20% dla osób fizycznych i tylko 1% dla osób prawnych. Zasadniczo zdalni pracownicy mieszkający w Gruzji rejestrują indywidualnego przedsiębiorcę, przenoszą go do małej firmy, otwierają dla niej legalne konto i na tym koncie otrzymują wynagrodzenie. Płacisz 1% podatku i tyle. Mam nadzieję, że nie dokręcą śrub, bo inaczej będziemy musieli znowu ruszać. Nie wiem, co jeszcze powiedzieć. Pożegnałem się z Rosją i nigdy więcej tam nie wrócę. Umiejętności programisty Java są naprawdę łatwe do wyeksportowania, dlatego dziękuję JavaRush za umożliwienie mi zdobycia bardzo popularnego zawodu. Przy okazji, w ciągu ostatnich kilku lat przekonałem dwie osoby do zakupu subskrypcji premium JavaRush. Mam nadzieję, że Twój biznes będzie żył długo. Dbaj o siebie. Chwała Ukrainie! Chwała bohaterom!
    Komentarze
    TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
    GO TO FULL VERSION