Обязан ли программист отдавать 100% рабочий продукт без косяков?
Для этого существует в договоре пункт о Поддержке продукта (в течении какого-то промежутка времени) после сдачи его заказчику.
Не обязательно, можно выполнять свою работу через жопу, и чем больше плохих программистов которые делают некачественные проекты \ продукты \ код - меньше конкуренции и хороших программистов.