Some background on my perspective, for the last 20 years I've been running, what I'll call, a Contract Auction Dynasty league.
We have a rookie draft, where player salaries are slotted. And a yearly auction to fill out rosters for available players. When an owner wins a bid in the auction, he has to immediately determine how long he want to sign the player for, from 1 to 4 years. Each year comes with a signing bonus, and that signing bonus is larger for the longer you wish to keep the player.
The salary cap is in place year round. We have tags so you can keep players when their