<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Bartosz Urbański</title>
    <description>The latest articles on DEV Community by Bartosz Urbański (@bartosz_urbaski_fe61c13e).</description>
    <link>https://dev.to/bartosz_urbaski_fe61c13e</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3945612%2F8d361d54-7e96-40fb-8cd0-d335927cb472.png</url>
      <title>DEV Community: Bartosz Urbański</title>
      <link>https://dev.to/bartosz_urbaski_fe61c13e</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/bartosz_urbaski_fe61c13e"/>
    <language>en</language>
    <item>
      <title>One Coordination Layer Instead of Five Tools: How We Stopped Rebuilding Reality Every Week</title>
      <dc:creator>Bartosz Urbański</dc:creator>
      <pubDate>Fri, 22 May 2026 08:33:55 +0000</pubDate>
      <link>https://dev.to/bartosz_urbaski_fe61c13e/one-coordination-layer-instead-of-five-tools-how-we-stopped-rebuilding-reality-every-week-1bkn</link>
      <guid>https://dev.to/bartosz_urbaski_fe61c13e/one-coordination-layer-instead-of-five-tools-how-we-stopped-rebuilding-reality-every-week-1bkn</guid>
      <description>&lt;p&gt;A delivery date gets confirmed in an email thread on Tuesday. By Thursday, the spreadsheet still shows last week's date. Finance issues an invoice against the spreadsheet. A partner uploads a signed document to their own portal — and nobody attaches it to the case everyone else is tracking. Friday's status meeting spends forty minutes reconstructing what should have been obvious on Monday.&lt;/p&gt;

&lt;p&gt;Nobody was careless. Everyone was working on the same operational story. They just never saw the same version of it at the same time.&lt;/p&gt;

&lt;p&gt;We recently helped a mid - sized service company (roughly twenty to forty people) move off that pattern. The fix was not another CRM, another dashboard, or a heavier ERP rollout. It was one web application acting as a coordination layer: shared records, explicit relationships, permissions that match who actually owns what, and integrations only where the boundaries are.&lt;/p&gt;

&lt;p&gt;This article walks through what that looked like in practice —friction, architecture, patterns, and what changed after go - live.&lt;/p&gt;

&lt;h2&gt;
  
  
  The opening story: same case, five truths
&lt;/h2&gt;

&lt;p&gt;The company handled multi - step operational work with internal staff, external partners, and clients. On paper they had everything they needed:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Email for communication&lt;/li&gt;
&lt;li&gt;Spreadsheets for tracking&lt;/li&gt;
&lt;li&gt;Accounting software for invoices&lt;/li&gt;
&lt;li&gt;Shared folders for documents&lt;/li&gt;
&lt;li&gt;Partner-specific tools at the edge of the process&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The problem was not missing software. Each tool described a &lt;strong&gt;different slice&lt;/strong&gt; of the same reality. Email held the latest commitment. The spreadsheet held the last manual update. Accounting held what had been billed. The folder held files — but not always the file that mattered &lt;em&gt;right now&lt;/em&gt;. Partner systems held partner-side truth that never quite landed in the main record.&lt;/p&gt;

&lt;p&gt;So the real daily question stopped being &lt;em&gt;what's next?&lt;/em&gt; and became &lt;strong&gt;which version should we act on?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That question is expensive. It does not show up as a single outage. It shows up as small, constant drag: double - checking, follow - ups, meetings that exist mainly to align fragments.&lt;/p&gt;

&lt;h2&gt;
  
  
  The coordination tax
&lt;/h2&gt;

&lt;p&gt;We call the recurring cost of keeping parallel truths aligned the &lt;strong&gt;coordination tax&lt;/strong&gt;. It is easy to miss because it feels like normal operations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A date confirmed in email does not appear in the tracking sheet.&lt;/li&gt;
&lt;li&gt;An invoice goes out on data that was already superseded.&lt;/li&gt;
&lt;li&gt;A partner document never gets linked to the record the team uses.&lt;/li&gt;
&lt;li&gt;Status is rebuilt from memory and inboxes in recurring meetings.&lt;/li&gt;
&lt;li&gt;When one person is away, work stalls because context lives in their mailbox, not in the work itself.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of these are dramatic failures. They are the predictable result of &lt;strong&gt;multiple systems pretending to describe one reality&lt;/strong&gt; without a single place that stays current.&lt;/p&gt;

