by LewisVerstappen on 9/9/2022, 4:47:50 AM
[Software Architecture Patterns](https://learning.oreilly.com/library/view/software-architect...) by Mark Richards answers your exact questions - goes into multi-tier, microservices, event-driven, etc.
I'd highly recommend getting an O'Reilly membership. It gives you access to their entire catalog and you can just search whatever topic you're interested in and they'll let you read books on it.
In terms of free resources, I like [Quastor](http://www.quastor.org/). It's a newsletter that looks at all the big tech engineering blogs (Facebook Engineering, Uber Engineering, Lyft, etc.) and then sends a summary of the interesting ones published.
by nivertech on 9/9/2022, 10:35:26 AM
Software Architecture is an interesting rabbit hole that can easily eat many years of your life, but I think you're asking the wrong questions.
If you're a bootstrapped unfunded startup most-likely it's built using simple and straight-forward software architecture, so learning advanced patterns will not help before you raised more funds and hired more developers.
Also, it seems that your real problem was passing a technical due diligence with investors, not learning advanced software architecture. I would suggest pairing with a consultant for one or more sessions and create a very short HLD (High-level Design) document describing your current architecture and design.
If you still want to learn SW architecture you can start from Martin Fowler's site:
by brudgers on 9/9/2022, 12:43:25 PM
To me, the Big Ball of Mud might be the most useful architecture to understand, because that is the architecture that usually gets built. Either sooner or later.
Quick version: https://en.wikipedia.org/wiki/Big_ball_of_mud
Source: https://en.wikipedia.org/wiki/Big_ball_of_mud
It's probably what your company has.
And would have been an honest answer to the potential investor -- they're not an actual investor until they invest.
Whether or not an honest answer to the potential investor would have been what your employer wanted from you is another matter.
Anyway, Wikipedia is a pretty good starting point for software architecture types.
Good luck.
by labarilem on 9/9/2022, 8:22:36 AM
A previous thread: https://news.ycombinator.com/item?id=22202769
by throwaway0asd on 9/10/2022, 9:31:47 AM
To improve performance of live updates I refactored my application around streams on persistent sockets. It allows for bidirectional communication of micro services from single points of management within the application in a non blocking way. It’s faster than having to deal with protobuf (gRPC) and still allows communication to the browser or other applications.
I am a CTO (by virtue of being the founding engineer; straight out of college) at a 5-6 year old startup.
We have bootstrapped our way till here and are now looking for funding.
An investor asked me what our technical architecture was. I began to explain to him with a lot of hand waving. After a while he stopped me and told that there are several kinds of architecture like 2-tier, multi-tier, microservices etc. What kind was ours? I could not give him a satisfactory answer.
I realized that it might be helpful for me to understand these architectures and apply them in our context. Can you please recommend me some good books that might go into details of various kinds of architecture?