30 open-source projects similar to aobingjava/javafamily, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best JavaFamily alternative.
This project is a comprehensive educational resource focused on the principles, patterns, and trade-offs required to design scalable, reliable, and high-performance distributed systems. It provides a structured curriculum that covers the fundamental architectural strategies necessary for building modern software infrastructure, ranging from high-level system decomposition to low-level networking and data management. The repository distinguishes itself by offering deep dives into complex architectural patterns, such as microservices-based decomposition, event-driven communication, and command-
JavaTutorial is a specialized knowledge base and set of study guides focused on backend engineering, the Java ecosystem, distributed systems, and database internals. It serves as a technical reference for engineers, providing structured learning paths and curated content designed for Java backend developer interview preparation. The resource distinguishes itself through deep-dive analyses of internal mechanics, including JVM memory management, garbage collection algorithms, and the internal architecture of the Spring Framework. It provides detailed studies on database internals specifically f
This project is a curated library of technical ebooks and guides focused on Java language learning, backend architecture, and Java Virtual Machine internals. It serves as a reference-driven knowledge base and a technical repository for software engineering principles. The collection provides specialized materials for studying Java backend architecture, including high-performance server-side development and concurrency. It includes a dedicated JVM technical reference for performance tuning and internal machine behavior, as well as resources for algorithm study and data structures. Additional
LearningNotes is a technical knowledge base and engineering study guide focused on Android framework internals, system architecture, and mobile performance optimization. It serves as a reference for analyzing the Android boot sequence, process bootstrapping, and system service initialization. The project provides detailed guides on mobile performance, including strategies for reducing memory footprints, identifying memory leaks, and optimizing image decoding. It further covers Android inter-process communication using AIDL and the Binder kernel driver, as well as software architecture manuals
This project is a technical interview study guide and computer science knowledge base. It provides a curated collection of technical interview questions and expert explanations focused on preparing for assessments at global IT companies. The repository serves as a coding interview roadmap for mastering algorithmic challenges and complexity analysis, alongside a software architecture reference for design principles and system design strategies. It also includes a web security curriculum covering authentication methods, cryptographic concepts, and common vulnerabilities. Content covers compute
BCC is an eBPF development toolkit and tracing framework used for monitoring and analyzing the Linux kernel. It functions as a performance analysis tool and debugging utility to capture system events, measure kernel latency, and provide network observability. The project distinguishes itself by providing a build system that integrates with LLVM to compile C-like code into BPF bytecode at runtime. It utilizes BPF Type Format data for relocations to maintain cross-kernel compatibility and extracts kernel headers to ensure the generated programs match the specific kernel version. The toolkit co
This project is a comprehensive computer networking textbook and instructional resource. It serves as a technical guide for the design and implementation of network layers, protocols, and hardware architecture, covering the spectrum from physical links to application-layer protocols. The content provides a detailed study of standards for congestion control, reliable data delivery, and internetwork routing. It includes specialized technical material on network security, public-key infrastructure, and the operation of modern cloud infrastructure and data centers. The material covers a broad ra
This project is a comprehensive educational repository providing technical documentation and learning materials across a wide range of computer science and software engineering domains. It serves as a centralized knowledge base for developers, covering core programming concepts, database management, distributed systems, and system design principles. The content spans fundamental Java programming, including collection frameworks and runtime environments, alongside deep dives into web communication protocols and browser internals. It also provides extensive resources on database internals, such
This project is an interactive programming curriculum and educational system designed to teach computer science and software engineering. It provides a structured set of courses and professional roadmaps focused on backend engineering, DevOps, and systems fundamentals. The platform is distinguished by an AI-powered coding tutor that provides Socratic guidance and contextual hints to help students find solutions independently. It features a browser-based code sandbox using WebAssembly to eliminate local environment setup, alongside automated test-based grading and spaced-repetition logic to re
This project is a comprehensive technical interview preparation guide and computer science knowledge base. It serves as a structured study resource designed to help software engineers review core engineering concepts and prepare for professional coding assessments. The repository focuses on a wide array of theoretical and practical domains, including detailed references for mobile application architecture and operating system fundamentals. It provides curated materials on software architecture patterns and network protocol analysis to support professional development. The content covers foun
This project is a technical reference and documentation suite focused on the internal architecture and operational principles of the Java Virtual Machine. It provides comprehensive guides and analysis on how the virtual machine manages class loading, memory organization, and bytecode execution. The documentation distinguishes itself by providing deep dives into specific runtime mechanisms, such as the binary decoding of class files, the hierarchical delegation model for class loaders, and the precise sequence of the loading, linking, and initialization lifecycle. It also details memory reclam
JCSprout is a technical knowledge repository that provides a collection of structured guides and deep-dive articles focused on core backend engineering principles. It serves as a comprehensive resource for mastering advanced programming concepts, offering curated materials that combine detailed explanations with practical insights to support professional skill development and technical interview preparation. The project distinguishes itself through a modular knowledge base that covers Java concurrency, JVM internals, database architecture, and distributed system development. It provides speci
This repository serves as a technical reference for designing scalable, resilient, and performant software within distributed service environments. It provides a collection of architectural patterns and structural strategies intended to guide the development of complex, decoupled systems that maintain high availability and data integrity under heavy load. The resource focuses on the core principles of microservices architecture, offering guidance on managing communication between independent software components through both synchronous and asynchronous messaging. It details strategies for mai
This project is a comprehensive educational resource and study guide focused on distributed systems architecture and backend infrastructure design. It provides a structured curriculum for mastering the principles of scalability, reliability, and performance required to design complex software systems. The repository distinguishes itself by offering a methodical approach to technical interview preparation, incorporating design patterns, architectural trade-offs, and spaced repetition tools to help users retain complex concepts. It emphasizes constraint-driven analysis, teaching users how to ev
This project is a comprehensive learning resource and reference guide for software architecture and distributed systems design. It serves as a structured curriculum for engineers to study fundamental architectural patterns, scalability strategies, and distributed computing theory, specifically tailored to prepare for technical interviews and professional engineering roles. The repository distinguishes itself by providing a curated collection of industry-standard infrastructure tools and methodologies. It covers the selection and implementation of technologies for data storage, message brokeri
GCViewer is a JVM garbage collection visualizer and memory analysis tool. It functions as a log parser and metrics exporter that transforms verbose JVM garbage collection logs into structured data, visual charts, and summary reports. The project enables the visualization of heap size, generation usage, and collection timing through multi-line charts. It specifically tracks stop-the-world pause durations, concurrent collection cycles, and memory footprint to assist in detecting memory leaks and tuning heap sizes. The tool covers log processing capabilities such as timestamp alignment and the
This project is a comprehensive study guide and reference repository designed to prepare software engineers for technical interviews. It provides a structured collection of fundamental computer science concepts, algorithm implementations, and system design principles, serving as a centralized resource for reviewing the core knowledge required for engineering assessments. The repository distinguishes itself by offering language-agnostic concept modeling and modular knowledge categorization, which allows candidates to navigate complex topics efficiently. It covers a broad spectrum of technical
This project is a Java learning curriculum and programming language roadmap designed to guide learners from beginner to advanced levels. It functions as a self-study course providing a structured daily study plan to develop professional software engineering skills. The curriculum is organized into a sequenced guide of technical topics and exercises. It utilizes a time-bound design and milestone-driven progression to map foundational knowledge to complex programming topics. The resource surface covers Java language learning, programming skill development, and general software engineering educ
gperftools is a collection of specialized tools for profiling CPU usage, detecting memory errors, and providing high-performance memory allocation. It provides a memory profiling toolkit for C++ applications, including a sampling CPU profiler and a heap profiler for analyzing consumption patterns. The project includes a high-performance memory allocator designed as a multi-threaded replacement for standard allocation to reduce contention and improve execution speed. It further provides a memory debugger to identify illegal memory access and double frees. The toolkit covers broad diagnostic c
This repository is a structured educational resource designed for mastering data structures and algorithms using the Java programming language. It functions as a comprehensive curriculum and study roadmap, providing the materials necessary to build proficiency in core computer science fundamentals for technical interview preparation. The project organizes its content through a hierarchical directory structure that maps to a logical progression of topics. It utilizes a standardized format for coding exercises and documentation, ensuring that learners can follow a consistent syllabus while prac
This repository serves as a technical learning platform and study guide focused on low-level system design and distributed systems architecture. It provides educational materials and implementation examples designed to help engineers master the foundational components required to build scalable and reliable backend infrastructure. The project emphasizes the practical application of architectural patterns through the construction of essential software modules. By implementing building blocks such as in-memory caches, event-driven message buses, and rate limiters, users can analyze the internal
This project is a backend engineering interview guide and computer science study resource. It provides a curated collection of technical questions and answers focused on server-side architecture, database optimization, and networking fundamentals to prepare for professional software engineering evaluations. The resource functions as a technical reference for studying ACID properties, transaction isolation, and the optimization of relational and non-relational systems. It includes a software architecture reference for analyzing design patterns, dependency injection, and the structural tradeoff
Heaptrack is a heap memory profiler and diagnostic tool for applications running on Linux. It functions as a memory leak detector and performance analysis system that records heap allocations and stack traces to identify memory hotspots and consumption patterns. The project provides a graphical heap allocation visualizer for exploring memory usage through tree views and peak memory reports. It utilizes flame graphs and allocation charts to visualize memory hotspots and assist in the detection of leaks. The toolset includes capabilities for heap memory allocation tracing and the generation of
This project is an instructional repository and learning resource providing a comprehensive collection of study notes, programming guides, and runnable source code examples. It serves as a guide for Java SE and Java web development, featuring a library of code samples that demonstrate common algorithms and technical implementations. The repository focuses on language core and runtime analysis, with detailed tutorials on multithreading and concurrency. It provides practical implementations of software architecture and design patterns, such as the singleton and strategy patterns, as well as exp
PerfView is a set of integrated profiling and tracing tools built on Windows Event Tracing for Windows (ETW), designed to diagnose CPU, memory, and ETW-based performance issues in .NET applications. It captures ETW events to analyze runtime behavior, CPU usage, and memory allocations, serving as a .NET performance profiler that measures both CPU time and garbage collection events. The tool distinguishes itself with a diff comparison engine that compares two performance traces side-by-side to highlight changes in method costs and event rates. It renders profiled call stacks as flame graphs whe
This project is a comprehensive reference library and preparation guide for Python technical interviews. It combines theoretical guides on computer science fundamentals and language runtime internals with practical implementation examples of algorithms and data structures. The repository serves as a curated knowledge base that maps theoretical interview questions to concrete code snippets. It provides technical analysis of Python language internals, including memory management, garbage collection, and the global interpreter lock, alongside a library of creational and structural software desig
This project is an open-source knowledge repository that serves as a comprehensive technical interview question bank for backend engineering roles. It provides a structured resource for hiring managers and candidates to evaluate proficiency in software design, architectural patterns, and core engineering principles through a curated collection of discussion topics and coding challenges. The repository functions as a programming paradigm evaluation tool, enabling the assessment of a candidate's understanding of object-oriented, functional, and procedural techniques. It distinguishes itself by
Scalene is a high-performance diagnostic utility designed to measure resource consumption during the execution of Python applications. It functions as a line-level monitor, providing granular insights that pinpoint the specific source code responsible for performance overhead. The tool distinguishes itself through statistical profiling that captures stack traces and resource usage without requiring manual instrumentation of the source code. It tracks CPU, GPU, and memory consumption by intercepting library-level calls and hardware driver commands, allowing for the analysis of both managed and
This repository is a comprehensive resource for software engineering career development and technical interview preparation. It provides a structured collection of learning materials, algorithmic patterns, and system design guides designed to assist developers in mastering the core competencies required for professional engineering roles. The project distinguishes itself through a pattern-based content taxonomy that groups diverse technical challenges by underlying algorithmic strategies. This approach allows users to identify and apply reusable solutions during high-pressure assessments. It
This repository is a Java language educational resource and coding standards reference. It provides a collection of runnable source code examples that illustrate industry standard design patterns, effective programming techniques, and API design principles. The codebase serves as a practical implementation of recommended solutions for common pitfalls in Java development. It uses standalone runnable classes and executable entry points to demonstrate software engineering patterns and maintainable architecture. The project is implemented using pure Java and standard library features, with logic