A system and method for identifying genes that employs a pattern database, an input device for inputting a DNA sequence, and a processor for processing the DNA sequence and patterns to identify a putative gene. The processor may determine open reading frames (ORFs) in the DNA sequence, generate an amino acid translation for each ORF, and identify a match of a pattern in the amino acid translation.