It didn’t seem all that outlandish at the time because: (1) Kaepernick remained unproven; and (2) Johnson had played for coach Jim Harbaugh at the University of San Diego. Kaepernick won the competition; Johnson ended up at No. 4 — and out of a job.
With Kaepernick now the unquestioned starter, Johnson is back. The team signed him today, two days after he was released by the Bengals.
To create a roster spot for Johnson, the 49ers cut defensive tackle Christian Tupou, who was signed in January.