Программист, кодер, девелопер (разработчик): сходства и отличия этих ролей?
Чем отличаются эти понятия? Я так понимаю программист это прежде всего инженер, занимающийся программной инженерией (анализ проблемы, проектирование, реализация, отладка и тестирование). Кодер более узкое понятие, он занимается только реализацией (используя при этом в основном готовые инструменты, библиотеки, фреймворки). Девелопер же понятие, наоборот, более широкое: это любой человек, который что-то создает, разрабатывает (проект, архитектуру, структуру, схему), при этом может вообще не программировать. Насколько оправдано такое видение?
Чем отличается продавец от менеджера по продажам от кассира от мерчендайзера?
Чем отличается клининг менеджер от мастера чистоты или от уборщика?
Тоже самое. Разные компании, разные забобоны. Название вообще никак не обозначает чем будет заниматься человек на этой позиции, это зависит от того, что у него в должностной инструкции или договоре, а не в названии.
Сомнительное видение, в данном случае проще смотреть на это как на синонимы и какие то оттенки эти слова приобретают только в контексте
То есть я найму кодера девелопера разработчика специалиста по джаваскрипт во всех четырех случаях значит ровно одно и тоже
Не вижу смысла делить эти термины. Что программист, что кодер, что девелопер (когда идет речь о программировании, а не о других сферах), что разработчик - это одно и то же.
Вы же лично можете вкладывать в эти понятия любые свои тонкие градации - по аналогии с тем, как люди определяют для себя приятелей, друзей, знакомых и т.д.