What's the difference between a system engineer, a software engineer, a web developer and a computer scientist? What is a basic example of the difference between a coder, programmer and a software engineer?