Wpis z mikrobloga

Czuję się dziwnie dostając oferty na crudowca, mam 5 lat doświadczenia komercyjnego (.net, azure, react, angular), przedtem jeszcze 7 lat doświadczenia jako freelancer (php, .net). Zawsze stroniłem od klepania crudów, skupiałem sie na dołączaniu do ambitniejszych projektów, gdzie jest przykładowo CA, CQRS, ES, serverless, DDD. Teraz dostaje jedynie oferty na klepanie crudów w MVC, a jak nie jest to wyszczególnione w ofercie, na rozmowie wychodzi, że zbyt ambitnie podchodzę do formy, teraz jest kryzys i trzeba spalać storypointy. W aktualnej firmie dostałem wypowiedzenie, za to że nie klepię kodu tylko za bardzo analitycznie podchodzę do swojej roli. Od kilku lat biorę udział w różnych mentoringach i kursach na architekta, chcę podchodzić do swojej pracy ambitnie - o ile pół roku było jeszcze na to miejsce, czuję że sytuacja teraz będzie wymagać na mnie żeby się „zeszmacić” i klepać kod bez głębszej myśli.

#programista15k #programista25k #programowanie
  • 36
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 0
@LezliNilsen: Post autentyczny, bez zarzutek, jestem wręcz fanatykiem, czytam dużo literatury specjalistycznej, robię dużo projektów na boku, które często wyglądają lepiej niż projekty, w których pracuje komercyjnie, po 7 latach freelancerki byłem znudzony prostymi zleceniami na aplikacje MVC i wydaje mi się, że po prostu mam rozbieżność między stażem w CV, a faktyczna wiedza. Udział w mentoringach pod SA biorę od 2 lat.
  • Odpowiedz
@montmartre: W Javie jest tak samo. To raczej problem języka. W C#/Javie zazwyczaj się klepie aplikacje biznesowe w dla korpo i tam nie ma nastawienia na jakość tylko ma działać i kolejne feature’y mają być dowożone w Sprintach za wszelką cenę.
W dużym uproszczeniu, wybrałeś stack oraz posiadasz stack typowego Crudowca.

Jest sporo projektów ambitnych gdzie naprawdę kładzie się nacisk na jakość i dobrą architekturę ale musisz z domeny korpo wyprowadzić. Zacznij się interesować projektami pisanymi w Rust, GoLangu oraz tematyką networkingu/clouda. Czy ML / Data Enginieering.

Jeżeli chodzi o języki C# i Java to już środowisko jest zeszmacone i traktuje się nas jak roboli co mają z---------ć w Sprintach i dowozić za wszelką cenę. Tutaj nie ma być jakości, tylko ma działać. Ma być szybko i tanio. Tam było najłatwiej wejść, nawet ludziom z
  • Odpowiedz
@montmartre: Co wychodzi lepiej finansowo? CRUDy czy projekty rozwojowe? Co do wypowiedzenia - wiesz co, tak wygląda biznes. Często, jeśli nie prawie zawsze, najważniejszą rzeczą jest to, żeby oprogramowanie było na czas i działało. Dyskusje i analiza jest istotna, ale musi być dodatkiem do realnej pracy.
  • Odpowiedz
@montmartre: Życie to nie rzeczywistość z książek Uncle Boba. Biznes w pierwszej kolejności ma zarabiać. Gdybyś był taki doświadczony jak piszesz to byś wiedział, że w DDD wyróżnia się poddziedziny (główne, wspierające i generyczne). I w zależności od tego w której poddziedzinie jesteśmy to używamy odpowiednich narzędzi by ją zamodelować i zaimplementować. Pewnie jesteś z tych co każdą aplikację piszą "jak należy".

A prawda jest taka, że wzorce taktyczne DDD,
  • Odpowiedz
  • 0
@markaron: o większości rzeczy, które opisałeś wiem, i wyjdę jeszcze dalej, część SD można rozwiązać nawet skryptami pythonowymi, czy nawet low-code/no-code, a co do GD nikt nie będzie pisał milionowej wersji IAMa tylko podepnie się pod AD. Sam jestem wyznawcą założenia, że część wymagań da się pokryć gotowymi SaaSami czy PaaSami.
  • Odpowiedz
