Dla kogo jest programista? Wskazówka do zapamiętania

W artykule opisuję moją opinię na temat priorytetów przy wyborze pracodawcy dla programistów. Jako główny czynnik wskazałem wysokość wynagrodzenia, uzasadniając to faktem, że pozostawia więcej czasu na życie. Następnie podam powody, dla których nie warto dać się ponieść recyklingowi. Kontynuuję artykuł o spojrzenie na rozwój projektów domowych, co moim zdaniem pomaga nadążać za trendami w zawodzie, a w dodatku sprawia przyjemność. Doszedłem do tych przemyśleń po 8 latach pracy jako programista na pełen etat.


Zachęcam osoby doświadczone, wiedzące jak pracować i żyć do komentowania moich poglądów i wyrażania swoich opinii w kwestiach, w których stwierdzono różnice. Tym, którzy niedawno rozpoczęli swoją przygodę z programowaniem lub po prostu nigdy się nad tym nie zastanawiali, radzę nie traktować tego artykułu jako poważnego przewodnika. Napisałem o swoich odczuciach na ten temat w nadziei, że ktoś znajdzie jakieś pomocne pomysły, jeśli poczuje się zniechęcony jako programista.

Priorytety

Wybierając pracę stawiam sobie następujące priorytety.

  1. Kwota otrzymanego dochodu pieniężnego. To proste.
  2. Komfort przestrzeni pracy. Oto jak wygodne lub niewygodne może być to, co Cię otacza w pracy: odległość od domu, ludzie w biurze, wydajność komputera w pracy, pogoda w pobliżu miejsca pracy, kamera monitorująca na monitorze, monitor skierowany w stronę przejścia, relacje z kierownictwo, kary za spóźnienia i tym podobne.
  3. Możliwość rozwoju zawodowego. Obejmuje to doświadczenie, które zdobywasz w pracy. To nauka technologii, które są dla Ciebie nowe, doskonalenie tego, czego się wcześniej nauczyłeś, i zdobywanie nowych umiejętności, które są dla Ciebie przydatne. Wszystko, co sprawi, że będziesz bardziej doświadczony zawodowo.

Niewiele z tej listy można dowiedzieć się o firmie przed złożeniem wniosku o pracę. Ale biorąc pod uwagę kolejność priorytetów, możesz łatwo porównać swoją obecną pracę z inną potencjalną, znając wysokość wynagrodzenia. Czasami możesz poświęcić część drugiego i trzeciego, w imię dobrej pensji. Oczywiście dla każdego ta równowaga jest inna.


Niektórzy wstydzą się powiedzieć to na głos, ale pieniądze są pierwszym i głównym czynnikiem przy wyborze miejsca pracy. Jeśli będziesz dobrze zarabiać, nie będziesz musiał pracować w nadgodzinach i nadgodzinach, co oznacza, że ​​będziesz miał więcej czasu na cieszenie się życiem. Mój punkt widzenia jest taki: jeśli jesteś programistą z ponad 3-letnim stażem i czujesz, że chciałbyś zarabiać więcej, zacznij to osiągać, nie odkładając tego na później. Najprawdopodobniej nie ma powodu, aby nie otrzymać więcej, jeśli to możliwe.

Jak zwiększyć swoją pensję

Istnieje opinia, że ​​​​możesz po prostu poprosić o to swoje kierownictwo. To może zadziałać. Sugeruję jednak najpierw dowiedzieć się, ile inni pracodawcy są skłonni Ci zapłacić. Jeżeli nie posiadasz gotowych ofert pracy, to poszukiwania pracy musisz rozpocząć samodzielnie. Rozważ opcje zgodne z Twoim doświadczeniem i wynagrodzeniem wyższym niż obecne. Przygotuj się na wykonanie zadań testowych, rozmów kwalifikacyjnych przez Skype lub rozmów twarzą w twarz. Potraktuj to jako potencjalny zysk, nie odgradzaj się swoim ego.


Weź pod uwagę nie tylko pracodawców w swoim mieście, ale także pracę zdalną. Artykułów na temat wad pracy zdalnej jest wiele, jednak jeśli sam tego nie próbowałeś, to nadal możesz rozważyć takie opcje. Pamiętaj, że praca zdalna nie musi oznaczać pracy w domu. Za pensję programisty możesz wynająć biuro lub przenieść się do przestrzeni coworkingowej.


