Не зависит. Все делают ошибки. Единственное, что зависит от опыта - количество ошибок, так почему бы не снижать это количество формальными методами?
где-то читал исследования об ошибках, так вот около 60% ошибок, это ошибки, которые даже не учтены в коде, такого кода просто нет, и только 40% это ошибки в коде, так что мы можем контролировать лишь меньшую часть , но это не уменьшает значимость ошибки, но и не стоит ради этого плодить сущности без надобности