Citation: 8C_462/2019 E. A

A.a. A.________ a été engagée en qualité d'ingénieure informatique à la direction des systèmes d'information et de communication de la Ville de Genève dès le 1 er janvier 2010. Elle avait tout d'abord un statut d'auxiliaire. Elle a ensuite été nommée employée avec effet au 1 er janvier 2011. Le 10 septembre 2014, le Conseil administratif de la Ville a ouvert à son encontre une enquête administrative. Celle-ci a été confiée à des juristes du service juridique de la Ville, qui ont rendu leur rapport le 11 mai 2015. Il ressortait notamment de celui-ci que l'employée semblait disposer des compétences techniques requises pour son poste. Il lui était toutefois reproché d'avoir adopté à plusieurs reprises un comportement inapproprié envers certains collègues et son supérieur hiérarchique, d'avoir manqué de vigilance et de contrôle dans l'exploitation des plateformes informatiques (avec une responsabilité partagée de son supérieur hiérarchique), d'avoir omis de signaler un conflit d'intérêts lors de l'élaboration du cahier des charges d'un appel d'offres et d'avoir introduit manuellement (avec toutefois la participation de son supérieur hiérarchique) des heures en sa faveur dans le système de décompte horaire, apparemment pour compenser du travail effectué pendant un congé maternité. Le 13 mai 2015, le Conseil administratif a transmis le rapport d'enquête à A.________ en l'informant qu'il envisageait de la licencier pour motif objectivement fondé. L'intéressée a pris position par écriture du 29 mai 2015. Les 23 juin et 22 juillet 2015, assistée d'une secrétaire syndicale, elle a eu des entretiens avec le directeur général de la Ville. Par décision du 29 juillet 2015, le Conseil administratif a résilié les rapports de service de A.________ avec effet au 30 novembre 2015. L'employée était libérée de son obligation de travailler jusqu'au terme du délai de congé. A.b. Par écriture du 14 septembre 2015, A.________ a recouru devant la Chambre administrative de la Cour de justice de la République et canton de Genève. Elle a contesté l'existence d'un motif de licenciement et s'est plainte d'avoir été licenciée sans avoir été entendue par une délégation de l'exécutif communal. Statuant le 24 novembre 2015, la Chambre administrative a constaté la nullité de la décision du 29 juillet 2015, au motif que l'employée n'avait pas été entendue par une délégation du Conseil administratif composée d'au moins un membre de cette autorité.