Mobile crowdsourcing (MC) is an effective way of engaging large groups of smart devices to perform tasks remotely while exploiting their built-in features. It has drawn great attention in the areas of smart cities and urban computing communities to provide decentralized, fast, and flexible ubiquitous technological services. The vast majority of previous studies focused on non-cooperative MC schemes in Internet of Things (IoT) systems. Advanced collaboration strategies are expected to leverage the capability of MC services and enable the execution of more complicated crowdsourcing tasks. In this context, Collaborative Mobile Crowdsourcing (CMC) enables task requesters to hire groups of IoT devices' users that must communicate with each other and coordinate their operational activities in order to accomplish complex tasks. In this paper, we present and discuss the novel CMC paradigm in IoT. Then, we provide a detailed taxonomy to classify the different components forming CMC systems. Afterwards, we investigate the challenges in designing CMC tasks and discuss different team formation strategies involving the crowdsourcing platform and selected team leaders. We also analyze and compare the performances of certain proposed CMC recruitment algorithms. Finally, we shed light on open research directions to leverage CMC service design.