Представьте, что проект разрастется, и понадобится, чтобы юзер был одновременно и заказчиком и исполнителем (например, вебмастер-разработчик заказывает дизайн у подрядчика-дизайнера). Потребуется велосипед, чтобы синхронизировать две модели.
Берите одну модель юзера, роли от cancan,
здесь туториал, атрибутов с избытком, чтобы на все роли хватило и кастом-валидаторы — какого типа юзер какие атрибуты может иметь. Форма от devise автоматически одна получится.
Хотя форму одну можно рисовать и через partial, засовывайте в :locales требуемый объект, если есть поля, которые в форме используются, все получится.