1. Prerequisites
Java
Gradle or Maven
SQL
2.General Development Skills
Learn GIT, create a few repositories on GitHub, share your code with other people
Know HTTP(S) protocol, request methods (GET, POST, PUT, PATCH, DELETE, OPTIONS)
Learn about implementation of a basic Authentication
Solid principles, etc
3.CLI Tools
args4j
JCommander
airline
4.Web Frameworks + Routers
Spring
Play Framework
Spark
Jersey
nanohttpd
5.Databases
-Relational
SQL Server
PostgreSQL
MariaDB
MySQL
Oracle
-Cloud Databases
CosmosDB
DynamoDB
-Search Engines
ElasticSearch
Solr
Sphinx
-NoSQL
MongoDB
Redis
Apache Cassandra
LiteDB
RavenDB
CouchDB
6.ORMs
Hibernate
Ebean
BelleORM
7.Caching
Caffeine
EHCache
Cache2k
Distributed Cache
-Java-Redis
-Java-Memcached
-Infinispan
8.Logging
-Log Frameworks
Zap
TinyLog
log4j
-Log Management System
ELK Stack
Sentry.io
Loggly.com
Tracer
9.Real-Time Communication
Socket.IO
atmosphere
webbit
10.API Clients
-REST
okhttp
retrofit
-GraphQL
11.Good to Know
Beanvalidation
bouncycastle
gson
Apache Shiro
JJWT
RxJava
12.Testing
-Unit, Behavior, Integration, Load Testing
JUnit
CitrusFramework
Gatling
Tsung
Mockito
Truth
Assertj
cucumber-jvm
cukes
hoverfly-java
rest-assured
jbehave
Mockserver
-E2E Testing
Selenium
13.Task Scheduling
Aurora
elasticjob
Sundial
cron-utils
14.MicroServices
-Message-Broker
RabbitMQ
Apache Kafka
ActiveMQ
Azure Service Bus
-Message-Bus
mbassador
rmq
-Frameworks
Apollo
lagom-framework
micronaut
eureka
helidon
armeria
-RPC
Protocol Buffers
gRPC-Java
thrift
Bookmarks