Skip to content
View thomasdang1996's full-sized avatar
Block or Report

Block or report thomasdang1996

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
thomasdang1996/README.md

About Me

I am a passionate programmer ready to learn new things and improve my current skills. I use Java as my main programming language and mostly work at the back-end part of the development world, but I'm currently learning React and plan to improve my front-end skills to become an experienced full-stack developer.

Dev Tools

Intellij IDEA
Visual Studio Code
Docker Desktop - container tool
pgAdmin - database viewer
Jenkins - CI/CD
Argo - K8s cluster manager
ElasticSearch - log tracking
Akhq - Kafka monitoring
Apicurio Registry - Avro schema registry
Postman - API Testing & Automation

Other Tools

Obsidian
Jira

Languages and Frameworks

Java(SpringBoot), Javascript (React.js), Css, Html

GitHub Projects

Following projects represents the microservices of a fictional store.
pear-store-fe- front-end part of the application
pear-store-be - core service of the application with basic APIs
account-manager - supporting service for managing user accounts
message-broker - service acting as a messaging bridge between services

Communication between the services are either via REST or Kafka messaging. Following diagram shows, how Kafka message travels through a message broker.
CreateAccountPayload will be sent through a message-broker to account-manager.
If successful, AccountCreated will be sent back, if the username is taken, AccountCreationFailed will be sent.

sequenceDiagram
    pear-store-be->>message-broker: CreateAccountPayload
    message-broker->>account-manager: CreateAccountPayload
    account-manager->>message-broker: AccountCreated
	message-broker->>pear-store-be: AccountCreated
	    account-manager-->>message-broker: AccountCreationFailed
	message-broker-->>pear-store-be: AccountCreationFailed

Pinned

  1. account-manager-be account-manager-be Public

    Component for managing accounts of pear-store (creating, deleting...)

    Java

  2. common-lib common-lib Public

    Library for common utilities

    Java

  3. message-broker message-broker Public

    Component for orchestrating messages

    Java

  4. pear-store-be pear-store-be Public

    Back-end component of the application

    Java

  5. pear-store-fe pear-store-fe Public

    Front-end component of the application

    JavaScript

  6. product-manager-be product-manager-be Public

    Kotlin