Hanwen ZhangSystem Design Points to Consider and Architectural Design Goals At WorkSoftware designs at the high level are referred to as “Architectures.” The simpler you can keep the system, the better.4 min read·Mar 5, 2024----
Hanwen ZhangProcess v.s. Thread & Background Processing with Worker & Context Switching in O.S.Process v.s. Thread5 min read·Dec 18, 2023----
Hanwen ZhangWhat Makes a Good EngineerThe foundation of enginerity is to seek the truth.3 min read·Nov 21, 2023----
Hanwen ZhangDifferent Types of Software Testing (Unit/Integration/E2E) and TDD/BDD TechniquesSoftware Testing helps ensure quality, prevent bugs, reduce development costs, and improve performance. Both inspection and testing are…7 min read·Oct 9, 2023----
Hanwen ZhangHow JavaScript/Node Works Behind the SceneA “high-level single-threaded, garbage-collected, interpreted (or just-in-time compiled), prototype-based, multi-paradigm, dynamic language…7 min read·Sep 18, 2023----
Hanwen ZhangA Quick Overview of Code Smells and Refactoring Techniques by Martin FowlerRefactoring is a systematic process of improving code by transforming the messy dirty code into clean code and simple design that is easy…7 min read·Aug 13, 2023----
Hanwen ZhangStructural and Behavioral Design Patterns with Java Coding ExamplesKey Takeaways of Structural and Behavior Design Patterns for Java Design Patterns, 2nd Edition by Vaskaran Sarcar7 min read·Aug 12, 2023----
Hanwen ZhangOverview of Server-Side Rendering v.s. Client-Side Rendering and Next.jsUse CSR if a site is under development, like a dynamic SPA handled by React3 min read·Aug 6, 2023----
Hanwen ZhangAn Overview of Software Architecture — MVC, Micro-services, Client-Server, P2P, ECB…The software architecture of a system represents the design decisions related to overall system structure and behavior. The design goals…6 min read·Aug 5, 2023----
Hanwen ZhangSoftware Engineering and Software Development Life Cycle (SDLC) in an Agile EnvironmentSoftware Engineering is a systematic approach to the development, operation, and retirement of software. Software process has a positive…6 min read·Jul 31, 2023----