It’s very important to assess your skills in various areas of IT and understand a nesessary Java Developer Skillset.
I tried to categorize the required skills for a Senior Java developer and show my personal experience in it.
Each element contains the a to my Github. You can explore my code in the links.
Core Java |
Spring Framework |
ORM/JDBC |
Testing tools |
Design Patterns |
|
| OOP | Spring Boot | Hibernate | JUnit | Stategy | Facade |
| Collections | Spring MVC | MyBatis | Mockito | Observer | Template method |
| Generics | Spring Security | TestNG | Decorator | Iterator | |
| Streams | SimpleFactory | Composite | |||
| Multithreading | Abstract factory | State machine | |||
| Singleton | Remote proxy | ||||
| Command | Virtual proxy | ||||
| Adapter | Dynamic proxy | ||||
Microservices |
SQL and Databases |
Web services |
Build tools |
DevOps Tools |
Clouds |
| Spring Cloud | PostgreSQL | RestFul | Maven | Kubernetes | Amazon AWS |
| Old school: | MongoDB | RSocket | Gradle | Jenkins | Microsoft Azure |
| Spring Cloud Config Server | Redis | WebFlux | Docker | Google Cloud | |
| Simple microservice | ElasticSearch | ArgoCD Workflows | Oracle Cloud | ||
| Feign REST client | DynamoDB | ||||
| Client-side load balancing with Ribbon | AuroraDB | ||||
| Eureka Naming Server | |||||
| Zuul API Gateway | |||||
| Distibuted tracing with Zipkin + RabbitMQ | |||||
| Spring Cloud Bus | |||||
| Fault tolerance with Hystrix | |||||