&lt;p&gt;The organizational pattern underneath is familiar. Someone commits to a date in one channel. Someone else invoices against another. A partner updates something only in their thread. A client asks a simple question — and answering it means checking three places. Without one current representation of the work, the organization rebuilds that picture manually, again and again.&lt;/p&gt;

&lt;p&gt;Status meetings, "just checking" messages, and endless follow - ups are not collaboration. They are &lt;strong&gt;manual reconciliation&lt;/strong&gt; because the system of record does not exist yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why adding another tool usually fails
&lt;/h2&gt;

&lt;p&gt;When teams feel this pain, the instinct is often to add another product: a CRM module, a project board, a workflow app, another integration. Sometimes that helps a narrow slice. Often it makes fragmentation worse.&lt;/p&gt;

&lt;p&gt;Another standalone tool tends to fail as a coordination fix for a few structural reasons:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. It becomes a sixth truth, not the hub.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
If updates still happen primarily in email and spreadsheets, the new tool is yet another place someone must remember to sync. Unless the team changes &lt;em&gt;where&lt;/em&gt; work is updated, you have added reporting overhead, not operational clarity.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Generic products model their entities, not yours.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Operational work in service businesses is usually specific: cases, handoffs, partner artifacts, billing triggers, role boundaries. Off-the-shelf tools force awkward workarounds or heavy customization before they describe how work actually moves.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Integrations copy data; they do not always establish ownership.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Pushing rows between systems can reduce typing. It does not, by itself, answer: &lt;em&gt;who updates this field, when, and what happens if two sources disagree?&lt;/em&gt; Without that, integrations multiply conflicting copies instead of ending them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. The hard part is behavior, not login screens.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Tools do not fail because people refuse to use software. They fail when the "official" record is still easier to bypass than the inbox. Coordination fixes require a record people trust enough to update &lt;strong&gt;in the moment work changes&lt;/strong&gt;—not after the meeting.&lt;/p&gt;

&lt;p&gt;What this company needed was not "more features" in five places. It was &lt;strong&gt;one current view of operational truth&lt;/strong&gt; that roles, partners, and processes could attach to.&lt;/p&gt;

&lt;h2&gt;
  
  
  What we built instead
&lt;/h2&gt;

&lt;p&gt;We moved the operational core into &lt;strong&gt;one web application&lt;/strong&gt; that models the main entities and how they relate. The principle is simple to state and hard to get right in legacy environments:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Instead of passing information between tools, people and processes update the &lt;strong&gt;same record&lt;/strong&gt; as work progresses.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Concretely, that meant:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;One hub&lt;/strong&gt; for operational cases — not a dashboard that aggregates five systems, but the place where status, dates, ownership, and links live.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Explicit relationships&lt;/strong&gt; between records (case ↔ documents ↔ billing ↔ partner inputs) so "where is the file?" is a query, not an archaeology project.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Permissions aligned with responsibility&lt;/strong&gt; so partners and internal roles see what they need without turning the hub into a shared drive with no rules.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Integrations at boundaries&lt;/strong&gt;—accounting, email notifications, partner inputs—without duplicating the operational story in each system.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The stack was pragmatic: &lt;strong&gt;PHP with Symfony&lt;/strong&gt; and &lt;strong&gt;Sonata Admin&lt;/strong&gt; for internal operations. We mention it only because dev.to readers care about maintainability: a small team can evolve domain logic, permissions, and integrations in one codebase without fighting a low - code ceiling. The stack is not the lesson. &lt;strong&gt;The structure is.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;No duplication. No parallel versions. External systems still do what they are good at—invoicing, storage, partner workflows—but they stop being where the team &lt;em&gt;decides&lt;/em&gt; what is true today.&lt;/p&gt;

