Faits : A. A.a. A._, né en 1982, s'est inscrit au chômage le 13 juin 2017, à la recherche d'un emploi à 100 %. Par décisions des 28 et 29 août 2017, l'Office cantonal de l'emploi (ci-après: l'OCE) a suspendu le droit de l'assuré à l'indemnité de chômage pour des durées de 5 jours, respectivement 9 jours, au motif qu'il ne s'était pas présenté sans aucune excuse valable à des entretiens de conseil fixés les 15 et 28 août 2017. Par décision du 4 mai 2018 confirmée sur opposition le 3 juillet 2018, l'OCE a suspendu le droit de l'assuré à l'indemnité de chômage pour une durée de 40 jours, au motif qu'il n'avait pas donné suite à une assignation lui enjoignant de présenter sa candidature pour un poste de serveur-chef de rang. A.b. A partir du 1 er juin 2018, A._ a occupé un emploi les jeudis, vendredis et samedis. Il recherchait encore un poste à 50 % en complément. Par décision du 29 novembre 2018, confirmée sur opposition le 15 février 2019, l'OCE a suspendu le droit de l'assuré à l'indemnité de chômage pour une durée de 19 jours, en raison de son absence sans excuse valable à un entretien de conseil prévu le 20 septembre 2018. Le recours formé par l'assuré contre cette dernière décision a été rejeté par jugement de la Chambre des assurances sociales de la Cour de justice de la République et canton de Genève du 4 décembre 2019, entré en force. A.c. Par décision du 30 novembre 2018, confirmée sur opposition le 15 février 2019, l'OCE a déclaré l'assuré inapte au placement dès le 1 er septembre 2018, sur la base des quatre sanctions dont il avait écopé et de nouveaux manquements, à savoir l'absence de recherches d'emploi en septembre et octobre 2018 et le fait de ne pas avoir donné suite à une offre d'emploi durant la même période. B. Statuant le 4 décembre 2019 sur recours contre cette dernière décision sur opposition, la Chambre des assurances sociales - après avoir auditionné les parties le 20 novembre 2019 - l'a annulée et a dit que l'assuré était apte au placement dès le 1 er septembre 2018. C. L'OCE interjette un recours en matière de droit public contre ce jugement dont il demande l'annulation. L'intimé conclut au rejet du recours et sollicite d'être mis au bénéfice de l'assistance judiciaire. La juridiction cantonale et le Secrétariat d'Etat à l'économie (SECO) ont renoncé à se déterminer.