Software Engineering Learnings

Code
  • Every line of code is a liability.
  • The best code is no code.
Refactor
  • Make small, manageable changes.
  • Good refactor uses language idiomatic constructs without significantly changing style.
  • If you can’t maintain style in the whole codebase, at least maintain it in a single file or module.
  • Deeply understand the code before re-factoring.
  • Avoid adding new libraries and dependencies.
  • Write tests to ensure functionality doesn’t break.
  • Get feedback (code reviews).
SRE
  • Hope is not a strategy.