I want to become/grow as an AI Engineer. Therefore, I want to reiterate and grow my engineering skills.

My objective is two achieve this with three aspects:

  • Committing engineering knowledge to my mind.
  • Practicing coding challenges by passing the Neetcode 150.
  • Speak and write at more conferences.

Engineering Knowledge

Everything I want to know in engineering.

Engineering Knowledge Places
Object Oriented Development in Python City of Wuerzburg
Algorithms and Data Structures City of Vienna
Software Philosophy City of Seattle
Machine Learning Schottenfeldgasse 55, Vienna
Deep Learning Brueckenstr, Eichelsee
Data Intensive Applications City of New York
Golang Syntax Commute Bellevue

Neetcode

Topic Week Challenges
Backtracing 1 2
Graphs 2 6
Advanced Graphs 3 1
1-D Dynamic 4 10
2-D Dynamic 5 2
Greedy 6 2
Intervals 7 5
Math 8 3
Bi Manipulation 9 5
Array & Hashing 10 8
Two Pointers 11 3
Sliding Window 12 4
Stack 13 1
Binary Search 14 2
Linked List 15 6
Trees 16 11
Tries 17 3
Heap / Prio Q 18 1

Reading: Beyond “Clean”: Unlocking the Secrets of Software Architecture

As a software developer, I’m constantly striving to elevate my craft. A crucial aspect of that journey is building a strong foundation in software architecture. After all, well-architected systems lay the groundwork for scalability, maintainability, and overall code elegance.

With this hunger for knowledge in mind, I embarked on a quest to find those hidden gems of architectural literature. Here’s what my search unearthed:

  • Designing Robust Data Systems

    If your work involves handling large datasets, Martin Kleppmann’s “Designing Data-Intensive Applications” should be at the top of your reading list. It dives deep into the fundamentals of distributed systems, consistency models, scalability techniques, and the complexities of managing data at scale.

  • The Microservices Advantage

    For those intrigued by the potential of microservices, Sam Newman’s “Building Microservices” offers pragmatic guidance on designing and deploying these fine-grained services. Learn about the benefits, common pitfalls, and the finer details of creating an ecosystem of microservices that interact seamlessly.

  • Proven Architectural Patterns

    Martin Fowler’s classic, “Patterns of Enterprise Application Architecture,” is pure gold. This book presents a treasure trove of battle-tested patterns and solutions for tackling the structural challenges that large applications frequently face. Think of it as your field guide to elegant software design.

  • Mastering Domain-Driven Design

    Eric Evans’ “Domain-Driven Design” is a paradigm shift for many software professionals. It teaches you to model software systems in a manner that mirrors your problem domain, leading to cleaner code and a deeper understanding of the business logic.

  • Practical Software Architecture

    “Software Architecture in Practice (3rd Edition)”, by Bass, Clements, and Kazman, distills the core concepts of software architecture and provides a systematic approach to architectural decision-making. This book bridges the gap between theory and real-world applications.

  • An Engineering Approach to Architecture

    For a thorough and modern perspective, don’t miss “Fundamentals of Software Architecture” by Mark Richards and Neal Ford. It covers software architecture’s foundational principles and explores its increasing importance in the software development lifecycle.

  • Implementing DDD in Action

    Vaughn Vernon’s “Implementing Domain-Driven Design” picks up where Eric Evans left off, offering practical guidance for turning DDD theory into working systems. Consider this your blueprint for building software that’s tightly aligned with the business it serves.

  1. “Designing Data-Intensive Applications” by Martin Kleppmann - Approximately 616 pages.
  2. “Building Microservices” by Sam Newman - Approximately 280 pages.
  3. “Patterns of Enterprise Application Architecture” by Martin Fowler - Approximately 560 pages.
  4. “Domain-Driven Design” by Eric Evans - Approximately 560 pages.
  5. “Software Architecture in Practice (3rd Edition)” by Len Bass, Paul Clements, and Rick Kazman - Approximately 704 pages.
  6. “Fundamentals of Software Architecture” by Mark Richards and Neal Ford - Approximately 432 pages.
  7. “Implementing Domain-Driven Design” by Vaughn Vernon - Approximately 656 pages.

  8. “Designing Data-Intensive Applications” by Martin Kleppmann - 2017.
  9. “Building Microservices” by Sam Newman - The first edition was published in 2015, but a second edition has been released in February 2021.
  10. “Patterns of Enterprise Application Architecture” by Martin Fowler - 2002.
  11. “Domain-Driven Design” by Eric Evans - 2003.
  12. “Software Architecture in Practice (3rd Edition)” by Len Bass, Paul Clements, and Rick Kazman - 2012.
  13. “Fundamentals of Software Architecture” by Mark Richards and Neal Ford - 2020.
  14. “Implementing Domain-Driven Design” by Vaughn Vernon - 2013.

Public Communications

  • Talked for Analytics Vidhya.
  • Writing book on LLMs with Manning Publications.

Additional ideas:

  • Write LinkedIn contributions.