Как и любое другое соглашение, NDA означает добровольное согласие сторон. Подписывать соглашение с фигой в кармане как минимум непрофессионально. А писать об этом тут ещё и может когда-нибудь выйти боком.
Добровольное соглашение должно иметь юридическую силу, а NDA часто не более чем блеф без каких-либо условий для его вступления в силу (ну и способ почесать ЧСВ тем какие мы важные секретные)
Ну вот сами подумайте, стали бы вы брать на работу разраба настолько непрофессионального, что он заливает на публичный гитхаб весь проект, над которым работал?
Можно, конечно, "анонимизировать" код, выпилив контрибьюции других участников, переделать чтобы он использовал данные, которые и так валяются в открытом доступе. Но это нужны время, силы и мотивация.
Обычно за код платят, НДА специально не обговаривают, но он подразумевается. "Задание на месяц под видом тестового" - это уже совсем другой жанр, такое как раз не жаль выкладывать, если напоролся. С паршивой овцы хоть шерсти клок ).