Считаю что лучше уметь хорошо программировать, а не всего понемножку.
Программист должен владеть линуксной консолью на уровне пользователя.
Иметь понимание файловой системы линукса.
Уметь настраивать конфиги программ и модулей с которыми работает.
Уметь устанавливать программы и модули с которыми работает.
Уметь ддалеть различные тесты и прочие вещи, напрямую связаные с разработкой.
Однако не должен уметь, а обязан оставлять профессионалам, к примеру:
Настройку безопасности сервера.
Настройку вспомогательных программ, например монита.
Решать вопросы ддоса и прочего, за исключением тех что касаютса напрямую его кода.
Самостоятельно выбирать серверное железо (скажите еще что среднистатистический программист понимает в технических деталях, например отличия серверного проца от обычного)
....и можно так далее перечислять кучу вещей, что работодатели с любят отдавать, а программисты с радостью братся не имея должного опыта в области.