Files
kasperhermansen-blog/content/posts/assets/2023-09-09-backend-services.md
kjuulh 4bb6b0228a
Some checks failed
continuous-integration/drone/push Build is failing
feat: add blog contents
2025-07-31 11:01:22 +02:00

20 KiB

excalidraw-plugin, tags
excalidraw-plugin tags
parsed
excalidraw

==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠==

Text Elements

Backend service ^9wbfh44t

Backend engineer ^OYnQIyhR

User ^d7TsIcMm

Event sourced model ^tpEFylci

Domain events ^BKDeWmFh

Data platform Ingest ^eBw97vYs

%%

Drawing

{
  "type": "excalidraw",
  "version": 2,
  "source": "https://github.com/zsviczian/obsidian-excalidraw-plugin/releases/tag/1.9.19",
  "elements": [
    {
      "type": "rectangle",
      "version": 465,
      "versionNonce": 1569199600,
      "isDeleted": false,
      "id": "sTx3V6IBMr5fmkkGDikFE",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -298.22390437714466,
      "y": -177.26461889876435,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 149,
      "height": 151,
      "seed": 1536562448,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 3
      },
      "boundElements": [
        {
          "type": "text",
          "id": "9wbfh44t"
        },
        {
          "id": "J0mitVhCskhfgbLZOMKDf",
          "type": "arrow"
        },
        {
          "id": "Gvy66Wi-Z4fYBo_6xHAo2",
          "type": "arrow"
        },
        {
          "id": "PS6qWUBa9zPZp3Y7X1IH_",
          "type": "arrow"
        },
        {
          "id": "udDfzIaj1GY-t9tp-N-Gl",
          "type": "arrow"
        }
      ],
      "updated": 1694341209387,
      "link": null,
      "locked": false
    },
    {
      "type": "text",
      "version": 272,
      "versionNonce": 837801968,
      "isDeleted": false,
      "id": "9wbfh44t",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -268.38386226288685,
      "y": -126.76461889876435,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 89.31991577148438,
      "height": 50,
      "seed": 757141264,
      "groupIds": [],
      "frameId": null,
      "roundness": null,
      "boundElements": [],
      "updated": 1694341209387,
      "link": null,
      "locked": false,
      "fontSize": 20,
      "fontFamily": 1,
      "text": "Backend \nservice",
      "rawText": "Backend service",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "sTx3V6IBMr5fmkkGDikFE",
      "originalText": "Backend service",
      "lineHeight": 1.25,
      "baseline": 43
    },
    {
      "type": "diamond",
      "version": 210,
      "versionNonce": 1268187120,
      "isDeleted": false,
      "id": "vMWQeW3qRvIkUdjOLaWPz",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -345.43316720684743,
      "y": -482.1972278309496,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 220,
      "height": 200,
      "seed": 1298980624,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 2
      },
      "boundElements": [
        {
          "type": "text",
          "id": "OYnQIyhR"
        },
        {
          "id": "J0mitVhCskhfgbLZOMKDf",
          "type": "arrow"
        }
      ],
      "updated": 1694341455611,
      "link": null,
      "locked": false
    },
    {
      "type": "text",
      "version": 177,
      "versionNonce": 311525872,
      "isDeleted": false,
      "id": "OYnQIyhR",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -280.0931250925896,
      "y": -407.1972278309496,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 89.31991577148438,
      "height": 50,
      "seed": 817042704,
      "groupIds": [],
      "frameId": null,
      "roundness": null,
      "boundElements": [],
      "updated": 1694341455611,
      "link": null,
      "locked": false,
      "fontSize": 20,
      "fontFamily": 1,
      "text": "Backend \nengineer",
      "rawText": "Backend engineer",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "vMWQeW3qRvIkUdjOLaWPz",
      "originalText": "Backend engineer",
      "lineHeight": 1.25,
      "baseline": 43
    },
    {
      "type": "arrow",
      "version": 942,
      "versionNonce": 1338138096,
      "isDeleted": false,
      "id": "J0mitVhCskhfgbLZOMKDf",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -230.81771058718556,
      "y": -274.92613188060886,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 0.0046177819788795205,
      "height": 89.59298371386575,
      "seed": 2103470064,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 2
      },
      "boundElements": [],
      "updated": 1694341478296,
      "link": null,
      "locked": false,
      "startBinding": {
        "elementId": "vMWQeW3qRvIkUdjOLaWPz",
        "gap": 8.61227473592443,
        "focus": -0.041822171768161574
      },
      "endBinding": {
        "elementId": "sTx3V6IBMr5fmkkGDikFE",
        "gap": 8.06852926797876,
        "focus": -0.0950941088262367
      },
      "lastCommittedPoint": null,
      "startArrowhead": null,
      "endArrowhead": "arrow",
      "points": [
        [
          0,
          0
        ],
        [
          0.0046177819788795205,
          89.59298371386575
        ]
      ]
    },
    {
      "type": "diamond",
      "version": 295,
      "versionNonce": 1320180208,
      "isDeleted": false,
      "id": "v5jShMMi0xwqEukwhA_JJ",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -677.8497011004193,
      "y": -202.97325254400545,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 220,
      "height": 200,
      "seed": 783812880,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 2
      },
      "boundElements": [
        {
          "type": "text",
          "id": "d7TsIcMm"
        },
        {
          "id": "Gvy66Wi-Z4fYBo_6xHAo2",
          "type": "arrow"
        }
      ],
      "updated": 1694341100136,
      "link": null,
      "locked": false
    },
    {
      "type": "text",
      "version": 279,
      "versionNonce": 1567595504,
      "isDeleted": false,
      "id": "d7TsIcMm",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -590.1896745501264,
      "y": -115.47325254400545,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 44.67994689941406,
      "height": 25,
      "seed": 989095696,
      "groupIds": [],
      "frameId": null,
      "roundness": null,
      "boundElements": [],
      "updated": 1694341100136,
      "link": null,
      "locked": false,
      "fontSize": 20,
      "fontFamily": 1,
      "text": "User",
      "rawText": "User",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "v5jShMMi0xwqEukwhA_JJ",
      "originalText": "User",
      "lineHeight": 1.25,
      "baseline": 18
    },
    {
      "type": "arrow",
      "version": 204,
      "versionNonce": 911712752,
      "isDeleted": false,
      "id": "Gvy66Wi-Z4fYBo_6xHAo2",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -454.1370030401614,
      "y": -103.30812564496424,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 136.58153297230444,
      "height": 0.46945233740069625,
      "seed": 1541315344,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 2
      },
      "boundElements": [],
      "updated": 1694341478297,
      "link": null,
      "locked": false,
      "startBinding": {
        "elementId": "v5jShMMi0xwqEukwhA_JJ",
        "gap": 3.7277696925090282,
        "focus": 0.0005597545142185046
      },
      "endBinding": {
        "elementId": "sTx3V6IBMr5fmkkGDikFE",
        "gap": 19.331565690712296,
        "focus": 0.03082885731532018
      },
      "lastCommittedPoint": null,
      "startArrowhead": null,
      "endArrowhead": "arrow",
      "points": [
        [
          0,
          0
        ],
        [
          136.58153297230444,
          -0.46945233740069625
        ]
      ]
    },
    {
      "type": "ellipse",
      "version": 145,
      "versionNonce": 683659760,
      "isDeleted": false,
      "id": "KgN1wquMjbcnndF7mIZZE",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -121.86574511764019,
      "y": 3.1277624056234004,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 148,
      "height": 148,
      "seed": 1134723568,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 2
      },
      "boundElements": [
        {
          "id": "PS6qWUBa9zPZp3Y7X1IH_",
          "type": "arrow"
        },
        {
          "id": "udDfzIaj1GY-t9tp-N-Gl",
          "type": "arrow"
        },
        {
          "type": "text",
          "id": "tpEFylci"
        },
        {
          "id": "VpBDx2DIaWwIhOzzspdiO",
          "type": "arrow"
        }
      ],
      "updated": 1694341208616,
      "link": null,
      "locked": false
    },
    {
      "type": "text",
      "version": 51,
      "versionNonce": 1976533776,
      "isDeleted": false,
      "id": "tpEFylci",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -89.82159840249548,
      "y": 39.80186059781888,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 84.25990295410156,
      "height": 75,
      "seed": 384337392,
      "groupIds": [],
      "frameId": null,
      "roundness": null,
      "boundElements": [],
      "updated": 1694341203391,
      "link": null,
      "locked": false,
      "fontSize": 20,
      "fontFamily": 1,
      "text": "Event \nsourced \nmodel",
      "rawText": "Event sourced model",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "KgN1wquMjbcnndF7mIZZE",
      "originalText": "Event sourced model",
      "lineHeight": 1.25,
      "baseline": 68
    },
    {
      "type": "arrow",
      "version": 312,
      "versionNonce": 1626203120,
      "isDeleted": false,
      "id": "PS6qWUBa9zPZp3Y7X1IH_",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -136.53086016976556,
      "y": -49.76929969163509,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 61.85382626567878,
      "height": 37.75817092419969,
      "seed": 1044317968,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 2
      },
      "boundElements": [],
      "updated": 1694341478298,
      "link": null,
      "locked": false,
      "startBinding": {
        "elementId": "sTx3V6IBMr5fmkkGDikFE",
        "gap": 12.693044207379103,
        "focus": 0.701485505647599
      },
      "endBinding": {
        "elementId": "KgN1wquMjbcnndF7mIZZE",
        "gap": 20.504530823640664,
        "focus": -0.09142088821761776
      },
      "lastCommittedPoint": null,
      "startArrowhead": null,
      "endArrowhead": "arrow",
      "points": [
        [
          0,
          0
        ],
        [
          53.568507010659005,
          -1.482635738631508
        ],
        [
          61.85382626567878,
          36.27553518556818
        ]
      ]
    },
    {
      "type": "arrow",
      "version": 264,
      "versionNonce": 594273776,
      "isDeleted": false,
      "id": "udDfzIaj1GY-t9tp-N-Gl",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": -121.8622170366934,
      "y": 37.378326729495264,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 41.452896638401896,
      "height": 53.533654118295544,
      "seed": 2016661488,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 2
      },
      "boundElements": [],
      "updated": 1694341478298,
      "link": null,
      "locked": false,
      "startBinding": {
        "elementId": "KgN1wquMjbcnndF7mIZZE",
        "gap": 9.996996928687153,
        "focus": 0.3309459780456835
      },
      "endBinding": {
        "elementId": "sTx3V6IBMr5fmkkGDikFE",
        "gap": 10.109291509964066,
        "focus": -1.0057786128186066
      },
      "lastCommittedPoint": null,
      "startArrowhead": null,
      "endArrowhead": "arrow",
      "points": [
        [
          0,
          0
        ],
        [
          -41.452896638401896,
          -8.277501643773128
        ],
        [
          -29.488449945388496,
          -53.533654118295544
        ]
      ]
    },
    {
      "type": "arrow",
      "version": 347,
      "versionNonce": 840003056,
      "isDeleted": false,
      "id": "VpBDx2DIaWwIhOzzspdiO",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": 24.576866221444533,
      "y": 18.16307254849813,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 36.80615136981645,
      "height": 27.85323529808091,
      "seed": 1794506512,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 2
      },
      "boundElements": [],
      "updated": 1694341478299,
      "link": null,
      "locked": false,
      "startBinding": {
        "elementId": "KgN1wquMjbcnndF7mIZZE",
        "gap": 19.406459024912508,
        "focus": -0.0446534289390512
      },
      "endBinding": {
        "elementId": "Mka3QKUB7w92Jjr6-DRhz",
        "gap": 18.706684742883226,
        "focus": -0.4031728505525382
      },
      "lastCommittedPoint": null,
      "startArrowhead": null,
      "endArrowhead": "arrow",
      "points": [
        [
          0,
          0
        ],
        [
          36.80615136981645,
          -27.85323529808091
        ]
      ]
    },
    {
      "type": "rectangle",
      "version": 693,
      "versionNonce": 56960784,
      "isDeleted": false,
      "id": "Mka3QKUB7w92Jjr6-DRhz",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": 41.11056075971601,
      "y": -179.396847492466,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 149,
      "height": 151,
      "seed": 1399967504,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 3
      },
      "boundElements": [
        {
          "type": "text",
          "id": "BKDeWmFh"
        },
        {
          "id": "VpBDx2DIaWwIhOzzspdiO",
          "type": "arrow"
        },
        {
          "id": "lA0qGhpVklLgpJeUcdQ1L",
          "type": "arrow"
        }
      ],
      "updated": 1694341267230,
      "link": null,
      "locked": false
    },
    {
      "type": "text",
      "version": 511,
      "versionNonce": 2146905360,
      "isDeleted": false,
      "id": "BKDeWmFh",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": 77.41060195844648,
      "y": -128.896847492466,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 76.39991760253906,
      "height": 50,
      "seed": 1887792400,
      "groupIds": [],
      "frameId": null,
      "roundness": null,
      "boundElements": [],
      "updated": 1694341225855,
      "link": null,
      "locked": false,
      "fontSize": 20,
      "fontFamily": 1,
      "text": "Domain \nevents",
      "rawText": "Domain events",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "Mka3QKUB7w92Jjr6-DRhz",
      "originalText": "Domain events",
      "lineHeight": 1.25,
      "baseline": 43
    },
    {
      "type": "rectangle",
      "version": 182,
      "versionNonce": 810897904,
      "isDeleted": false,
      "id": "UgbAq4IFZljS9mLQwG9x_",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "dashed",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": 342.41036241134805,
      "y": -181.85191063672076,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 204,
      "height": 179,
      "seed": 1737255408,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 3
      },
      "boundElements": [
        {
          "type": "text",
          "id": "eBw97vYs"
        },
        {
          "id": "lA0qGhpVklLgpJeUcdQ1L",
          "type": "arrow"
        }
      ],
      "updated": 1694341273830,
      "link": null,
      "locked": false
    },
    {
      "type": "text",
      "version": 145,
      "versionNonce": 800429040,
      "isDeleted": false,
      "id": "eBw97vYs",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": 366.71045701584023,
      "y": -117.35191063672076,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 155.39981079101562,
      "height": 50,
      "seed": 998413296,
      "groupIds": [],
      "frameId": null,
      "roundness": null,
      "boundElements": [],
      "updated": 1694341273830,
      "link": null,
      "locked": false,
      "fontSize": 20,
      "fontFamily": 1,
      "text": "Data platform \nIngest",
      "rawText": "Data platform Ingest",
      "textAlign": "center",
      "verticalAlign": "middle",
      "containerId": "UgbAq4IFZljS9mLQwG9x_",
      "originalText": "Data platform Ingest",
      "lineHeight": 1.25,
      "baseline": 43
    },
    {
      "type": "arrow",
      "version": 122,
      "versionNonce": 498267632,
      "isDeleted": false,
      "id": "lA0qGhpVklLgpJeUcdQ1L",
      "fillStyle": "hachure",
      "strokeWidth": 1,
      "strokeStyle": "solid",
      "roughness": 1,
      "opacity": 100,
      "angle": 0,
      "x": 204.27567581184144,
      "y": -109.63460928149289,
      "strokeColor": "#1e1e1e",
      "backgroundColor": "transparent",
      "width": 120.06734329975325,
      "height": 3.656040452848913,
      "seed": 580477936,
      "groupIds": [],
      "frameId": null,
      "roundness": {
        "type": 2
      },
      "boundElements": [],
      "updated": 1694341478300,
      "link": null,
      "locked": false,
      "startBinding": {
        "elementId": "Mka3QKUB7w92Jjr6-DRhz",
        "gap": 14.16511505212543,
        "focus": -0.039063585773621255
      },
      "endBinding": {
        "elementId": "UgbAq4IFZljS9mLQwG9x_",
        "gap": 18.06734329975336,
        "focus": 0.26558547393487125
      },
      "lastCommittedPoint": null,
      "startArrowhead": null,
      "endArrowhead": "arrow",
      "points": [
        [
          0,
          0
        ],
        [
          120.06734329975325,
          -3.656040452848913
        ]
      ]
    }
  ],
  "appState": {
    "theme": "dark",
    "viewBackgroundColor": "#ffffff",
    "currentItemStrokeColor": "#1e1e1e",
    "currentItemBackgroundColor": "transparent",
    "currentItemFillStyle": "hachure",
    "currentItemStrokeWidth": 1,
    "currentItemStrokeStyle": "dashed",
    "currentItemRoughness": 1,
    "currentItemOpacity": 100,
    "currentItemFontFamily": 1,
    "currentItemFontSize": 20,
    "currentItemTextAlign": "left",
    "currentItemStartArrowhead": null,
    "currentItemEndArrowhead": "arrow",
    "scrollX": 863.351248291904,
    "scrollY": 505.83489718634723,
    "zoom": {
      "value": 1.9000000000000001
    },
    "currentItemRoundness": "round",
    "gridSize": null,
    "gridColor": {
      "Bold": "#C9C9C9FF",
      "Regular": "#EDEDEDFF"
    },
    "currentStrokeOptions": null,
    "previousGridSize": null,
    "frameRendering": {
      "enabled": true,
      "clip": true,
      "name": true,
      "outline": true
    }
  },
  "files": {}
}

%%