Dejan Miličić

Head of DevRel, RavenDB

Building Software Architecture from First Principles

As new architectures and frameworks continually emerge, comprehending, evaluating, and applying them becomes challenging. Returning to fundamentals is essential to understand the software design, its intent, and its purpose.

This talk will introduce the “First Principles” methodology and explore how it can help improve our software architecting skills. We will break down common architectures, identify the foundational building blocks, and re-compose them into flexible and adaptable framework.

== Topics include:

  • First Principles Methodology in Software Architecture: Understanding the core concepts that drive effective design.
  • Breaking Down Modern Architectures: Analyzing existing architectures to extract their fundamental components.
  • Fundamental Tenets and Goals: Focusing on modularity, scalability, resilience, and other essential aspects.
  • Applying these principles in practical scenarios to produce resilient and adaptable architecture.

== Attendees will gain:

  • Skills to dissect existing architectures and grasp their essential building blocks.
  • A practical framework for designing systems that are robust and future-proof.
  • Guidelines for improving Software Architecting skills.

Dejan Miličić

Dejan Miličić is an enthusiastic consultant and Head of DevRel at RavenDB with over 20 years of experience as a professional software developer designing, writing, and maintaining applications. Dejan is passionate about Open Source, RavenDB, Software Architecture, and Software Professionalism, supporting the Software Crafting Serbia community via workshops and meetups. He is an active proponent of knowledge sharing, professional ethics, and usage of Type Driven Development and Functional techniques to reduce complexity, increase expressiveness, and improve the correctness of software. Dejan works on open-source projects in his spare time, mentors startups in various development phases, and participates in Startup Accelerator programs supporting entrepreneurs through on-site and off-site consultations.