▲ | jasonjmcghee 5 days ago | |||||||||||||||||||||||||||||||||||||||||||
Every engineer should understand how to use a debugger and a time profiler (one that gives a call tree). Knowing how to do memory profiling is incredibly valuable too. So many problems can be solved with these. And then there's some more specialized tooling depending on what you're doing that can be a huge help. For SQL, the query planner and index hit/miss / full table scan. And things like valgrind or similar for cache hit/miss. Proper observability (spans/ traces) for APIs... Knowing that the tools exist and how to use them can be the difference between software and great software. Though system design / architecture is very important as well. | ||||||||||||||||||||||||||||||||||||||||||||
▲ | swagmoney1606 5 days ago | parent | next [-] | |||||||||||||||||||||||||||||||||||||||||||
Renderdoc! | ||||||||||||||||||||||||||||||||||||||||||||
▲ | lock1 5 days ago | parent | prev [-] | |||||||||||||||||||||||||||||||||||||||||||
So, uh, everything is important, and every engineer must know everything then? I mean, don't get me wrong, I do agree engineers should at least be aware of the existence of debuggers & profilers and what problems they can solve. It's just that not all the stuff you've said belongs in the "must know" category. I don't think you'll need valgrind or query planning in web frontend tasks. Knowing them won't hurt though. | ||||||||||||||||||||||||||||||||||||||||||||
|