Is it normal to get the destination repository the attribute I have to query depends on the agent mode ?
If agent is on mode ManagedbyAgent : (Get-VBRComputerBackupJob).destinationoptions.backuprepository.name
If agent is on mode ManagedByServer : (Get-VBRComputerBackupJob).backuprepository.name
I just would like to know if this is a normal behavior or not
Yes, it is normal. As you might have noticed, for ManagedByAgent jobs, unlike for ManagedByServer jobs, you can choose destination type (backup repo, local storage etc.). So, it would require a separate step (UI) and a separate property (Powershell) to hold all the destination data. To avoid creating reduntant classes we decided to reflect BackupRepository property as null in ManagedByAgent job objects and DestinationOptions as null in ManagedByServer job objects.