The typical amount of time a person is contagious is about 10-14 days beginning about 3-5 days after exposure and just like other coronaviruses like colds and flus, the victim is also most contagious about 2 days before symptoms start. This is why the healthcare community stresses self-quarantine for 14 days after testing positive. By the time symptoms evolve and the person is tested, they have probably already been contagious up to a week and is likely to remain contagious for about another week or so. Quarantining for 14 days adds a week of cushion to be sure they are not likely contagious anymore.That last paragraph is the reason why. The virus in unvaccinated people can be in them for weeks and months, even if they are no longer symptomatic. Perhaps that could be the case in vaccinated people, but it seems reasonable that the body would fight off the virus easier and so would help prevent mutations. Something to look into.
Some symptoms may linger for much longer such as fatigue, body aches, breathing issues, maintaining blood oxygen levels, loss of taste and smell. I became infected over 13 weeks ago yet today I still have not completely regained my sense of smell. My brother-in-law was infected from me about 12 weeks ago and he still has trouble with fatigue and shortness of breath if he exerts himself too much. A friend of mine that was hospitalized about a year ago still keeps oxygen handy because she can have some issues with breathing even today. It's not known but it is suspected that some people may never fully recover so I may never regain my complete sense of smell.