Des objets arrivent dans le programme. Dans chaque objet, il peut y avoir un numéro de téléphone et/ou un login (ou l'une de ces valeurs, ou les deux), ainsi qu'une charge utile sous forme de données binaires. Les objets entrants doivent être stockés en mémoire vive en respectant les restrictions suivantes : Si l'objet entrant a un login et/ou un téléphone identiques à ceux d'un objet déjà stocké, l'objet stocké doit être supprimé, et l'objet entrant ne doit pas être sauvegardé. Si un objet reste en mémoire vive plus de 60 secondes, il doit être supprimé. On considère que les objets arrivent fréquemment. De plus, les objets correspondant par login/téléphone sont beaucoup moins nombreux que le nombre total d'objets entrants. void process(Object o) { }
C/C++
[nom] parlez-moi de vous et des produits sur lesquels vous avez travaillé, ainsi que des tâches que vous avez accomplies.
Lors de la revue, on voit un diff qui ressemble à un copié-collé grossier ou à un hack étrange : le code effectue l'action nécessaire, mais il n'est pas évident comment il fonctionne ou s'il fonctionne correctement. Quelles sont tes prochaines actions ?
Quelles propriétés une tâche doit-elle avoir pour, au contraire, provoquer la réaction de 'Oh, je ne veux pas faire ça' ?
Et qu'est-ce qui, au contraire, repousse dans ce genre d'événements?
Quelles qualités un collègue doit-il avoir pour que ce soit confortable de travailler avec lui?
Comment savoir si un changement (par exemple, passer de Boost à la bibliothèque standard) fonctionne réellement ?
Comment percevez-vous les activités en dehors du travail (forums, événements d'entreprise, sport) et qu'est-ce qui vous attire le plus dans celles-ci?
Avez-vous déjà eu une expérience de refactoring à grande échelle d'une grande base legacy ? Si non, comment agiriez-vous si vous deviez le faire ?
Avez-vous déjà participé à des débats/discussions techniques au sein de l'équipe ? Comment se sont-ils déroulés et comment ont-ils été résolus ?
Pourquoi avez-vous quitté votre emploi précédent?
Qu'est-ce qui vous a motivé à chercher un nouvel endroit?
Il y a une tâche de revue de code : un collègue a soumis une solution qui fonctionne et est couverte par des tests unitaires, mais la mise en œuvre n'est pas du tout comme tu le ferais toi-même. Que feras-tu?
Situation : deux managers arrivent et donnent deux tâches urgentes, mais il n'y a pas de temps. Que feriez-vous ?
Quel est le plan pour la refactorisation et que doit-il y avoir pour la faire en toute confiance?
Comment éviter de se retrouver dans une situation où, après trois mois, tout est "désorganisé" et rien ne fonctionne, si le leader a décidé de réécrire radicalement le code (par exemple, supprimer Boost) ?
Comment pourrait-on implémenter l'optimisation RVO/NRVO dans un compilateur?
auto lambda = []<typename>(){};
Y avait-il suffisamment d'informations pour l'analyse lors de la conception, ou la décision a-t-elle été prise plutôt à l'aveugle, mais avec succès?
Que sera affiché à l'écran ? (Question 1 : constructeurs, RVO/NRVO)