Если два программиста зрелые и самостоятельные, то на мой взгляд оптимальнее всего, сначала согласовать структуруру проекта, нарисовать диаграммы классов, и другие диаграммы по необходимости и каждый пусть кодит свой кусок, время от времени просматривая весь проект.
Программирование в паре нужно когда уровень одного сильно превосходит уровень второго, тогда программирование в паре позволит быстро подтянуть новичка на новый уровень, и начать давать небольшие самостоятельные задачки. По этой теме есть плагин
www.opennet.ru/opennews/art.shtml?num=36979 (использовать не пробовал, но для такой методике вполне полезная штука)