Я не понимаю отличий между всеми этими терминами. Для меня инженер это что-то студенческое, из диплома. Кодер это уничижительное. Самый нормальный вариант это банальный программист по-русски, т.е. человек, который пишет программы.
А кто сколько получает — вообще вопрос третий. Обычно кто умеет на уши присесть, тот получает больше, кто не умеет — меньше, вот и весь сказ.