Musisz przygotować się do rozmów kwalifikacyjnych. Listę pytań, które mogą zostać zadane, znajdziesz w Internecie. Poświęć trochę czasu na ich przestudiowanie i przemyślenie odpowiedzi. Kolejność wywiadów jest istotna. Zacznij od pracodawcy, którego warunki wydają Ci się najmniej atrakcyjne, a następnie pnij się w górę, aby uczynić potencjalną nową pracę bardziej atrakcyjną. Istotą tej procedury jest to, że znacznie łatwiej jest ponieść porażkę na pierwszych rozmowach kwalifikacyjnych. Podczas pierwszych rozmów kwalifikacyjnych prawdopodobnie będziesz bardziej się martwić, więcej zapominać i zachowywać się mniej pewnie. Dodatkowo, jeśli otrzymasz pytania, które nie zdały Ci się na jednej rozmowie kwalifikacyjnej, możesz je przestudiować i odpowiedzieć na nie w kolejnych. Zwiększysz w ten sposób swoje szanse na otrzymanie oferty od najbardziej atrakcyjnej dla Ciebie firmy.


Jeśli przed rozmową kwalifikacyjną w firmie wydaje Ci się, że na pewno nie będziesz tam pracować, mimo wszystko potraktuj tę rozmowę poważnie, bo w efekcie mogą ujawnić się nowe szczegóły, które uatrakcyjnią tego pracodawcę. Zawsze warto pamiętać, że wybierasz nową pracę, mimo że wszystko zaczęło się od chęci podwyższenia wynagrodzenia.


Jeśli zaczynasz mieć wrażenie, że podchodzisz do nadchodzącej rozmowy kwalifikacyjnej zbyt poważnie i bardzo się tym martwisz, to rada jest odwrotna do poprzedniej: postrzegaj pracodawcę nie jako potencjalnego, ale po prostu jako sposób na podniesienie kwalifikacji pensję w obecnej pracy, wiedząc, że jeśli to nie wyjdzie, to po prostu nic się nie zmieni. Ale znajdź równowagę, aby sprawiać wrażenie profesjonalisty, a nie natrętnego faceta z nadętym ego.


Gdy otrzymasz atrakcyjną ofertę pracy, nie odchodź po cichu od pracodawcy. Omów sytuację z osobą podejmującą decyzję o podwyższeniu wynagrodzenia. To bardzo ekscytujący moment; za pierwszym razem możesz nie mieć wystarczającej determinacji. Jeśli nie czujesz się komfortowo omawiając tego typu kwestie, możesz spróbować rozpocząć dyskusję za pośrednictwem poczty elektronicznej. Ale najprawdopodobniej nadal będziesz musiał komunikować się głosowo.


Jeśli nie masz pomysłu, jak zdobyć się na odwagę i poprosić o podwyżkę, to sugeruję Ci co następuje. Zacznij podkreślać dla siebie wszystkie mankamenty swojego obecnego miejsca pracy: jak bardzo nie podoba Ci się, że ktoś ciągle podgrzewa rybę w porze lunchu, że klimatyzacja działa tuż nad Twoimi plecami, jak złości Cię kara za bycie minutę spóźnienia do pracy, jak bardzo jesteś zmęczony wdrażaniem funkcji, których tak naprawdę nikt nie potrzebuje, jak bardzo jesteś zmęczony stosem stosowanych technologii, jak długo nie nauczyłeś się czegoś nowego. Ale co najważniejsze, wyobraź sobie, że możesz zarabiać +X% pieniędzy, ale nie dostaniesz tego ze względu na swojego pracodawcę. Czy podoba Ci się, gdy pracodawca zatrzymuje Twoje pieniądze? NIE? Idź i porozmawiaj z nim o tym. Po prostu nie idź do pracy urażony, rób swoje jakoś, mając nadzieję, że menadżer to zauważy i coś zaproponuje. To jest nieprofesjonalne.


Jeśli menedżer odmówi Ci awansu i pozwoli Ci odejść, czas odejść. Jak często możesz prosić o podwyżkę? Pod warunkiem, że otrzymasz oferty znacznie lepsze niż Twoja obecna sytuacja. Ale nie próbuj oszukiwać, po przejściu wszystkich rozmów kwalifikacyjnych powinieneś mieć ważną ofertę pracy.

Praca po godzinach

