Должен ли программист при получении заказа выполнять и роль девопса?
Должен кому? Долг перед заказчиком определяется пунктами договора. Если вы не соглашались делать работу devops'а, то и не должны её делать. Но лично я считаю, что должен самому себе уметь делать решения под ключ. Правда, я за это всегда накручивал ценик равный оплате разработчика бэкенда, фронтенда, админа, аналитика и менеджера проекта.
Можно тщательнее узнавать техзадание, перед тем как браться за работу.
Сейчас у тебя появился опыт, что нужно с заказчиком уточнить вопрос инфраструктуры, прежде чем браться за заказ.
А так - нет никаких "нельзя" или "можно". Есть договоренности и оплата.
ДевОпс - это тоже не универсальный человек. Если девопс проработал с виртуализацией 5 лет, а потом его попросили разобраться с AWS - он будет также смореть на новые ворота.