By definition, any code written to solve a problem is an algorithm (not just the standard stuff found in textbooks), since a lot of people in IT write code to solve problems, then yes they absolutely need to understand some what performance characteristics and the correctness of what they wrote. Even if you don't need to performance characteristics, you certainly need the correctness part!