Praca na pełny etat oznacza, że ​​pracujesz 40 godzin tygodniowo. Jeśli zostaniesz poproszony o więcej pracy, pamiętaj, że praca zajmuje już około jednej trzeciej całego Twojego codziennego życia. Jeśli nie masz w życiu nic innego poza pracą i snem, możesz zabić czas pracą. W przeciwnym razie zastanów się nad swoimi priorytetami. Nie zgadzaj się na pracę w godzinach nadliczbowych, jeśli nie są one wystarczająco opłacane. Ale nawet w tym przypadku może się okazać, że po prostu nie masz czasu na wydawanie swojej pensji. Może Ci się wydawać, że teraz odłożysz pieniądze na mieszkanie, potem na samochód, potem na rodzinne wakacje, a potem życie potoczy się dalej. Ale życie już toczy się dalej, a ty się starzejesz. Spróbuj jednak zacząć zarabiać więcej za te same 40 godzin tygodniowo, a nie za nadgodziny. Spędzaj wolny czas robiąc to, co lubisz i ucząc się nowych rzeczy, aby nadążać za trendami w swoim zawodzie.

Projekty domowe

Istnieje powszechna opinia, która brzmi mniej więcej tak: „Już programuję cały dzień, nie mam już energii, aby wrócić do domu i opracować jakiś projekt lub zaangażować się w open source”. Rozumiem, że nie każdy jest wielkim fanem programowania dla samego procesu i dla nich powyższa opinia jest prawdziwa. Zakładam jednak, że w przypadku niektórych powodem jest to, że po prostu nie próbowali zaprogramować dla siebie niczego interesującego. Być może po prostu nie pomyśleli o czymś ciekawym, co można by stworzyć, a może nawet nie próbowali o tym myśleć.



Może się wydawać, że nie będziesz miał na to czasu. Ale tworzenie projektów domowych ma znacznie więcej wspólnego z kreatywnością niż codzienna praca programisty. Jest też doskonały komiks o czasie na kreatywność. Chodzi o to, że gdy programujesz dla zabawy, wpadasz w pośpiech, przez który trudno się zatrzymać, nawet na zjedzenie posiłku czy spanie. Pamiętaj jednak, że poza programowaniem są w życiu inne ciekawe rzeczy, szukaj równowagi.

Zawód programisty jest stosunkowo nowy, więc niewiele jest w nim utartych ścieżek. Specjaliści o tym profilu zazwyczaj swoją drogę do sukcesu odnajdują metodą prób i błędów.

W jaki sposób mogą wykorzystać zgromadzone doświadczenie?

Kariera horyzontalna jako programista wykonawczy

Najlepszym wyborem dla maniaka jest (czyli ukierunkowane szkolenie bez zmiany statusu zawodowego). Programista, który stale się doskonali, jest cennym pracownikiem.

Jest mało prawdopodobne, aby obraził się przy podziale funduszu wynagrodzeń. Stanie się godnym kandydatem na miejsce w jakiejś bardziej renomowanej firmie, aż do organizacji międzynarodowych.

Wskazówka do zapamiętania:

Być generalistą w IT jest nierealne. Aby szybko poruszać się w poziomie, wybierz konkretny kierunek(bazy danych, C++, Java itp.) i staraj się być w tym najlepszy.

Awans na eksperta

Po osiągnięciu pewnego poziomu zrozumiesz, że jesteś gotowy podzielić się swoim doświadczeniem. Na tym etapie otwiera się przed Tobą nowa perspektywa – samorealizacja w roli konsultanta.

Możesz konsultować się zarówno z klientami offline (na przykład firmami miejskimi, które tworzą witrynę sprzedażową do sprzedaży produktów), jak i klientami z przestrzeni wirtualnej. Dobra praca tego rodzaju zapewni ci sławę, a to z kolei zapewni dochód.

Marzysz o zostaniu szanowanym ekspertem? Nie skupiaj się wyłącznie na programowaniu. Ucz się łatwo komunikować się z ludźmi, kompetentnie i w przenośni Wyrażaj myśli.

Praca menadżerska

Jeśli osiągnąłeś poziom eksperta, ale nie chcesz rejestrować indywidualnego przedsiębiorcy, spróbuj zbudować karierę pionową w renomowanej firmie.

Twoim zadaniem będzie planowanie i nadzorowanie pracy pozostałych specjalistów.

Zasadniczo będziesz szefem. Dlatego rozwijaj się w sobie umiejętności kierownicze, naucz się motywować ludzi.

