Community detection decomposes large-scale, complex networks ‘optimally’ into sets of smaller sub-networks. It finds sub-networks that have the least inter-connections and the most intra-connections. This article presents an efficient community detection algorithm that detects community structures in a weighted network by solving a multi-objective optimization problem. The whale optimization algorithm is extended to enabe it to handle multi-objective optimization problems with discrete variables and to solve the problems on parallel processors. To this end, the population’s positions are discretized using a transfer function that maps real variables to discrete variables, the initialization steps for the algorithm are modified to prevent generating unrealistic connections between variables, and the updating step of the algorithm is redefined to produce integer numbers. To identify the community configurations that are Pareto optimal, the non-dominated sorting concept is adopted. The proposed algorithm is tested on the Tennessee Eastman process to show its application and performance.