J’ai postulé via cutshort (https://cutshort.io/). J’ai reçu un appel des RH dans 2-3 jours, les RH ont pris les détails comme le CTC attendu et l’expérience pertinente sur les piles technologiques. Et ensuite expliqué comment l’interview va se dérouler et combien de tours il y aura.
Il y a eu au total trois séries d’entretiens :
- Tour de programmation en binôme (Entrevue en avril 2021)
- Discussions techniques (interviewé en avril 2021)
- Leadership et discussion sociale (Entrevue en avril mai 2021)
Interviewé le – Java, SpringBoot, JPA, Kafka, microservices, REST, GraphQL, [ Docker, Kubernetes, Jenkins (basics)], Conception du système.
1. Tour de programmation en paire :
- Attentes – Démontrez votre capacité technique à écrire du code, à communiquer et à collaborer avec le ThoughtWorker avec lequel vous vous associez.
- Durée – 90-100 minutes.
- Nombre d’intervieweurs – 1
On m’a donné une URL Github 2 jours avant l’entretien pour mon langage de programmation principal et on m’a demandé de cloner le référentiel pour me familiariser avec la base de code et essayer de comprendre ce qu’il fait actuellement et comment il fonctionne.
Remarque : IDE pourrait être de votre choix. J’ai utilisé mon idée IntelliJ préférée.
Cet entretien a duré environ 90 à 100 minutes. Au début de la session, l’intervieweur a partagé un tableau Trello et on m’a demandé de sélectionner une user story du tableau à mettre en œuvre. Après avoir parcouru l’histoire de l’utilisateur, j’ai eu une discussion sur l’approche avec l’intervieweur.
On m’a posé des tonnes de questions avant d’implémenter le code ou d’écrire quoi que ce soit (je répète écrire n’importe quoi). Vous devez suivre l’approche TDD. J’ai demandé à l’enquêteur de me laisser écrire les méthodes d’abord, puis j’écrirai les cas de test (puisque nous pensions dans une perspective future et que le résultat (types de retour, etc.) était inconnu au début).
Les questions posées étaient logiques et m’ont fait penser à la perspective d’avenir en dehors de la description mentionnée sur le tableau trello.
Exemple :
- Et si à l’avenir les exigences changeaient ?
- Vais-je venir changer les points d’arrivée encore et encore ?
- Pourquoi ne puis-je pas utiliser map comme type de retour ?
- Quel serait le type de retour Object
- Quel est le meilleur?
- Est-il nécessaire d’utiliser ResponseEntity comme type de retour uniquement dans la couche de contrôleur ?
- Et si nous choisissions de renvoyer ResponseEntity dans la couche de service et à quels défis nous serons confrontés ?
Les questions portaient également sur l’écriture des noms de méthode et la définition d’un nom de classe et les meilleures pratiques pour compléter le code.
Noter: Le seul objectif du cycle de programmation en binôme était de tester vos connaissances, l’intervieweur pose des questions et teste si vous atteignez une solution particulière ou non.
J’ai terminé ce tour, j’ai reçu un appel le lendemain pour le 2e tour d’entretien
2. Discussions techniques :
- Attente – Étendue et profondeur de vos connaissances de la pile technologique avec laquelle vous avez de l’expérience.
- Durée – 90-100minutes
- Nombre d’intervieweurs – 2
La conversation a tourné autour de la conception et de l’architecture logicielles et de l’accent mis sur les concepts de niveau inférieur concernant le développement ou les processus de développement.
Cela a commencé par une petite présentation de la mienne, de mes piles technologiques et de quelques informations démographiques.
Plus tard, il est passé à l’architecture de mon projet. On m’a demandé de dessiner l’architecture (sur un tableau blanc de réunion de zoom) et d’expliquer comment tout fonctionne.
Après avoir expliqué l’architecture aux deux intervieweurs, le plaisir a commencé 😉
Ils ont posé beaucoup de questions sur l’architecture du projet que j’ai expliqué. Certaines d’entre elles étaient des questions basées sur des scénarios et devaient apporter la solution à un problème particulier. J’ai dû écrire un petit code MVC pour expliquer la solution. Même les questions portaient sur des requêtes SQL et comment les implémenterez-vous, en utilisant une requête JPA ou nativeQuery ? Comment créeriez-vous une requête à l’aide de jointures. (Je pense que l’intervieweur s’attendait à une solution d’API Criteria Builder, j’ai donné la solution d’annotation de requête).
Plus tard, il est passé à la conception de systèmes. On m’a demandé de concevoir le schéma de la base de données et de définir la relation entre les tables qui conviendrait à la conception de réservation de restaurant/hôtel. Après avoir mentionné les noms des colonnes et défini la relation PK et FK entre les tables.
On m’a à nouveau posé une question basée sur un scénario, c’est-à-dire comment pourrais-je gérer ce scénario ? (Ai-je besoin d’introduire une nouvelle colonne ?).
Lentement, ils ont augmenté la complexité de la conception en demandant plus de scénarios à gérer.
Enfin, enfin, des questions ont été posées sur la façon dont j’utilise git, la stratégie de rebase, le tirage, la fusion d’un code et pourquoi nous créons des branches de correctifs, etc.
Noter: Dans la conception de systèmes, les solutions peuvent être multiples. Il y avait une situation où j’étais coincé mais l’intervieweur m’a aidé avec un petit indice et nous avons discuté de la solution.
Terminé ce tour 🙂
3. Leadership et discussion sociale :
- Attentes : Ils veulent mieux vous connaître, votre façon de voir le monde et vos qualités de leader.
- Durée : 60 minutes
- Nombre d’intervieweurs – 2
Dans ce tour, ils veulent que vous ayez une idée de leur pensée et s’attendent à partager vos points de vue. C’était une conversation significative.
Nous avons commencé par nous présenter, puis nous sommes passés aux questions de leadership. Ici, on m’a demandé de gérer la situation dans le scénario donné.
Nous sommes passés à une discussion sociale sur l’égalité, l’équité, le système de réservation des castes, comment est-il venu et quel impact a-t-il en Inde ? Partagez vos points de vue. La discussion a plongé profondément dans les temps anciens de la discrimination des castes.
Conseil: Être honnête.
J’ai terminé ce tour, j’ai reçu la lettre d’offre 😀
C’était vraiment une belle expérience d’interviewer avec Thoughtworks.
Attention lecteur ! N’arrêtez pas d’apprendre maintenant. Obtenez tous les concepts importants de DSA avec le Cours auto-rythmé DSA à un prix adapté aux étudiants et devenez prêt pour l’industrie. Pour compléter votre préparation de l’apprentissage d’une langue à DS Algo et bien d’autres, veuillez vous référer Cours complet de préparation aux entretiens. Si vous êtes prêt, testez vos compétences en utilisant TCS, Wipro, Amazone. Google , E-Litmus et Microsoft Séries d’essais.