&lt;h2&gt;
  
  
  Four technical patterns that made it stick
&lt;/h2&gt;

&lt;p&gt;If you are designing something similar, these patterns matter more than brand names on a diagram.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Operational record as the unit of truth
&lt;/h3&gt;

&lt;p&gt;Every meaningful piece of work gets a &lt;strong&gt;durable record&lt;/strong&gt; in the hub—not a row someone might update in a sheet, but an entity with identity, status, owners, and history. Updates attach to that record first. Email can notify; spreadsheets can export; accounting can pull—but the hub answers "what is true now?"&lt;/p&gt;

&lt;p&gt;Design implication: resist modeling only "tasks" or "tickets" if your business thinks in &lt;strong&gt;cases&lt;/strong&gt; with long lifetimes, multiple actors, and billing side effects. Name and shape entities the way operators already talk about work.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Explicit relationships, not implied links
&lt;/h3&gt;

&lt;p&gt;"Related document," "partner submission," "invoice for this case" should be &lt;strong&gt;first - class links&lt;/strong&gt;, not folder conventions or filename habits. When relationships are explicit, you can enforce rules (no invoice without confirmed dates), show context in one screen, and audit what was attached when.&lt;/p&gt;

&lt;p&gt;Design implication: prefer a small, clear graph of entity types over a wide flat table with dozens of nullable columns. Relationships are how you kill "which spreadsheet tab was that on?"&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Permissions that mirror real responsibility
&lt;/h3&gt;

&lt;p&gt;Coordination breaks when everyone can edit everything—or when only one admin can fix routine updates. Permissions should follow &lt;strong&gt;who is allowed to change which part of the truth&lt;/strong&gt;: internal roles, partner scoped views, read only client facing slices where needed.&lt;/p&gt;

&lt;p&gt;Design implication: design write paths per role early. If updating the record is harder than sending an email, email wins. Every unnecessary friction point is a future inbox truth.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Integrations at boundaries, not middle of the workflow
&lt;/h3&gt;

&lt;p&gt;Accounting, document storage, partner APIs, and notification channels belong at the &lt;strong&gt;edges&lt;/strong&gt;. They consume or emit events against the hub; they do not each maintain their own version of case status. When a partner uploads a file, the integration lands it on the &lt;strong&gt;shared record&lt;/strong&gt;, not in a side channel someone must merge later.&lt;/p&gt;

&lt;p&gt;Design implication: define idempotent sync rules and conflict policy up front—what wins if an external system disagrees with the hub? Usually the hub for operational status, the specialist system for its domain (ledger lines, tax codes).&lt;/p&gt;

&lt;p&gt;Together, these patterns turn "five tools" into &lt;strong&gt;one coordination layer&lt;/strong&gt; with specialists plugged in—not five competing narrators.&lt;/p&gt;

&lt;h2&gt;
  
  
  Before and after
&lt;/h2&gt;

&lt;p&gt;The shift was as much behavioral as technical. Tables are useful here because the contrast is repetitive across teams like this one:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Before&lt;/th&gt;
&lt;th&gt;After&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Truth split across email, sheets, folders, partner tools&lt;/td&gt;
&lt;td&gt;One operational hub with shared records&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Status rebuilt in meetings and messages&lt;/td&gt;
&lt;td&gt;Current state visible without a recap&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Handoffs implied and easy to drop&lt;/td&gt;
&lt;td&gt;Handoffs explicit and traceable&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Context tied to individuals&lt;/td&gt;
&lt;td&gt;Context attached to the work&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;After go - live, teams largely stopped asking &lt;em&gt;where is this?&lt;/em&gt; Updates happened on shared records instead of being retyped or forwarded. Handoffs became visible rather than assumed. New people could follow a case without inbox archaeology. External input—documents, partner data—landed where everyone already worked.&lt;/p&gt;

&lt;p&gt;Instead of reconstructing reality every week, they &lt;strong&gt;worked on reality directly&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Measured impact
&lt;/h2&gt;

