There is good evidence both for evolutionary steps in the origin of the
genetic code and for the evolution of changes in the genetic code.

Currently all organisms use a set of tRNA molecules (among other
things) to translate RNA transcripts into proteins. Although a fairly
full set of tRNAs are currently necessary to all life, the sequences of
many show close similarity and appear to be modified duplications of
each other. This points to evolution from a simpler system with fewer
tRNAs and fewer amino acids.

Changes in the genetic code are typically found in situations where
there is strong evolutionary pressure on another aspect of the genome
that affects the genetic code as well. For example, a high ratio of G
and C to T and A is favored in high temperature environments and would
favor modification of the genetic code.

Evidence of specific processes by which changes in the genetic code can
evolve are found in a couple of examples. (Theoretical modeling has
indicated a few mechanisms that can work, but I don't know if there is
direct evidence that all of them have occurred). Molecular data
strongly support a close relationship of echinoderms and
hemichordates. Hemichordates have lost functionality for one rare
codon in their mitochondria. In echinoderms, this "orphan" codon has
been "adopted" by a different tRNA via a couple of mutations.

Various snails have undergone replacement of one mitochondrial tRNA by
another, in this case two tRNAs that code for the same amino acid.
Gene duplications have sometimes resulted in the deletion of one
ancestral tRNA type, with the function of that tRNA being taken over by
the extra copy of the other tRNA.

An illustration I used before about the problem of identifying patterns
in the genetic code as proof of intelligent design: Using the standard
one-letter symbols for amino acids, the COI gene from the
female/somatic mitotype of freshwater mussels contains the
phrase "GAINFIST". Are they angry at us because of the numerous
species wiped out by human activity?