@montmartre: No to nie wiem skąd twoje zdziwienie? Po prostu w większości korpo aplikacji stosowanie tłustych wzorców projektowych i architektur nie ma sensu bo niepotrzebnie komplikuje zwykle proste rozwiązanie i wpływa negatywnie na koszt projektu. A takich rasowych projektów gdzie sprawdziłoby się DDD i mikroserwisy czy serverless jest zwyczajnie mało i trzeba mieć duże szczęście żeby do takiego projektu trafić bo jego sens biznesowy musi uzasadniać wysokie koszty nie tylko
  • Odpowiedz
  • 0
@markaron: i to jest bardzo sensowna odpowiedź, miałem inne spostrzeżenia co do rynku. Możliwe, że ze względu na to, że miałem przyjemność brać udział właśnie w takich projektach. Wiem, że za tymi wszystkimi decyzjami stoją zazwyczaj wymagania biznesowe takie jak dostępność, skalowalność, czy niskie prawdopodobieństwo wystąpienia błędów. Siedziałem głównie w sektorze finansowym, gdzie często takie wymagania definiują wybór struktury rozwiązań, teraz niestety dostępność takich projektów jest z tego co widzę
  • Odpowiedz
@montmartre wydaje mi się że Twoim problem jest to że nie masz za dużo życia poza pracą. Jeśli zamiast zrealizować zadanie zadajesz sobie pytanie jak je zrobić ambitnie to nie dziwię się że dostałeś wypowiedzenie. Co to za kryterium? W pracy nie chodzi o to aby kod był ładny, żeby architektura była rozbudowana i pięknie poukładana. Ma działać tak jak ktoś chce, niezawodnie i tanio. Niestety czasem do organizacji wchodzi ktoś
  • Odpowiedz
@montmartre: Aspirujesz do bycia architektem więc rada od architekta z wieloletnim stażem - jako architekt będziesz pomiędzy biznesem i zespołem projektowym i będziesz musiał wybierać pomiędzy idealną architekturą a oczekiwaniami biznesu i tłumaczyć programistom dlaczego akurat dziś trzeba zrobić hacka w kodzie żeby dowieźć ficzer "na wczoraj" zamiast głebokiej refaktoryzacji, która zajmie tydzień i kod będzie clean, ale przez ten czas biznes będzie w plecy 50k $

Tak samo w drugą stronę będziesz musiał przekonywać biznes i tłumaczyć im dlaczego coś zajmie 2 tygodnie, zamiast 2 dni tak jak by sobie tego życzyli, więc:

- rada 1 - zamiast nowego kursu na Udemy o Kubernetesie zainwestuj w książki albo kursy na temat negocjacji biznesowych i bycia asertywnym. Ludzie z biznesu którzy zlecają ci zadania do wykonania są zwykle mistrzami manipulacji i wywierania presji bo mają takie szkolenia 3 razy w roku i jest to ich być albo nie być w biznesie, więc musisz wiedzieć jak z nimi efektywnie rozmawiać i
  • Odpowiedz
@montmartre:

Szczęście w nieszczęściu, że pierwsza rada dość mocno jest pokryta przez moją osobowość socjopatyczną. Jak ogromnie mi to niszczy życie osobiste, tak zauważyłem, że w kwestiach zawodowych mam znaczącą przewagę w wielu dyskusjach.


No to jeszcze musisz popracować nad tym by swoją socjopatyczność ukryć za miłą buźką - w biznesie większość ludzi to mniejsi lub więksi socjopaci ale ukrywający się za ładnym wyglądem i "szczerym" uśmiechem. Wystarczy popatrzeć na
  • Odpowiedz
robię dużo projektów na boku, które często wyglądają lepiej niż projekty, w których pracuje komercyjnie


@montmartre: nie ma w tym nic dziwnego.

Kod pisany dla biznesu nie jest celem samym w sobie. W kontekście biznesowym trzeba znaleźć złoty środek - kod ma być na tyle dobry, żeby dało się go utrzymywać i rozwijać, ale najwyższy priorytet ma to aby ten kod działał i robił to co ma
  • Odpowiedz
  • 0
@markaron: akurat nad tym nie muszę pracować, przez całe życie myślałem, że jestem miły i sympatyczny, dopiero człowiek na terapii dowiaduje się, że to element naturalnej manipulacji wychodzącej z osobowości i po paru minutach to już wykorzystuje. Socjopaci często opierają swoje działania na efekcie aureoli.
  • Odpowiedz