Welcome to my technical knowledge base - a comprehensive digital garden covering software engineering, system design, and professional development. This interconnected collection of 123+ articles spans 9 domains, from foundational programming concepts to advanced distributed systems, designed as learning paths for continuous growth in software engineering.

Content Domains

🏗️ Software Architecture (20 articles)

Core architectural patterns and principles for building maintainable systems:

  • SOLID principles and clean architecture patterns
  • DDD (Domain-Driven Design) tactical and strategic patterns
  • functional programming paradigms and principles
  • jMolecules architecture annotation frameworks

🌐 System Design (46 articles)

Distributed systems, databases, and scalability patterns:

💻 Coding (12 articles)

Programming languages, patterns, and practices:

  • Kotlin tutorials with design patterns implementations
  • TDD (Test-Driven Development) with SOLID principles
  • Pair Programming frameworks and collaborative development

🤖 LLM/AI (18 articles)

Large language models and AI systems:

🛠️ Tools (11 articles)

Development environments and productivity tools:

  • Neovim/LunarVim configurations and plugins
  • CLI Tools and interactive development environments
  • Development Environment optimization

👥 Professional Development (13 articles)

Soft skills, leadership, and career growth:

📊 Additional Domains

  • DevOps (2 articles) - AWS, infrastructure, networking
  • Product (2 articles) - OKRs, requirements, management
  • Inspirational (5 articles) - paul_graham_key_ideas, personal development, wisdom

Learning Paths

Clean Code & Architecture

  1. Start with SOLID principles
  2. Explore design patterns implementations
  3. Study clean architecture patterns
  4. Apply to DDD tactical patterns

System Design Mastery

  1. Understand distributed systems fundamentals
  2. Study consensus and fault tolerance
  3. Explore database design and selection
  4. Practice with system design katas

Modern AI/LLM Development

  1. Learn transformers fundamentals
  2. Understand RAG systems and embeddings
  3. Study practical implementation patterns
  4. Master prompt engineering techniques