Własny start-up

Inną opcją kariery – być może najtrudniejszą – jest ożywienie własnego projektu (na przykład uruchomienie jakiejś autorskiej płatnej usługi).

Startupy odnoszą sukces tylko dla tych programistów, którzy to osiągnęli duch przedsiębiorczości lub znajdź doświadczonego partnera biznesowego.

Nie przystępuj od razu do dużego projektu, który wymaga ogromnej inwestycji czasu i pieniędzy. Na początek spróbuj swoich sił w biznesie, który początkowo pozwoli Ci zachować dotychczasowe źródło dochodów.

Być może po przeczytaniu artykułu zaczniesz szukać wakatu. Skorzystaj z tych opublikowanych w naszym katalogu.


Rozglądając się wokół siebie, myślę, że niezbyt często zdarza się, wydaje mi się, że ludzie pozostają programistami przez wiele, wiele lat. Najczęściej przez kilka lat stopniowo przechodzą na stanowiska menedżerskie, początkowo nadal pisząc kod, ale potem coraz częściej przejmują coraz więcej obowiązków menedżerskich. Często idą do Zarządzania Produktem. Niektórzy, rzadziej, w marketingu. Wielu wchodzi w świat startupów i zostaje samodzielnymi biznesmenami – nawet jeśli nadal piszą kod, to już na nich działa. Odwrotny ruch, od innych zawodów do programistów, prawie nigdy nie następuje w połowie kariery, tylko na początku (od matematyków, fizyków, inżynierów, czy kogokolwiek innego, jeśli ma się do tego skłonność).

W przewidywalnej przestrzeni są programiści powyżej 50. roku życia, ale jest ich dość niewielu. Jak wyjaśnić dlaczego? - Czy dzieje się tak dlatego, że ludzie najczęściej wybierają stanowiska kierownicze i inne zawody? - czy raczej dlatego, że zawód ten wciąż bardzo szybko się rozwija, a 30 lat temu znacznie mniej osób kształciło się na programistę i wchodziło do zawodu, więc teraz jest ich niewielu w ogólnej masie? Prawdopodobnie oba wyjaśnienia są poprawne, ale może któreś z nich jest o wiele ważniejsze? Nie wiem.

Mam 37 lat i poza kilkoma nastolatkami pracującymi na pół etatu, programowaniem zajmuję się od nieco ponad 20 lat. Większość tego czasu spędzam w firmach, w których nie jestem swoim własnym szefem. Do tej pory świadomie opierałem się nurtowi, który przyciąga programistów do zarządzania z dwóch powodów. Czuję, że mniej mi się to podoba i nie sądzę, że będę w tym zbyt dobry. Do tej pory nie żałowałem tej decyzji. Ale co będę robić za kolejne 20 lat, zakładając, że żyję, jestem stosunkowo zdrowy i nadal pracuję? Wiele może się jeszcze zmienić; ale jeśli nie będę specjalnie próbował trzepotać, prawo bezwładności życia mówi, że nawet w wieku 57 lat będę naciskał klawisze i wprowadzał słowa kluczowe w edytorze tekstu w jakiejś firmie. Czy dla 57-letniego mnie będą dobre, ciekawe możliwości i projekty w branży, tak jak będzie za 20 lat? Teraz w naszej branży, powtarzam, są programiści po 50-tce, ale jest ich całkiem sporo...

Niedawna dyskusja na temat HN („Co dzieje się ze starszymi programistami?”) skłoniła mnie do przemyśleń na ten temat i choć nie dostarczyła konkretnej odpowiedzi, zasugerowała wiele możliwości. Górny komentarz dobrze podsumowuje różne możliwości rozwoju, które opisałem powyżej: zostań menadżerem, pozostań programistą i pogłębiaj swoje umiejętności, zostań start-up-biznesmenem, przejdź do zupełnie innego zawodu. W komentarzach jest wielu ludzi takich jak ja, którzy mimo wszystko wolą zarabiać pieniądze, używając słów kluczowych w edytorze. Osoby po 50. roku życia częściej piszą, że jeśli utrzymają wiedzę techniczną i będą z duchem czasu, nie mają trudności ze znalezieniem pracy – choć są to w większości opinie amerykańskie, w innych krajach może być inaczej. Nie jest jednak jasne, ilu pozostało tych, którzy chcieli tego samego, ale mieli trudności ze zmianą pracy na starość lub że trudno było im zaakceptować fakt, że wszyscy w ich wieku przewyższyli ich w hierarchii lub że po prostu mieli dość .

