This document describes a parallel algorithm called GeneIndex for efficiently locating words within genomic sequences. It presents both a serial and parallel implementation. The serial algorithm scans sequences to encode and sort all possible words. The parallel implementation divides the input data and computation across processes. It aims to balance the workload by partitioning words rather than sequences, since word frequencies can vary greatly.