Skill Tree of Java

The skill tree of Java master in my understanding (the granularity increases from top to bottom).

JAVA

Linux

epoll

Async / Sync x Blocking / Non-blocking

Database

ACID

CAP

GraphDB (Neo4j)

JVM

Java Agent

Java Concurrency Programming

Optimistic Concurrency Control / Optimistic Locking

Pessimistic Locking / Dead Lock

Networking

Java Language

RxJava

Java 8

Data Structure

  • Queue
  • Stack
  • Array
  • Map
  • Link
  • Tree
  • Graph

Algorithm

  • Raft
  • CNN

Design Pattern

  • Factory
  • Strategy
  • Open-Close

Microservice and Platform

  • AWS/Azure/GCP
  • K8S
  • Netflix stack / Spring for Microservices

DevOps

  • Terraform for infrastructure
  • Ansible for provision
  • Jenkins for CI
  • Spinnaker/Weaver for CD
  • UML for architecture documentation
  • Helm

Frameworks

Web/Mobile Application

  • Spring Frameworks (SpringMVC, SpringBoot, Spring Integration, Spring Batch, maven goals …)
  • Hadoop
  • Solr and Lucene
  • Android
  • Distributed database: dubbo
  • GraphQL

Machine Learning and AI

Games

Quant

comments powered by Disqus