Att vara senior utvecklare är att ständigt vara paranoid över den oavsiktliga komplexitet som introduceras av nya funktionsförfrågningar, men att aldrig kunna formulera perfekt för beställaren hur komplexiteten kommer att manifestera sig