Oczywiście tylko ja mogę sam zdecydować, czy powinienem „specjalnie spróbować i trzepotać”, czy też kontynuować słowa kluczowe i redaktorów. Ale chętnie poznam opinię programistów, obecnych i obecnych, którzy przekwalifikowali się na kierowników budynków lub którzy do tego dążą, na ten temat.

Swoją drogę do kariery programisty powinieneś rozpocząć od odpowiedzi na pytanie, czy w ogóle potrzebujesz programowania? Pytanie to nie dotyczy osób, które studiują lub studiowały na kierunku zbliżonym do programowania. Jeśli w szkole radziłeś sobie lepiej z matematyki niż nauk humanistycznych, jeśli lubisz spędzać dużo czasu przy komputerze, jeśli chcesz nauczyć się czegoś nowego, to programowanie jest dla Ciebie.

Gdzie zacząć

Istnieje kilka opcji rozwoju wydarzeń, w wyniku których osoba zostaje programistą. Pierwszą z nich są rodzice-programiści, którzy wszystkiego nauczyli swoje dzieci. Te dzieci nie muszą nawet studiować na uniwersytecie. Drugą opcją jest modny zawód programisty. Po szkole musieliśmy wybrać, gdzie pójść na studia i wybraliśmy modny kierunek IT, który wydawał się nam podobać. Ostatnia opcja to hobby, które przerodziło się w pracę.

Jeśli nie przydarzyła Ci się żadna z powyższych sytuacji, masz do wyboru cztery opcje:

  • Samokształcenie. Opcji tej można używać niezależnie lub w połączeniu z innymi metodami. Internet jest pełen aplikacji, które pomagają w nauce różnych języków programowania i technologii. Ale to jest najtrudniejsza ścieżka dla początkujących.
  • Uniwersytet. Jeśli skończysz szkołę i chcesz zostać programistą, to idź na studia. Jeśli nie dla wiedzy, to dla skorupy. Może służyć jako bonus przy ubieganiu się o pracę. Chociaż i tak zdobędziesz trochę wiedzy. Ale nie zapomnij się kształcić. Do wyboru uczelni należy podchodzić bardzo odpowiedzialnie. Uważnie przestudiuj programy szkoleniowe i wybierz najlepsze uczelnie techniczne.
  • Mentor. Bardzo dobrze będzie, jeśli znajdziesz osobę, która zgodzi się Ci pomóc i wskaże Ci właściwy kierunek. Zasugeruje odpowiednie książki i zasoby, sprawdzi Twój kod i udzieli przydatnych porad. Swoją drogą pisaliśmy już o tym, gdzie można znaleźć mentora. Możesz szukać mentora wśród znanych programistów, na imprezach i konferencjach IT, na forach internetowych i tak dalej.
  • Specjalistyczne kursy praktyczne. Spróbuj poszukać kursów w swoim mieście, które nauczą Cię jakiegoś języka programowania lub technologii. Byłem mile zaskoczony ilością takich kursów w Kijowie, w tym bezpłatnych i późniejszym zatrudnieniem.

Jaki język, technologię i kierunek wybrać

Kiedy zostaniesz programistą, po roku lub dwóch będziesz mógł wybrać dowolny język. Jednak wybierając pierwszy język programowania, początkujący powinien wziąć pod uwagę następujące kryteria:

  • Dostępność ofert pracy na rynku. Ostatecznym celem tej ścieżki jest znalezienie pracy jako programista. A to będzie trudne, jeśli na rynku pracy nikt nie będzie szukał programistów w Twoim języku programowania. Sprawdź portale z ofertami pracy, zobacz, kto jest najbardziej poszukiwany, zapisz kilkanaście języków. I przejdź do następnego kryterium.
  • Niski poziom wejścia. Jeśli musisz poświęcić dużo czasu na naukę języka, może to w ogóle zniechęcić Cię do programowania. Przeczytaj o językach, które wybrałeś powyżej. Przejrzyj literaturę, którą będziesz musiał przeczytać, aby nauczyć się tych języków. I wybierz te, które są opisane jako łatwe lub które wydawały ci się łatwe. Takimi językami mogą być PHP, Ruby, Python.
  • Dreszcz procesu. Jeśli nie lubisz pisać kodu w wybranym języku, nie będziesz zadowolony z tego procesu, swojej pracy ani życia. Potrzebujesz tego? Dokonuj właściwych wyborów.

