Смотря какого уровня специалист по информационной безопасности. Если рядовой сотрудник, то должен. Если руководитель, то даже если он знает как программировать, у него не будет на это времени, т.к. он настолько погрязнет в бумагах, регламентах, требованиях и т.д., что не будет времени даже сервер развернуть, не то что свой софт создать.
Конечно, причем на высоком уровне. Так как решаемые специалистом задачи не являются типовыми и для их решения ему придётся не только самому разбираться в чужом коде(в некоторых случаях это сложнее чем писать свой), но и по незначительным признакам определять угрозу, что требует безупречных знаний в области программирования и не только.
Конечно, иначе же рано или поздно, пользуясь только чужими программами, наткнетесь на задачу, решение которой ещё нигде не опубликовано и придётся все таки сесть и закодить её.
А так как ИБ напрямую связано с софтом, то это произойдёт крайне быстро и легче освоить все заранее, чем дотянуть до последнего момента.