This paper explores how the dependence between competing failure processes affects the condition-based preventive maintenance policy. The exposed failures caused by degradation and random shock are explicitly modeled respectively through two stochastic processes, i.e. Gamma process and compound Poisson process. Condition-based inspections are scheduled by introducing a convex function describing the relationship between degradation level and inspection interval. The preventive maintenance policy is planned to improve the operation efficiency which is adversely affected by the existing failures. The effect of failure dependence on the condition-based maintenance is analyzed through the preventive maintenance threshold of which initial value is fixed and is weaken by the following arrived shocks then. Imperfect maintenance effect is also considered to describe the irreversible aging process. Monte Carlo simulation technique and genetic algorithm are both employed to obtain the optimal parameters which determine the frequencies of inspection and maintenance. An illustrate example of a gearbox in the wind power industry is studied to demonstrate how the proposed maintenance policy balances the conflicting objectives in engineering practice.