Hacker News new | ask | show | jobs
by atmosx 606 days ago
On a high level I agree with Mr Conway. “Orgs which design systems are constrained to produce designs which are copies of the communication structures of these organizations.”

You will rarely see two release processes being exactly the same in two companies or amongst teams in the same company.

The release process is completely different if you deploy microservices vs frontend, mobile or SPAs. Languages differ. Artifacts too.

Some tribes gave dedicated QA teams, others enforce developers to pass a testing threshold level during CI. Some do nothing, just test in production.

Some promote the same artifact, others rebuild in every stage running slightly different end to end tests.

We have a pretty customized rollback mechanism these days to enable quick rollbacks because we use gitOps, which doesn’t support rollbacks (the rollback happens when you revert a commit). But there there is a process, a lock tag and couple of many small things that same to be from experience.

Monorepos vs multi-repos. So many decisions depend on that…

Without knowing the specifics is hard to help. What I can tell you is that “metrics are king”. Make sure you measure time and success rate for each part of the build, test and deployment process. Developers can be like spoiled kids at times but they are your “clients”, make sure really, really listen.

Good luck!