Będziesz musiał także zdecydować o kierunku programowania. Urządzenia mobilne, komputery stacjonarne, gry, strony internetowe, programowanie niskiego poziomu i tak dalej. Najpopularniejsze i stosunkowo łatwe branże to tworzenie aplikacji dla klientów webowych, mobilnych i desktopowych. Dla każdego kierunku może być odpowiedni jeden język, a inny wcale. Oznacza to, że wybierając język programowania, warto również zacząć od tego czynnika.

Tak czy inaczej, naucz się technologii internetowych. Jest to język znaczników HTML, style CSS i , które sprawią, że Twoja strona będzie dynamiczna. Następnym krokiem jest nauka języka po stronie serwera (Python, PHP, Ruby i inne) oraz odpowiednich dla niego frameworków webowych. Przestudiuj bazy danych: prawie każdy wakat programisty wspomina o tym.

Jak zdobyć pierwsze doświadczenie

Bez doświadczenia nie dostaniesz pracy. Bez pracy nie zdobędziesz doświadczenia. Błędne koło prawdziwego życia. Ale nic to, poradzimy sobie z tym.

Po pierwsze, nie czekaj, aż przeczytasz każdą książkę na temat wybranego języka programowania. Zacznij pisać pierwsze linie kodu po drugim rozdziale książki. Wykonaj wszystkie zadania z książek, przepisz przykłady, zrozum je. Komplikuj przykłady i zadania z książek, korzystając z własnych pomysłów. Twórz własne zadania do przerobionego materiału. Rozwiąż te problemy.

Po drugie, musisz znaleźć swoje pierwsze projekty. To prawdopodobnie najtrudniejsza opcja, ale działa. Będziesz musiał sam szukać zamówień, realizować je i męczyć się z płatnością. Dla początkującego jest to niezwykle trudne, ale wtedy wszystkie inne opcje będą wydawać się bułką z masłem. Zrealizowane projekty można zapisać jako doświadczenie i pokazać przyszłemu pracodawcy. Prawdziwe projekty to duży plus w Twoim CV.

Jeśli znasz język angielski, lepiej zarejestrować się na giełdach anglojęzycznych. Tam rynek jest większy. Jeśli nie znasz angielskiego, naucz się go. W międzyczasie dostępne są rosyjskojęzyczne giełdy zewnętrzne. Poszukaj małych projektów, które są na poziomie Twoich umiejętności lub nieco powyżej nich. Aplikuj na kilkadziesiąt takich stanowisk. I przygotuj się na morze odmów. Ale jeśli wpłynie jedna lub dwie aplikacje, będziesz miał szansę zdobyć prawdziwe doświadczenie.

Inną dobrą opcją na zdobycie prawdziwego doświadczenia jest oprogramowanie typu open source. Do takich projektów zawsze potrzeba nowych ludzi, nawet początkujących. Możesz wyszukiwać błędy w projekcie lub zajrzeć do narzędzia do śledzenia błędów i zaproponować metody ich rozwiązania. Takie projekty można łatwo znaleźć na GitHubie lub . Tam śmiało możesz zadawać pytania.

Czwartą możliwością zdobycia doświadczenia jest pomaganie innym programistom. Poproś ich, aby przekazali Ci małe, proste zadania. Jeśli coś nie wyjdzie, zawsze będziesz miał do kogo się zwrócić. A jednocześnie będziesz uczestniczyć w prawdziwym projekcie.

Ostatnim sposobem są własne projekty, różne hackatony lub praca w przestrzeni coworkingowej. Trudno jest samodzielnie rozpoczynać własne projekty, lepiej poszukać znajomych lub przyjaciół.

Dlaczego warto wybrać Pythona

Porozmawiajmy trochę więcej o wyborze pierwszego języka programowania. Pierwszy język powinien być prosty i popularny na rynku. Taki język jest Pyton. Gorąco polecam wybranie go jako pierwszego języka programowania.

