The Flexible Job Shop problem is a generalization of the classical job shop scheduling problem in which for every operation there is a group of machines that can process it. The problem is to assign operations to machines and to order the operations on the machines so that the operations can be processed in the smallest amount of time. This models a wide variety of problems encountered in real manufacturing systems. We present a linear time approximation scheme for the non-preemptive version of the problem when the number m of machines and the maximum number