u/Prestigious-Fox-8782

▲ 32 r/golang

How do you structure and maintain large Go modular monoliths without drowning in architecture ?

I’m working on an e-commerce backend in Go. Stack is mostly:

  • Postgres
  • sqlc
  • huma + chi
  • SuperTokens self-hosted
  • ERPNext as the single source of truth, with the backend mostly acting as a BFF/gateway
  • Stripe

I started with good intentions: keep things clean, modular, properly separated, and follow some DDD/hexagonal architecture ideas without going full enterprise Java mode.

But once the project grows, keeping everything “clean” becomes exhausting.

A lot of the time, I feel like I’m spending more energy maintaining the architecture than actually shipping features.

The things that constantly become painful are:

  • Wiring dependencies
  • Avoiding circular imports
  • Transaction management across modules
  • Figuring out where code should live
  • Keeping boundaries clean without creating tons of boilerplate
  • Deciding when an interface is actually useful versus just architecture cosplay

At smaller scale, Go feels amazing: simple, productive, and fast.

At larger scale, though, I sometimes feel like there’s a missing middle ground between:

  1. “Just put everything in handlers/services”
  2. Ultra-pure clean architecture with 500 layers and endless interfaces

For people maintaining large Go codebases:

  • What architectural style ended up working for you?
  • Any package layout patterns that scale well?
  • How do you structure modules or bounded contexts?
  • Do you use mediators, event buses, or domain events?
  • How much coupling do you tolerate in practice?
  • Any repos, talks, articles, or open-source examples you’d recommend?

I’d really appreciate practical advice from people who’ve gone through this already.

>Edit: Formatting for readability.

reddit.com
u/Prestigious-Fox-8782 — 3 days ago
▲ 59 r/france

Je comprends pas pourquoi les tickets resto marchent encore comme ça en 2026.

À chaque fois que tu changes de boîte :

- tu reçois une nouvelle carte,

- tu télécharges une nouvelle app,

- et l’ancienne finit oubliée dans un tiroir.

Entre Edenred, Swile, Pluxee, Alan etc., chacun a son système, alors qu’au final c’est juste de l’argent pour payer à manger.

Je trouve ça bizarre qu’il n’existe pas simplement un "compte ticket resto" perso, que n’importe quel employeur pourrait recharger. Un peu comme un IBAN ou même le CPF.

Et puis niveau écologie, produire/envoyer des cartes plastiques nominatives pour des gens qui vont parfois changer de boîte un an après… ça paraît quand même pas hyper logique.

Il y a une vraie raison technique/réglementaire derrière ? Ou c’est surtout parce que chaque acteur veut garder son propre écosystème ?

Je suis curieux de savoir si certains ici bossent dans le secteur ou connaissent un peu les coulisses.

reddit.com
u/Prestigious-Fox-8782 — 13 days ago