Best of ArchitectureJuly 2022

  1. 1
    Article
    Avatar of freecodecampfreeCodeCamp·4y

    The Software Architecture Handbook

    In this article we'll talk about what architecture is within the software world, some of the main concepts to know about it. For each topic I'll give a brief and superficial introduction and code/pseudo-code examples. The most commonly used are REST, SOAP and GraphQl. Most often the HTTP protocol is used. But other protocols and content formats are perfectly possible.

  2. 2
    Article
    Avatar of pointerPointer·4y

    Fundamental Software Architectural Patterns

    Architectural patterns are essentially reusable solutions to common problems. Partitioning a system into separate layers, organizing components within them by related criteria, allows developers and teams to work better together. The scope is broader for the architectural patterns while design patterns represent a way to structure classes to build the best internal structure.

  3. 3
    Article
    Avatar of devgeniusDev Genius·4y

    Top 10 Architecture Characteristics / Non-Functional Requirements with Cheatsheet

    Top 10 Architecture Characteristics / Non-Functional Requirements with Cheatsheet. Top 10 Architectural Characteristics covers most of the aspect of a large-scale project. You don’t need to accommodate all in your project; pick the most essential and knock it out.

  4. 4
    Article
    Avatar of communityCommunity Picks·4y

    The Guide to Modern Data Architecture

    This is an updated version of a post we originally published in 2020. We argue that core data processing systems have remained relatively stable over the past year, while supporting tools and applications have proliferated rapidly. We explore the hypothesis that platforms are beginning to emerge in the data ecosystem, and that this helps explain the particular patterns we’re seeing.

  5. 5
    Article
    Avatar of semaphoreSemaphore·4y

    When Microservices Are a Bad Idea

    Migrating from a monolith to microservices is not a simple task, and creating an untested product as a new microservice is even more complicated. A common reason developers want to avoid monoliths is their proclivity to deteriorate into a tangle of code.

  6. 6
    Article
    Avatar of itnextITNEXT·4y

    🚀Boost NodeJS Scalability with Multi-Processing Architecture🚀

    NodeJS is bad when it has to handle CPU intensive tasks. I decided to offload the problematic processes into a dedicated worker process. It turns out that doing it reduced significantly the overhead of scaling out the application. I will share the details to have a bulletproof multi-core single codebase architecture in production.

  7. 7
    Article
    Avatar of hashnodeHashnode·4y

    Clean Architecture in Frontend – State in Angular

    Clean Architecture is a way to isolate an application from frameworks, UI, and databases. It leverages SOLID principles and shows how to put them together on a larger scale. The application layers have a hierarchy. Entities are on the top, and UI is on the bottom. A layer must not have a dependency on any other underlying layer.

  8. 8
    Article
    Avatar of awstipAWS Tip·4y

    Let’s go Serverless.

    Serverless is a cloud native execution model in which the cloud provider dynamically allocates the resources needed to execute a particular piece of code. This offers automatic scaling, built-in high availability and cost optimization with pay-per-use billing. Let’s build a simple serverless architecture with API Gateway, Lambda functions, Dynamo DB and S3.

  9. 9
    Article
    Avatar of btrprogBetter Programming·4y

    The “Real” Clean Architecture in Android: S.O.L.I.D.

    Inheritance is the tightest coupling you can have, bad usage of it leads to highly-coupled and lowly-cohesive code. 99% of the things you want to do with inheritance can be done with composition so you should always favor composition over inheritance. Architecture relying on inheritance is far from being good and clean.

  10. 10
    Article
    Avatar of devgeniusDev Genius·4y

    A glimpse of System Design and Architecture

    Refresher project aims to create a complete guide in every aspect of those technologies to serve as a guide or a template for jumpstarting similar projects. The project is a Django backend using PostgresSQL database with asynchronous task scheduler — celery — using a Redis broker. The speedtester app mainly runs internet speedtests every specific interval using celery workers and stores the download , upload speeds and URL of each test to the Postgres database.

  11. 11
    Article
    Avatar of infoqInfoQ·4y

    The Spotify System Model: Automated Architecture Visualization at Spotify

    Spotify engineers recently published how they standardized architecture diagrams at the company. They defined a standard system model named the Spotify Software Model and adapted the C4 model to visualize it. This combination created a shared language used across the organization, which helps communication, aids decision-making, and supports Spotify's software's evolution.

  12. 12
    Article
    Avatar of semaphoreSemaphore·4y

    5 Ways to Deploy Microservices

    Microservice applications can run in many ways, each with different tradeoffs and cost structures. What works for small applications spanning a few services will likely not suffice for large-scale systems. Microservices are the most scalable way of developing software. But that means nothing unless we choose the right way to deploy microservices.

  13. 13
    Article
    Avatar of gcgitconnected·4y

    Don’t be scared! 7 irrational fears that lead to bad software and architecture

    Fear of imperfection often leads to gold plating of the architecture and over-engineering of the solution. In Agile product development, the fear of not knowing requirements enough is most harmful. A truly Agile team consciously chooses not to define everything upfront about what their product will or will not do.

  14. 14
    Article
    Avatar of hnHacker News·4y

    jorgef/engineeringladders: A framework for Engineering Managers

    The framework allows software engineering managers to have meaningful conversations with their direct reports around the expectations of each position and how to plan for the next level in their career ladder. The Manager's Path: Camille Fournier does an excellent job at describing the expectations and challenges of many engineering positions. Dick Grote explains in simple terms how to define job responsibilities.

  15. 15
    Article
    Avatar of btrprogBetter Programming·4y

    Domain-Driven Design: Domain Events and Integration Events in .Net

    Domain Events are used to allow aggregates to react to a change in another aggregate without coupling them. It is acceptable and much easier to handle Domain Events within the same process and transaction scope that they were published from. Integration Events can be published using a Message Broker/Event Bus. In a real application, a third-party tool would be used such as Rabbit MQ.

  16. 16
    Article
    Avatar of anavidAnalytics Vidhya·4y

    Apache Kafka Architecture and Use Cases Explained

    Kafka is a distributed publish-subscribe messaging system. It has a full queue that can accept large amounts of message data. Kafka is used by big internet companies like LinkedIn, Twitter, Airbnb, and many others. This article was published as a part of the Data Science Blogathon.

  17. 17
    Article
    Avatar of heliosHelios·4y

    How I made an impact in my first 100 days at Helios

    Helios was designed to help developers simplify day-to-day tasks in the developer journey. Helios-app service performs queries to our entities-service, which holds an enriched trace object with additional data and metadata based on I was able to generate an E2E test for one of the first features I released. It continues running today and is part of our CI/CD pipeline now.

  18. 18
    Article
    Avatar of discdotDiscover .NET·4y

    Fintech Mindset to Software Design

    Fintech Mindset to Software Design: How does the money flow through a system? Follow the Money when thinking about decomposing a system and understanding a domain, I help to follow the money. This can lead to understanding the workflows and processes that generate revenue and cost.

  19. 19
    Article
    Avatar of foojayioFoojay.io·4y

    Discussing Backend For Front-end

    Foojay Today Microservices Discussing Backend For Front-end July 25, 2022. In the good old days, applications were simple. The rise of mobile clients and integrations with other apps upset this simplicity. I want to discuss one solution to handle the complexity in this post.

  20. 20
    Article
    Avatar of stackovStack Overflow Blog·4y

    Event-Driven Topic Design using Kafka

    Kafka is an event-driven architecture that allows low coupling between services. One service produces to a topic, while other services consume from the topic. Messages are only deleted by compaction or retention settings (e.g. delete any message that’s older than seven days)—they aren’t deleted manually.