3 ms·
How can having a comprehensive understanding of your infrastructure/stack be a weakness exactly? My high-level view of backend development is to make functions
by karmakaze 2y ago
How can having a comprehensive understanding of your infrastructure/stack be a weakness exactly?
My high-level view of backend development is to make functions that transform one persisted consistent state to another. Define the start/end states and all the code that's used to do that is implementation detail. The other part is fast reads of same.
- w10-1 2y ago> How can having a comprehensive understanding of your infrastructure/stack be a weakness exactly? Weakness in the inverse: not being ready to change to new code, because you have a clear and distinct understanding of the old, and an uncertain take on the new. In that case, even if the new were better objectively, it would be discounted for you by uncertainty. Conversely, if you understand something complex deeply and newbies don't, to them something that's easy to understand (but defers problems your stack solves) is preferable, and you end up with culture and governance issues. Managers who are relatively ignorant then set up competitions to surface issues, validate claims, and develop alternatives to mitigate their reliance risks on employees. So: move fast and forget things, and expect a fight :)
- karmakaze 2y agoAny code runs on the infrastructure/stack, so old or new it's the same underlying foundation. If there's a change or proposed change to the infrastructure/stack the first thing I'd do is become very familiar with it. I don't understand your 2nd point. I also spend a fair amount of time educating others on the importance of knowing what's underneath.
- lawn 2y ago> How can having a comprehensive understanding of your infrastructure/stack be a weakness exactly? It may cause you to favor complex solutions that are obvious to you, but inscrutable to people without your deep knowledge. This is very common with people who are very skilled at a complex tool (such as C++ or Kubernetes).
- karmakaze 2y ago> It may cause you to favor complex solutions that are obvious to you, but inscrutable to people without your deep knowledge. This is a valid concern that I'm aware of and I try to make things as clear to others as possible. Often my PR descriptions are much longer than my code changes with tests that illustrate exactly what's being done and including links to reference documentation that spells out what's being used. Most often others immediately understand it and were merely only unaware of its existence. It's not exactly that I lack experience elsewhere, only that I find understanding the base to be the biggest force multiplier when things get tough.