Kod programu w Pythonie jest czytelny. Nie musisz nawet być programistą, aby uzyskać podstawową wiedzę o tym, co dzieje się w programie. Dzięki nieskomplikowanej składni Pythona napisanie programu zajmie Ci mniej czasu niż np. w Javie. Ogromna baza bibliotek, która pozwoli Ci zaoszczędzić wiele wysiłku, nerwów i czasu. Python jest językiem wysokiego poziomu. Oznacza to, że nie musisz zbytnio myśleć o komórkach pamięci i tym, co tam umieścić. Python jest językiem ogólnego przeznaczenia. I jest to tak proste, że nawet dzieci mogą się tego nauczyć.

Gwoli ścisłości warto wspomnieć o innych językach programowania. Jawa może być dobrym wyborem dla początkującego. Język ten jest bardziej popularny niż Python, ale też nieco bardziej złożony. Ale narzędzia programistyczne są znacznie lepiej rozwinięte. Wystarczy porównać Eclipse i IDLE. Po Javie łatwiej będzie Ci przejść do pracy z językami programowania niskiego poziomu.

PHP- kolejny bardzo popularny język. Myślę, że jest to nawet prostsze niż Python. Na forum bardzo łatwo jest znaleźć mentora lub rozwiązanie problemu. Dzieje się tak dlatego, że na świecie jest ogromna liczba programistów PHP na różnych poziomach. W PHP nie ma normalnego importu; istnieje wiele opcji rozwiązania tego samego problemu. A to komplikuje naukę. PHP jest przeznaczone wyłącznie dla Internetu.

Języki C I C# bardzo trudne dla początkującego. Rubin- dobry wybór jako drugi język, ale nie pierwszy. JavaScript- bardzo prosty język, ale niczego dobrego cię nie nauczy. Ale zadaniem pierwszego języka programowania jest wciąż nauczenie cię czegoś prawidłowego, ustalenie jakiejś logiki.

Czy angielski jest ważny?

Ważny! Nie wiem? Uczyć. Czy wiesz? Poprawić. Naucz się czytać, pisać, słuchać i mówić po angielsku. Skoncentruj się na literaturze technicznej. Słuchaj podcastów w języku angielskim. Przeczytaj anglojęzyczne podręczniki programowania.

Co musisz wiedzieć poza językiem programowania

Oczywiście oprócz języka programowania i angielskiego trzeba znać jeszcze coś. Ale co zależy od kierunku, który wybierzesz. Programista WWW musi znać HTML, CSS, JavaScript. Programista komputerowy uczy interfejsów API systemu operacyjnego i różnych frameworków. Programista aplikacji mobilnych uczy się frameworków Android, iOS czy Windows Phone.

Każdy musi nauczyć się algorytmów. Spróbuj wziąć udział w kursie na Courserze lub znaleźć odpowiednią dla siebie książkę o algorytmach. Dodatkowo trzeba znać jedną z baz danych, wzorce programistyczne i struktury danych. Warto także sprawdzić repozytoria kodu. Przynajmniej z jednym. Wymagana jest znajomość systemów kontroli wersji. Wybierz Git, jest najpopularniejszy. Musisz znać narzędzia, z którymi pracujesz, system operacyjny i środowisko programistyczne. A główną umiejętnością programisty jest umiejętność korzystania z Google. Bez tego nie będziesz żyć.

Ostatnie kroki

Musisz przygotować CV. Nie tylko CV, ale plik . Nie powinieneś tam pisać, ale nie musisz też milczeć na temat swoich umiejętności. Gdy zostaniesz zaproszony na rozmowę kwalifikacyjną, musisz się do niej przygotować. Przejrzyj materiały wymienione w Twoim CV. Musisz być pewny swojej wiedzy. Przejrzyj projekty, nad którymi pracowałeś, pomyśl o technologiach, z których korzystałeś. I dalej - w świetlaną przyszłość z nowym zawodem programisty.

Pomyśl o swojej karierze. Zdjęcie: Fajka kimberlitowa Udachnaya, Jakucja.

Zły programista to taki, który nie stara się zostać CIO. Ambicja i chęć osiągnięcia wyżyn zawodowych zwykle idą w parze z chęcią zostania doskonałym profesjonalistą w swojej dziedzinie.

Menedżerowie HR często wymieniają możliwość rozwoju zawodowego jako jeden z punktów przy zatrudnieniu młodego specjalisty, a w przypadku większości dużych firm IT perspektywy rozwoju zawodowego programisty są wypisane dosłownie punkt po punkcie. Plan taki odzwierciedla główne czynniki, które powinny poprawić wyniki pracownika w celu późniejszego awansu na wyższe stanowisko.

