Backend Development 13 min read

Java Backend Engineer Learning Roadmap and Recommended Resources

This article presents a comprehensive Java backend engineer learning roadmap, outlining essential skills from version control and Maven to core Java, frameworks, system and JVM performance tuning, messaging middleware, OAuth, Redis, and data processing, accompanied by recommended books and online resources for each topic.

Architecture Digest
Architecture Digest
Architecture Digest
Java Backend Engineer Learning Roadmap and Recommended Resources

Based on a previously compiled Java backend engineer skill tree, this guide offers a structured learning plan that covers the essential knowledge required for a competent Java backend developer, providing a high‑level outline rather than exhaustive details.

1. Git Version Management & Maven Project Management

Reference: Weibo New Soldier Training Camp – Environment and Tools (http://weibo.com/p/1001643874239169320051).

2. Java Programming

Books

Core Java Volume I : Essential introductory "yellow book".

Core Java Volume II : Advanced language features.

Java Concurrency in Practice : In‑depth coverage of Java concurrency utilities.

Effective Java : Highly praised by Java experts for best‑practice guidance.

Java SE 8 for Busy People : Covers Java 8 features and overlooked Java 7 enhancements.

Online Resources

Socket programming: http://ifeve.com/java-socket/

NIO: http://ifeve.com/java-nio-all/

Serialization: http://ifeve.com/java-io-s-objectinputstream-objectoutputstream/

RPC frameworks (e.g., Dubbo): http://dubbo.io

Concurrent programming: http://ifeve.com/java-concurrency-constructs/

3. Development Frameworks

Spring – tutorial by Kai Tao (http://www.open-open.com/doc/view/5407635b943d410c9cfde409c90450b7)

Spring MVC – tutorial by Kai Tao (http://www.cnblogs.com/kaitao/archive/2012/07/16/2593441.html)

MyBatis – practical guide (http://www.yihaomen.com/article/java/302.htm) and additional learning material (http://limingnihao.iteye.com/blog/781671)

Reading the official documentation is strongly recommended, and after gaining proficiency, studying the source code of these frameworks is essential. A suggested approach is:

1) Read the architecture documentation. 2) Classify source files by module or hierarchy. 3) Start with the most independent module. 4) Review the module’s functional documentation. 5) Read the module’s source code. 6) Document call‑relationship tables while reading. 7) Repeat from step 3.

4. System Performance Optimization & Diagnosis

Reference book: Linux Server Performance Tuning (https://book.douban.com/subject/4027746/). Topics include Linux overview, performance analysis tools, system tuning, server performance characteristics, and case studies.

5. JVM Performance Optimization & Diagnosis

Java Performance Optimization: The Definitive Guide (https://book.douban.com/subject/25828043/)

Understanding the Java Virtual Machine (2nd Edition) (https://book.douban.com/subject/24722612/)

Learning content covers JVM overview, monitoring, profiling tools, tuning parameters and steps, and practical case analyses.

6. Message Middleware

JMS

Classic but simple messaging standard; ActiveMQ is a common implementation, though not recommended for new projects.

Large‑scale distributed messaging overview: http://blog.csdn.net/huyiyang2010/article/details/5969944

JMS Overview: http://docs.oracle.com/javaee/6/tutorial/doc/bncdr.html

Basic JMS API Concepts: http://docs.oracle.com/javaee/6/tutorial/doc/bncdx.html

JMS API Programming Model: http://docs.oracle.com/javaee/6/tutorial/doc/bnceh.html

Creating Robust JMS Applications: http://docs.oracle.com/javaee/6/tutorial/doc/bncfu.html

Using JMS in Java EE Applications: http://docs.oracle.com/javaee/6/tutorial/doc/bncgl.html

Further JMS information: http://docs.oracle.com/javaee/6/tutorial/doc/bncgu.html

RabbitMQ

Implementation of the AMQP protocol, suitable for scenarios requiring transaction management and high reliability. Official documentation: http://www.rabbitmq.com/documentation.html.

Kafka

Log‑based distributed messaging system. Primary resource: http://kafka.apache.org/documentation.html.

Chinese tutorial: http://www.orchome.com/kafka/index

Author’s study notes: https://github.com/superhj1987/kafka-study

7. OAuth Authentication Technology

Principles

OAuth is the dominant third‑party authentication protocol used by platforms such as Weibo, WeChat, QQ, Facebook, and Twitter. See Baidu encyclopedia and detailed blog post for deeper understanding.

Open‑Source Implementations

Google OAuth Core: http://oauth.net/code/

Spring OAuth: http://projects.spring.io/spring-security-oauth/

8. Redis Design and Implementation

Redis command reference: http://redisdoc.com/

Redis design and implementation guide: http://redisbook.com/

Learning topics include common commands and data structures, internal data structures, memory‑mapped storage, data types, functional implementation, and internal operation mechanisms.

9. Data‑Related Topics

Theoretical Foundations

MapReduce – the original distributed computing model.

GFS – Google File System, open‑source implementation HDFS.

Bigtable – column‑family database, open‑source implementation HBase.

Real‑Time Computing

Storm – widely used real‑time computation framework (https://book.douban.com/subject/26312249/).

Spark Streaming – batch‑based real‑time stream processing (https://spark.apache.org/streaming/).

Batch Computing

Hadoop: The definitive guide (covers HDFS, HBase, MapReduce).

Hive programming guide – simplifies MapReduce development.

Spark for fast big‑data analysis – RDD‑based model.

Lambda Architecture

Classic big‑data architecture combining batch and real‑time layers; see analysis article by Jay Kreps (http://www.csdn.net/article/2014-07-08/2820562-Lambda-Linkedln).

Machine Learning

Recommendation Systems Practice.

Computational Advertising.

Collective Intelligence.

Machine Learning textbook.

Author: Hang (architect/backend engineer, working@中华万年历) Source: http://www.rowkey.me/blog/2016/06/27/java-backend-study/

Copyright notice: Content sourced from the web; original authors retain rights. If any infringement is identified, please contact for removal.

JavajvmPerformance Optimizationbackend developmentRedisMessaginglearning resources
Architecture Digest
Written by

Architecture Digest

Focusing on Java backend development, covering application architecture from top-tier internet companies (high availability, high performance, high stability), big data, machine learning, Java architecture, and other popular fields.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.