Java Developer? Przejdź na wyższy poziom wiedzy 🔥💪  Sprawdź

Team Leader? Podnieś efektywność swojego zespołu 👌 Sprawdź

Sytuacja na rynku IT: Perspektywa Java Developera

Sytuacja na rynku IT: Perspektywa Java Developera

W obliczu zmian gospodarczych i technologicznych, rynek IT oferuje wyzwania i możliwości dla Java Developerów, podkreślając znaczenie ciągłego rozwijania umiejętności technicznych i miękkich. Sztuczna inteligencja i adaptacyjność stają się kluczowe w kontekście dynamicznie zmieniających się wymagań rynkowych. Przyszłość w IT zależeć będzie od gotowości do nauki i innowacji, co umożliwi Java Developerom utrzymanie konkurencyjności.

Apache Kafka + Avro + Schema Registry

Apache Kafka + Avro + Schema Registry

Apache Kafka dostarczona przez Confluent to prawdziwy kombajn, a nie zwykła kolejka. W dzisiejszym artykule pokażę Ci, jak możemy odpalić klaster Kafki oraz Schemę Registry na Dockerze, następnie wyklikamy topic oraz wgramy schemat Avro. Potem napiszemy przykładową alikację producenta oraz konsumenta w Spring Boot z wykorzystaniem Avro oraz Schemy Registry…

The Outbox Pattern – Komunikacja z zewnętrznymi systemami w ramach transakcji

The Outbox Pattern – Komunikacja z zewnętrznymi systemami w ramach transakcji

Często w ramach przetwarzania logiki biznesowej, oprócz modyfikacji różnych danych objętej transakcją pojawia się potrzeba wymiany danych lub komunikacji z zewnętrznymi systemami. Przykładem jest serwer mailowy, inny serwis, system kolejkowy. Wykonując operację z efektem ubocznym w transakcji, mogą wystąpić dwa potencjalne problemy:

  • Możesz nie mieć wpływu na działanie tych systemów. Na przykład serwer pocztowy nie odpowiada, pojawia się chwilowy zanik sieci, albo bardzo wolno odpowiada).
  • Wykonanie efektu ubocznego i wycofanie transakcji biznesowej. Nie można już odwrócić efektu uczonego (np. nie można wycofać już wysłanego maila).

Jak można sobie z tym poradzić? W tym wpisie opiszę wzorzec The Outbox Pattern.

Schema Registry w Apache Kafka

Schema Registry w Apache Kafka

Apache Kafka jest coraz bardziej popularnym brokerem wiadomości. Wystarczy spojrzeć na oferty pracy dla programistów Java, a szybko przekonamy się, że w większości nowoczesnych projektów, w architekturze mikroserwisów jest jakaś forma komunikacji po systemie kolejkowym. Bardzo prawdopodobne, że będzie to właśnie Apache Kafka.

7 sposobów na przyspieszenie Twoich testów w Spring

7 sposobów na przyspieszenie Twoich testów w Spring

Co powoduje, że testy w Spring są wolne?

Szybkość wykonywania testów ma kluczowy wpływ na to, jak szybko dostajemy feedback o poprawności wprowadzanej zmiany oraz jak szybko budowany jest projekt. To z kolei może spowolnić testowanie, a nawet wdrażanie w trybie Continuous Deployment.

W tym artykule omówię ogólne podejście do testowania. Podzielę się też najczęstszymi błędami, z którymi spotkałem się w projektach powodujące wolne działanie testów.
Dowiesz się też, co powoduje, że testy w Spring stają się wolne i jak poprawić sytuację w projekcie.

CI/CD i trunk-based development – wdrażaj częściej i szybciej

CI/CD i trunk-based development – wdrażaj częściej i szybciej

Wdrażaj na produkcję kilka razy dziennie za pomocą git’a. Continuous Delivery bez przeszkód.

Zastanawiało Cię kiedyś, które elementy w procesie pisania kodu i współpracy z innymi programistami wpływają na efektywność Twoich działań zmierzających do umieszczenia kodu na produkcji?

Oprócz analizy wymagań, głównym zajęciem programisty jest wytwarzanie kodu i kolaboracja z innymi programistami.

Miejscem tej kolaboracji jest repozytorium kodu w systemie kontroli wersji. To w nim umieszczamy efekt naszej pracy. Tam przeglądamy zmiany innych i łączymy z nimi nasze zmiany.

Na koniec, zmiany te uczestniczą w procesie Contineous Integration (CI), budowane są artefakty wdrożeniowe, a niektóre zwinne zespoły nawet używają procesu Contineous Delivery (CI/CD) do szybkiego i ciągłego wdrażania zmian na środowiska testowe i produkcyjne prosto z pipeline w sposób w pełni zautomatyzowany.