Rozważmy ścieżkę kariery programisty na przykładzie ruchu pionowego, gdyż jest to klasyczna i najczęstsza ścieżka od stażysty do menedżera. Poza tym to właśnie rozwój pionowy przyczynia się do najszybszego awansu zawodowego.

Stażysta (młodszy programista)

Większość programistów rozpoczyna swoją karierę od tego pierwszego kroku. Wśród głównych wymagań dotyczących zatrudnienia:

Wykształcenie wyższe lub niepełne techniczne.
Znajomość podstaw języków programowania.

Pierwsze stanowisko młodego specjalisty nie wiąże się z udziałem w dużych projektach: przypisuje się mu rolę wykonywania standardowych, typowych zadań. Na tym etapie programista ma wystarczająco dużo czasu, aby udoskonalić swoje umiejętności i zdobyć maksymalny możliwy poziom wiedzy, aby móc działać dalej. Pomoże Ci zdobyć podstawową wiedzę.

Programista

Do czasu przejścia na to stanowisko programista musi co najmniej:

Posiadać wykształcenie specjalistyczne (najlepiej techniczne, ale nie wymagane).
Wiedzieć wszystko o inżynierii oprogramowania.
Biegła znajomość kilku języków programowania.
Znajomość systemów zarządzania bazami danych, usług sieciowych i systemów operacyjnych.

Na tym etapie obowiązki pracownika osiągają zupełnie inny poziom – powierza się mu rozwój i wdrażanie oprogramowania, powierza się pracę nad nowymi projektami i utrzymanie istniejących.

Menedżerowie HR podkreślają, że na stanowisku programisty ważne jest, aby pracownik wykazał się nie tylko specjalistą w zakresie procesów programistycznych, ale także osobą towarzyską, niekonfliktową. Dalszy awans po szczeblach kariery wiąże się z bliższym kontaktem z zespołem, pracownikami innych działów i szefami działów, dlatego bardzo ważne są cechy osobiste.

Główny programista

Wymagania wobec wnioskodawcy obejmują dodatkowo:

Doświadczenie w dużej specjalistycznej firmie, od 2 lat.
Udział w komercyjnych projektach korporacyjnych.

Zakres zadań zawodowych stojących przed wiodącym programistą obejmuje wykonanie szczegółowego projektu komponentów w oparciu o istniejącą specyfikację ogólną, a także programowanie i wstępne testy komponentu. Mówiąc o perspektywach dalszego rozwoju, warto zauważyć, że czołowi programiści, którzy nie tylko mają potencjał, ale także wiedzą, jak zorganizować pracę grupy osób, mają większą szansę na dalsze awansowanie po szczeblach kariery.

Kierownik Działu Rozwoju (Lider Zespołu)

Wszelkie dodatkowe wymagania stawiane kandydatowi na to stanowisko ograniczają się zasadniczo do doświadczenia w zarządzaniu co najmniej dwuosobowym zespołem deweloperskim oraz posiadania umiejętności menadżerskich. Menedżer musi znać podstawy zarządzania projektami, umieć przygotowywać skuteczne, inteligentne prezentacje i występować przed publicznością. Potrzebuje także umiejętności delegowania uprawnień, identyfikowania problemów i najskuteczniejszych sposobów ich rozwiązywania.

Do głównych obowiązków z reguły należy administrowanie projektem i podejmowanie decyzji projektowych, organizowanie pracy zespołu i rozwiązywanie wszelkiego rodzaju problemów technicznych.

Menadżer projektu

Jak pokazuje praktyka, na tym stanowisku najlepiej radzą sobie specjaliści posiadający zarówno umiejętności menadżerskie, jak i wiedzę z zakresu rozwoju. Czasem jednak kierownicy projektów stają się ludźmi, którzy są daleko od faktycznej dziedziny programowania. Dlatego każdy ambitny programista na tym etapie ma wielu konkurentów. Tutaj ważne jest, aby wykazać się jako dobry i inteligentny menadżer, który ma w torbie dość nietrywialnych pomysłów.

Idź dalej – w kilku kierunkach: przejdź do innego, ciekawszego i zakrojonego na większą skalę projektu, rozwijaj się jako dyrektor ds. rozwoju lub zostań dyrektorem IT. Wybrana ścieżka w dużej mierze zależy od zainteresowań specjalisty i dziedziny, w której stara się on wykazać.