Little software design decisions have a big impact on performance.
Array-of-Structs vs Struct-of-Arrays is a neat example. This "small" difference for in-memory state organization drastically changes cache utilization and hit rate. In turn, you can get order-of-magnitude performance differences.
It's similar to the row-oriented vs column-oriented layouts for data systems. Which to choose depends on expected access patterns (OLTP vs OLAP).
Farad's article on this is quick read and easy to follow. Link below.
The crazy thing is that most company’s will place you in a week long scrum training and end up not practicing it. Why waste peoples time with things that won’t be religiously adhered to ? 😅
The lack of high cohesiveness in layered architecture is counter productive and counter intuitive. Jumping through many files just to work on a small feature in layered architecture can make you go crazy.
@tanujDE3180 He is a terrible engineer. Fixing a data edge case by hand for 3 years without coming up with an appropriate fix or documenting the process ?. Engineers who build knowledge silos are terrible.
@Akintola_steve This is a very generic question. What kind of logs? Write ahead logs? Commit Logs? OpLog? Replication Logs? Or Logs as we know from observability perspective?.
all that is needed is the right set of mcp tools integrated to all the platforms (notion, GitHub, confluence, Jira e.t.c) your company uses and onboarding will be easy. There is no architectural diagram of the system? AI can generate one (simple or complex)
One of the things I so much love about AI coding tool is not how fast it can help me iterate on an idea or a task but how easy it helps to understand an unfamiliar system.
The era of struggling to onboard on large and complex system will slowly fade away,
🧵