&lt;p&gt;Improvements were not a single dramatic launch - day metric. They were consistent over the following months:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Roughly &lt;strong&gt;30–50% less time&lt;/strong&gt; spent on status clarification and follow - ups.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fewer operational errors&lt;/strong&gt; from outdated or mismatched data (billing, dates, missing attachments).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Faster decisions&lt;/strong&gt; because information did not need a validation round before acting.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Less dependency&lt;/strong&gt; on specific individuals holding context in their heads or inboxes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The most important outcome is harder to put in a spreadsheet: the organization stopped paying the full coordination tax on &lt;strong&gt;every&lt;/strong&gt; task. Meetings could focus on decisions, not on rebuilding a picture that should already exist.&lt;/p&gt;

&lt;p&gt;Once a single system is the source of truth, additional inputs—field data, document pipelines, external requests—have a natural place to land. Without that core, every new channel is another drift vector.&lt;/p&gt;

&lt;h2&gt;
  
  
  When this approach fits—and when it does not
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;This works well when:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Work crosses multiple roles or external partners.&lt;/li&gt;
&lt;li&gt;You already rely on email, spreadsheets, and separate tools—and spend real time double - checking.&lt;/li&gt;
&lt;li&gt;Status visibility is a recurring problem, not a one - off project slip.&lt;/li&gt;
&lt;li&gt;You are willing to change &lt;em&gt;where&lt;/em&gt; updates happen, not only add reporting.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;It is probably not worth it when:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Operations are simple and owned end to end by one person.&lt;/li&gt;
&lt;li&gt;You already have a clear, enforced system of record people actually use.&lt;/li&gt;
&lt;li&gt;Coordination overhead is negligible compared to other constraints.&lt;/li&gt;
&lt;li&gt;Leadership wants a tool purchase without process ownership—structure will still be missing.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We are not arguing every company needs custom software. We are arguing that when fragmentation is the bottleneck, &lt;strong&gt;another disconnected product&lt;/strong&gt; rarely fixes it. A deliberate coordination layer might.&lt;/p&gt;

&lt;h2&gt;
  
  
  Closing
&lt;/h2&gt;

&lt;p&gt;If your week looks like the opening story—dates in email, status in sheets, invoices on stale data, partner files in limbo—the issue is rarely effort. It is &lt;strong&gt;structure&lt;/strong&gt;: no single place that stays current while work moves across people and systems.&lt;/p&gt;

&lt;p&gt;We build that layer for service and operations - heavy teams: one hub, explicit relationships, permissions that match responsibility, integrations that do not multiply truth. No hype, no promise that software alone replaces good process—but a practical end to rebuilding reality every Friday.&lt;/p&gt;

&lt;p&gt;If this resonates, the full case study (problem, approach, and impact in more detail) is here:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;English:&lt;/strong&gt; &lt;a href="https://www.8mb.pl/en/case-studies/one-system-coordination" rel="noopener noreferrer"&gt;https://www.8mb.pl/en/case-studies/one-system-coordination&lt;/a&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Polish:&lt;/strong&gt; &lt;a href="https://www.8mb.pl/studia-przypadkow/jeden-system-koordynacja" rel="noopener noreferrer"&gt;https://www.8mb.pl/studia-przypadkow/jeden-system-koordynacja&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You do not need a full specification to start a useful conversation. A short description of how work actually moves—where it breaks, what gets double checked, is often enough to see whether a single coordination layer is the right next step. If you want to talk it through, reach out via the case study page or &lt;a href="https://www.8mb.pl/en/contact" rel="noopener noreferrer"&gt;8mb contact&lt;/a&gt;. We will reply with a clear next step—or say plainly when we are not the right fit.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written from delivery work at &lt;a href="https://www.8mb.pl" rel="noopener noreferrer"&gt;8mb&lt;/a&gt; — a small, senior - led engineering studio focused on reliable backend systems, integrations, and operational software that stays maintainable after go - live.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>webdev</category>
      <category>backend</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
