The problem of scheduling n assembly jobs in a job-shop environment is addressed. Each job is characterized by multiple parts that must themselves be scheduled for processing through the shop. The individual parts combine at assembly stations to form sub-assemblies or final assemblies. Sub-assemblies combine with other sub-assemblies to form final assemblies. The objective pursued in the developed model is to maximize the machine utilization subject to satisfying job due date requirements. Essentially, one must consider machine availability, the amount of work on each machine for each operation, the precedence constraints, and the dispatching criteria to perform scheduling in this kind of environment. A heuristic algorithm is developed to solve the problem. The application of the algorithm is demonstrated with an example problem.