Как правильно писать ТЗ?
ПМ хотя-бы немного должен быть разработчиком,  с хотя-бы поверхностными знаниями,  иначе это будет ад как для него так и для программистов. 
А тз обычно делится на две понятные части: бизнес логика и технические требования.
Нужно погрузиться в задачи и проблемы клиента и предложить оптимальное техническое решение. Для этого нужно обладать технической экспертизой или привлекать такого человека.