Looking other questions on the tag this seems to deal with the “avoiding bouncing loops”, right?
Rick uses Random.Range(), to select a random value between zero and the cached randomFactor. If you just use randomFactor, the velocity tweak will always be the same, as the same value is always used, the one you assign in the inspector or on the variable initialization.
You can perfectly do that, as the solution fixes the problem. It becomes more a matter of preference. Using Random.Range() makes the behaviour less predictable, which makes the gameplay become more interesting. It’s always important that the player has a feeling of outcome uncertainty, they know how the behaviour should go, but now how specifically. That keeps them engaged. However, too much randomness can take away from them the feeling of being in control, making them think the game is unfair. So it’s a matter of testing to get the correct amount of randomness.