>But, when you have to ship 50k IOT devices and they have to be under $20.
You're working on couple M $ project total ? Meanwhile a guy shaving off a % off performance in a FB data center saves them millions a year in power consumption alone.
But FB guys don't micro optimize (they use PHP FFS), they measure production systems and look for bottlenecks. Premature optimization is a gut feeling based guessing game not quality engineering.
FB engineer here; worked on HHVM for several years. We absolutely do "micro-optimize", e.g., our string hashing code is written in hand-tuned assembly.
Where we apply those optimizations is, of course, driven by profiling, so those statements aren't entirely in conflict.
Well they are in the context - the article talks about premature optimization - and the OP argues you should micro optimize to be a good engineer.
What I'm saying is the only way to do optimization correctly is by doing the things you and everyone else is doing when it matters - measure before and after - the rest is just assumptions that rarely pan out the way you expect them to - at least that's my experience with optimization when I was still doing game dev. You can really do micro optimization up-front
But, when you have to ship 50k IOT devices and they have to be under $20. Your bosses will squeeze you for every ounce of optimization.