2. Understand computer science.
3. Understand computer engineering and architecture.
4. Understand people.
5. Understand bullshit.
Then, try programming a game from 20 years ago.
2. Understand computer science.
3. Understand computer engineering and architecture.
4. Understand people.
5. Understand bullshit.
Then, try programming a game from 20 years ago.
sure you profile and go for hotspots but still it is very hard to actually understand full impact and CS algorithms are done in ideal conditions so they don't address complexity of executing environment and might be misleading path for optimization.
So when I ask "if that method were performing too slowly, what would you do in order to make it faster?" I'm often met with answers-phrased-as-questions like "use Vector instead of ArrayList?" Or often the confident statement "use HashMap" because apparently HashMap magically makes things faster... Except we ask this question about a range query (aka checking "if x < y" instead of "if x == y").
But yeah, I wouldn't be insistent about that on a job interview.