Two fundamentally different approaches are routinely used for protein engineering: user-defined mutagenesis and random mutagenesis, each with its own strengths and weaknesses. Here, we invent a unique mutagenesis protocol, which combines the advantages of user-defined mutagenesis and random mutagenesis. The new method, termed the reverse Kunkel method, allows the user to create random mutations at multiple specified regions in a one-pot reaction. We demonstrated the reverse Kunkel method by mimicking the somatic hypermutation in antibodies that introduces random mutations concentrated in complementarity-determining regions. Coupling with the phage display and yeast display selections, we successfully generated dramatically improved antibodies against a model protein and a neurotransmitter peptide in terms of affinity and immunostaining performance. The reverse Kunkel method is especially suitable for engineering proteins whose activities are determined by multiple variable regions, such as antibodies and adeno-associated virus capsids, or whose functional domains are composed of several discontinuous sequences, such as Cas9 and Cas12a.