IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entretien Discussion :

Tests techniques totalement foirés


Sujet :

Entretien

  1. #1
    Membre expert

    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 3 583
    Points
    3 583
    Par défaut Tests techniques totalement foirés
    Bonjour à tous,

    Suite à un entretien de recrutement, le recruteur m'a soumis des tests techniques de types "Expert" sur les domaines web, J2EE et SQL. A 45 ans, j'étais serein, mais force est de constater, que malgré mes nombreuses années en tant que développeur, beaucoup de questions me plaçaient dans une situation que je n'avais jamais eu à gérer. Ce fût une catastrophe...

    Sorti de ces tests, j'étais démoli. J'étais absolument persuadé que je pourrais, aujourd'hui, développer n'importe quoi, avec les langages que l'on me demanderait. J'ai développé du logiciel pour beaucoup d'entreprises grands comptes, et encore aujourd'hui, sur mon activité Freelance, j'arrive tout à fait à faire le job. J'ai actuellement des projets avec des enjeux critiques.

    Alors, pourquoi cette incertitude à la sortie de ses tests ? Qu'est-ce qui n'a pas marché ?

    Peut-être tout simplement parce que depuis des années, j'arrive à sauver les apparences et à donner le change avec mes compétences techniques, et que ma passion pour les nouvelles technologies me permet de maintenir un "semblant" de crédibilité. Mais ne suis-je pas arrivé à mes limites aujourd'hui ?

    Peut-être ai-je été un bon développeur, il y a 5 ou 6 ans, mais qu'aujourd'hui je dois revoir mon cap.

    La seule chose que je sais, c'est que pour la première fois depuis 20 ans, je ne suis plus sûr de rien.
    "La révolution informatique fait gagner un temps fou aux hommes, mais ils le passent avec leur ordinateur !"

  2. #2
    Invité
    Invité(e)
    Par défaut
    ou peut-être que le test ne vérifie qu'une certaine compétence technique qui exclue tout le reste du vrai travail de dev

  3. #3
    Membre expert

    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 3 583
    Points
    3 583
    Par défaut
    Citation Envoyé par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    ou peut-être que le test ne vérifie qu'une certaine compétence technique qui exclue tout le reste du vrai travail de dev
    Merci pour ton commentaire.

    Non, les tests étaient vraiment du pur dev. Seulement, le problème vient de mon parcours pro.

    Bien que j'ai été développeur pendant 19 ans, sur différentes technos, c'était toujours dans des boîtes dont le coeur de métier n'était pas l'informatique. Du coup, j'étais quasiment le seul informaticien de formation, sur qui reposaient les projets. Vous savez, quand vous discuter informatique avec un.e collègue, et que son visage exprime cette phrase : "Mais de quoi tu parles ?"

    Et comme je n'avais jamais aucun.e collègue ayant une formation de développeur.se pour me corriger, j'ai souvent inventer mes propres méthodes et appris par mes propres moyens.

    Elles ne sont pas forcément mauvaises, mais elles ne répondent pas à ce qu'attend une ESN ou SSII aujourd'hui. Alors, j'ai pas eu tout faux, puisque cela m'a permis de valider un BTS en VAE et d'obtenir un DUT en DIF.

    Même si j'arrive à obtenir 75% de réussite aux tests, c'est pas suffisant. Les recruteurs vous appellent en vous demandant : "Mais, je comprend pas..."

    En tant que développeur, à 45 ans, je ne suis pas sûr de pouvoir retrouver un poste. Par contre, sur mon dernier poste, j'ai acquis une réelle formation de gestion de projet. J'ai pas de diplôme ou de certificat, mais j'ai de l'expérience sur plusieurs années et sur des projets réussis dans des entreprises Grands comptes.

    Peut-être que c'est vers ça qu'il faut que j'aille, me vendre comme Chef de projet ou Consultant ou Commercial dans la formation, et laisser le développement à d'autres plus au fait des tendances.
    "La révolution informatique fait gagner un temps fou aux hommes, mais ils le passent avec leur ordinateur !"

  4. #4
    Membre expert
    Profil pro
    Dév
    Inscrit en
    Juin 2007
    Messages
    1 154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Dév

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 154
    Points : 3 667
    Points
    3 667
    Par défaut
    Tu peux nous écrire les questions du test stp?

    Sinon je croyais que tu voulais être chef de projet .

    Si tu veux être dev, les tests techniques sont archi important donc si tu les foires c'est quasiment mort. Après, normalement les questions techniques sont souvent les mêmes donc tu peux réviser à l'avance.

    https://www.softwaretestinghelp.com/...tions-answers/

  5. #5
    Membre expert

    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 3 583
    Points
    3 583
    Par défaut
    Citation Envoyé par DuyBinh Voir le message
    Tu peux nous écrire les questions du test stp?

    Sinon je croyais que tu voulais être chef de projet .

    Si tu veux être dev, les tests techniques sont archi important donc si tu les foires c'est quasiment mort. Après, normalement les questions techniques sont souvent les mêmes donc tu peux réviser à l'avance.

    https://www.softwaretestinghelp.com/...tions-answers/
    Oui, mais là c'est une ESN qui m'a directement contacter via le site de l'APEC. Mais c'est un poste de consultant en régie chez le client, qui fera du développement.

    Mais oui, je voulais un poste de manager.
    "La révolution informatique fait gagner un temps fou aux hommes, mais ils le passent avec leur ordinateur !"

  6. #6
    Membre expert

    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 3 583
    Points
    3 583
    Par défaut
    Citation Envoyé par DuyBinh Voir le message
    Tu peux nous écrire les questions du test stp?

    Sinon je croyais que tu voulais être chef de projet .

    Si tu veux être dev, les tests techniques sont archi important donc si tu les foires c'est quasiment mort. Après, normalement les questions techniques sont souvent les mêmes donc tu peux réviser à l'avance.

    https://www.softwaretestinghelp.com/...tions-answers/
    Merci, je suis sur que ça peut m'aider.
    "La révolution informatique fait gagner un temps fou aux hommes, mais ils le passent avec leur ordinateur !"

  7. #7
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2016
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2016
    Messages : 277
    Points : 946
    Points
    946
    Par défaut
    Citation Envoyé par zecreator
    Sorti de ces tests, j'étais démoli. J'étais absolument persuadé que je pourrais, aujourd'hui, développer n'importe quoi, avec les langages que l'on me demanderait.
    (...)
    Alors, pourquoi cette incertitude à la sortie de ses tests ? Qu'est-ce qui n'a pas marché ?
    Je ne suis pas développeur depuis longtemps (quelques années) alors je ne sais pas ce que vaut mon avis mais ce que je tire de ma maigre expérience est qu'il n'y a pas vraiment de rapport entre réussir ce genre de test et être un consultant capable dans le domaine du développement. Ce n'est pas parce que l'on ne connaît pas par cœur le nom de la méthode machin de la bibliothèque machin que l'on est pas capable de l'utiliser après avoir été chercher l'info en trois secondes sur le net. Personnellement j'ai travaillé avec un bonne dizaine de langages (dans le cadre pro ou celui de mes études), et je ne connais pratiquement rien par cœur (limite pour certains je ne suis plus sûr de la manière d'écrire une boucle for), mais quand je rencontre un de ces langages j'arrive à m'adapter, et au final c'est ce que réclame mon métier (bien plus que du par cœur). Je me souviens d'une fois où j'ai travaillé sur un système d'information géographique alors que je n'avais jamais touché à ça: j'ai peut-être passé plus de temps à chercher sur le net comment faire les choses qu'à les coder (et je voyais sur les forums que je consultais que je n'étais pas le seul du tout). Au final, de la culture générale sur les bases de l'orienté objet et de la détermination auront suffi, mais si on me faisait passer un entretien technique sur ce SIG aujourd'hui, j’avoisinerais probablement les 0% étant donné que je suis passé à autre chose.

  8. #8
    Expert éminent sénior
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    6 803
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 6 803
    Points : 32 058
    Points
    32 058
    Par défaut
    Le seul bon test technique, c'est celui de ma boite.

    En 20 questions, il définit un langage de programmation(inventé pour l'occasion), et il faut piger ledit langage imaginaire et répondre à 20 question en 35 minutes. Chaque nouvelle question reprend ce qu'on a vu avant, et rajoute une nouvelle notion au langage.

    Zéro par cœur, que de la logique pure, et de la capacité d'adaptation.

    Mais bon, la plupart des tests, c'est "combien de blocs par cylindre?". Le truc qu'on retrouve en 30 secondes sur google quand on a besoin.
    Les 4 règles d'airain du développement informatique sont, d'après Michael C. Kasten :
    1)on ne peut pas établir un chiffrage tant qu'on a pas finalisé la conception
    2)on ne peut pas finaliser la conception tant qu'on a pas complètement compris toutes les exigences
    3)le temps de comprendre toutes les exigences, le projet est terminé
    4)le temps de terminer le projet, les exigences ont changé
    Et le serment de non-allégiance :
    Je promets de n’exclure aucune idée sur la base de sa source mais de donner toute la considération nécessaire aux idées de toutes les écoles ou lignes de pensées afin de trouver celle qui est la mieux adaptée à une situation donnée.

  9. #9
    Membre expert
    Profil pro
    Dév
    Inscrit en
    Juin 2007
    Messages
    1 154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Dév

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 154
    Points : 3 667
    Points
    3 667
    Par défaut
    Je crois que je vais trafiquer mon CV pour dire que j'ai bossé dans le médical juste pour faire les tests de ta boite qui ont l'air marrant.

  10. #10
    Expert éminent sénior
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 413
    Points : 19 609
    Points
    19 609
    Par défaut
    Citation Envoyé par zecreator Voir le message
    Peut-être ai-je été un bon développeur, il y a 5 ou 6 ans, mais qu'aujourd'hui je dois revoir mon cap.
    Tu ne peux pas devenir mauvais. En revanche tu n'as probablement pas effectué la veille techno nécessaire pour rester sur de la technique.

    Aurais-tu des exemples de questions qui t'ont posé problèmes dans les 3 domaines ?
    Un problème avec Git ? Essayez la FAQ, sinon posez votre question sur le forum.



    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "Les richesses naturelles sont inépuisables, car, sans cela, nous ne les obtiendrions pas gratuitement. Ne pouvant être ni multipliées ni épuisées, elles ne sont pas l’objet des sciences économiques."
    Jean-Baptiste Say, Traité d'économie politique, 1803.

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

  11. #11
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 361
    Points : 20 381
    Points
    20 381
    Par défaut
    Citation Envoyé par zecreator Voir le message
    Alors, pourquoi cette incertitude à la sortie de ses tests ? Qu'est-ce qui n'a pas marché ?
    salut Zecreator tout le monde le sait ou presque dans les tests techniques il y a toujours des questions piéges sur lesquelles les candidats se plantent.
    Et des questions qui se concentrent sur des aspects pas forcément pertinents d'un langage de programmation.
    Donc finalement on sera meilleur à faire l'étude d'une fonction f(x)= machin quelque chose avec du calcul intégral à la fin

  12. #12
    Membre expert

    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 3 583
    Points
    3 583
    Par défaut
    Citation Envoyé par Marco46 Voir le message
    Tu ne peux pas devenir mauvais. En revanche tu n'as probablement pas effectué la veille techno nécessaire pour rester sur de la technique.

    Aurais-tu des exemples de questions qui t'ont posé problèmes dans les 3 domaines ?
    Ben, voici le type de questions qui m'ont posé un souci :

    Javascript :
    On te donne un arbre de Nodes. Un Node est un objet JS de ce type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Node : {
    value: <int>,
    left: <Node>, (peut être null)
    right: <Node>, (peut être null)
    }
    La rêgle : Chaque Node contient un entier. Un Node peut être associé à 0, 1 ou 2 NODE enfants. Le NODE de gauche a une valeur plus petite que son parent, le NODE de droite, une valeur plus grande.

    L'arbre de NODE peut contenir jusqu'à 1 000 000 de NODES.

    Ecrire la fonction JS find(rootNode, value) qui retourne l'index du premier NODE contenant la valeur <value>. <rootNode> est le NODE de départ de l'arbre. Si la valeur n'est pas trouvée, la fonction retourne null. La fonction doit préserver la charge du CPU.

    Les questions sont chronométrées. Pour celle-ci, j'avais 5 min.

    Voilà, y a eu aussi un truc en PHP dans le même genre...

    Bon, après, sur des questions sur de la structure même des langages, (genre "qu'elle est la méthode qui...", où "Regardez ce code. Que fait-il ?") je m'en suis très bien sorti. Sur de la requête SQL aussi, ça s'est bien passé...

    Ma faiblesse, c'est l'algo...
    "La révolution informatique fait gagner un temps fou aux hommes, mais ils le passent avec leur ordinateur !"

  13. #13
    Membre expert
    Profil pro
    Dév
    Inscrit en
    Juin 2007
    Messages
    1 154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Dév

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 154
    Points : 3 667
    Points
    3 667
    Par défaut
    Citation Envoyé par zecreator Voir le message
    Ben, voici le type de questions qui m'ont posé un souci :

    Javascript :
    On te donne un arbre de Nodes. Un Node est un objet JS de ce type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Node : {
    value: <int>,
    left: <Node>, (peut être null)
    right: <Node>, (peut être null)
    }
    La rêgle : Chaque Node contient un entier. Un Node peut être associé à 0, 1 ou 2 NODE enfants. Le NODE de gauche a une valeur plus petite que son parent, le NODE de droite, une valeur plus grande.

    L'arbre de NODE peut contenir jusqu'à 1 000 000 de NODES.

    Ecrire la fonction JS find(rootNode, value) qui retourne l'index du premier NODE contenant la valeur <value>. <rootNode> est le NODE de départ de l'arbre. Si la valeur n'est pas trouvée, la fonction retourne null. La fonction doit préserver la charge du CPU.

    Les questions sont chronométrées. Pour celle-ci, j'avais 5 min.

    Voilà, y a eu aussi un truc en PHP dans le même genre...

    Bon, après, sur des questions sur de la structure même des langages, (genre "qu'elle est la méthode qui...", où "Regardez ce code. Que fait-il ?") je m'en suis très bien sorti. Sur de la requête SQL aussi, ça s'est bien passé...

    Ma faiblesse, c'est l'algo...
    C'est un piège ton truc. C'est pas un arbre mais une liste chaînées (c'est une sorte d'arbre aussi mais c'est légèrement différent). Mais surtout il n'y a pas d'index de départ. Comment tu peux renvoyer un index si t'as pas de position de départ. J'aime pas le JS mais ça peut donner ça en 5 min.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    function find(rootNode, value, compteur)
    {
    	if(rootNode.left == null && rootNode.right == null && rootNode.Value != value )
    		return null;
    	
    	if(rootNode.Value == value)
    	{
    		return compteur;
    	}
    	else if(rootNode.Value < value)
    	{
    		return find(rootNode.left, value, compteur--);
    	}
    	else{
    		return find(rootNode.right, value, compteur++);
    	}
    }
    Edit: c'est un arbre binaire je suis à l'ouest car une liste chainée c'est que dans un sens. ça fait longtemps que j'ai pas pratiqué.

    Edit2: faut aussi gérer le 1 million de noeuds max que j'ai oublié (je corrige pas car j'ai dépassé les 5 minutes ).

  14. #14
    Membre habitué
    Profil pro
    Inscrit en
    Février 2012
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 50
    Points : 182
    Points
    182
    Par défaut
    Citation Envoyé par DuyBinh Voir le message
    C'est un piège ton truc. C'est pas un arbre mais une liste chaînées (c'est une sorte d'arbre aussi mais c'est légèrement différent). Mais surtout il n'y a pas d'index de départ. Comment tu peux renvoyer un index si t'as pas de position de départ. J'aime pas le JS mais ça peut donner ça en 5 min.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    function find(rootNode, value, compteur)
    {
    	if(rootNode.left == null && rootNode.right == null && rootNode.Value != value )
    		return null;
    	
    	if(rootNode.Value == value)
    	{
    		return compteur;
    	}
    	else if(rootNode.Value < value)
    	{
    		return find(rootNode.left, value, compteur--);
    	}
    	else{
    		return find(rootNode.right, value, compteur++);
    	}
    }
    Edit: c'est un arbre binaire je suis à l'ouest car une liste chainée c'est que dans un sens. ça fait longtemps que j'ai pas pratiqué.

    Edit2: faut aussi gérer le 1 million de noeuds max que j'ai oublié (je corrige pas car j'ai dépassé les 5 minutes ).
    A mon avis c'est loupé. parce que d'après l'énoncé, meme si la valeur du NODE de droite est plus grande, dans ce NODE la, la valeur de gauche peut etre plus petite que la valeur du node parent... Bref, il faut parcourir l'arbre binaire des deux cotés pour trouver le NODE car une valeur plus petite peut se trouver dans l'arbre de droite à chaque fois. Il faudrait ajouter quelques chose comme "si on a dépassé la valeur en passant d'un NODE parent à un NODE enfant, retour au NODE parent et teste du second NODE et ce recursivement"
    Cela me semble très compliqué de pondre quelque chose de juste en moins de 5 minutes, mais il peut etre intéressant de voir si la personne a tout de suite compris que ce n'etait pas un simple parcours vers le plus petit ou plus grand systématiquement. Exercice un peu piégeux dans le sens où dans la réalité, tu vas te rendre compte tout de suite que ton algo marche pas en le testant et corriger le fonctionnement

  15. #15
    Membre expert

    Homme Profil pro
    Consultant
    Inscrit en
    Janvier 2006
    Messages
    1 376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 376
    Points : 3 583
    Points
    3 583
    Par défaut
    Bon ben, j'ai obtenu 68% de réussite sur les tests Java/J2EE, 57% sur le Javascript/PHP et 38% sur du ReactJS. Du coup, pour le recruteur, à part React qui vu que c'est une techno récente, c'est peut-être un peu normal que ma note soit si basse, le reste lui convient.

    Donc, j'ai le droit à l'entretien suivant... Ouf !
    "La révolution informatique fait gagner un temps fou aux hommes, mais ils le passent avec leur ordinateur !"

  16. #16
    Membre expert
    Profil pro
    Dév
    Inscrit en
    Juin 2007
    Messages
    1 154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Dév

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 154
    Points : 3 667
    Points
    3 667
    Par défaut
    Bravo si t'es motivé pour être dev, tu devrais trouver sans problème 50k en SSII à Paris.

  17. #17
    Membre extrêmement actif

    Homme Profil pro
    .
    Inscrit en
    Avril 2014
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Avril 2014
    Messages : 1 064
    Points : 2 304
    Points
    2 304
    Par défaut
    Citation Envoyé par Chezkele Voir le message
    Je ne suis pas développeur depuis longtemps (quelques années) alors je ne sais pas ce que vaut mon avis mais ce que je tire de ma maigre expérience est qu'il n'y a pas vraiment de rapport entre réussir ce genre de test et être un consultant capable dans le domaine du développement. Ce n'est pas parce que l'on ne connaît pas par cœur le nom de la méthode machin de la bibliothèque machin que l'on est pas capable de l'utiliser après avoir été chercher l'info en trois secondes sur le net. Personnellement j'ai travaillé avec un bonne dizaine de langages (dans le cadre pro ou celui de mes études), et je ne connais pratiquement rien par cœur (limite pour certains je ne suis plus sûr de la manière d'écrire une boucle for), mais quand je rencontre un de ces langages j'arrive à m'adapter, et au final c'est ce que réclame mon métier (bien plus que du par cœur). Je me souviens d'une fois où j'ai travaillé sur un système d'information géographique alors que je n'avais jamais touché à ça: j'ai peut-être passé plus de temps à chercher sur le net comment faire les choses qu'à les coder (et je voyais sur les forums que je consultais que je n'étais pas le seul du tout). Au final, de la culture générale sur les bases de l'orienté objet et de la détermination auront suffi, mais si on me faisait passer un entretien technique sur ce SIG aujourd'hui, j’avoisinerais probablement les 0% étant donné que je suis passé à autre chose.
    bien sur. ce genre de tests technique est complétement absurde .... quand tu bosses tu trouves des infos partout, collègues, internet, ... tu ne te prends pas la tête a tout mémoriser.

  18. #18
    Expert éminent sénior
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 630
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 630
    Points : 10 556
    Points
    10 556
    Par défaut
    Pour les tests, j'ai remarqué (mais aussi j'ai eu des retours plus ou moins vagues) sur comment sont fait les tests

    Sur 20 questions, tu as en général
    • au moins 15 questions "par cœur". "Je suis un compilateur" mais avec la mise en place des plateformes en ligne cela devient moins vrai.
    • entre 2 et 4 questions d'algorithmes
    • 1 ou 2 questions spécialisées. Quasi impossible sans expérience.


    Et apparemment les tests sont calibrés pour que (en très gros)
    1. 20 - 30% des candidats aient moins de 8 (eux ils dégagent direct)
    2. 60 - 70% des candidats aient entre 8 et 12 - 13
    3. 10-15% des candidats aient entre 14 - 17
    4. 5% des candidats aient plus de 17


    Et en fonction de cet aperçu, j'ai l'impression que cela va dépendre de ton profil :
    • Si tu es junior, il faut que tu sois dans la tranche haute des 60-70%. La partie algo est du bonus (ou peut-être un plus).
    • Si tu prétends être "lead" il faut exploser les questions "par cœur" et réussir en grand partie la partie algo.
    • Si tu as plus de 5 - 6 ans d'expérience ou tu prétends entre chef de projet, il faut tout exploser et répondre à la partie spécialisation avec succès. Je pense que tu peux te louper un chouïa sur les questions "par cœur"

  19. #19
    Expert éminent
    Avatar de Pyramidev
    Homme Profil pro
    Développeur
    Inscrit en
    Avril 2016
    Messages
    1 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 470
    Points : 6 108
    Points
    6 108
    Par défaut
    Citation Envoyé par zecreator Voir le message
    Ben, voici le type de questions qui m'ont posé un souci :

    Javascript :
    On te donne un arbre de Nodes. Un Node est un objet JS de ce type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Node : {
    value: <int>,
    left: <Node>, (peut être null)
    right: <Node>, (peut être null)
    }
    La rêgle : Chaque Node contient un entier. Un Node peut être associé à 0, 1 ou 2 NODE enfants. Le NODE de gauche a une valeur plus petite que son parent, le NODE de droite, une valeur plus grande.

    L'arbre de NODE peut contenir jusqu'à 1 000 000 de NODES.

    Ecrire la fonction JS find(rootNode, value) qui retourne l'index du premier NODE contenant la valeur <value>. <rootNode> est le NODE de départ de l'arbre. Si la valeur n'est pas trouvée, la fonction retourne null. La fonction doit préserver la charge du CPU.

    Les questions sont chronométrées. Pour celle-ci, j'avais 5 min.
    La question ressemble à une simple recherche dans un arbre binaire de recherche, mais il y a alors deux choses à corriger dans l'énoncé :
    • Dans un arbre binaire de recherche, pour tout nœud X, tous les nœuds du sous-arbre de gauche ont une valeur plus petite que celle de X et tous les nœuds du sous-arbre de droite ont une valeur plus grande que celle du nœud X. La contrainte n'est pas seulement sur les enfants directs, mais sur les sous-arbres entiers. C'est grâce à ça qu'on peut faire une recherche dichotomique.
    • Retourner un index, ça n'a pas vraiment de sens dans ce genre de cas. Je parie que la consigne demande plutôt de retourner une référence vers le nœud s'il est trouvé, null sinon.


    Citation Envoyé par DuyBinh Voir le message
    J'aime pas le JS mais ça peut donner ça en 5 min.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    function find(rootNode, value, compteur)
    {
    	if(rootNode.left == null && rootNode.right == null && rootNode.Value != value )
    		return null;
    	
    	if(rootNode.Value == value)
    	{
    		return compteur;
    	}
    	else if(rootNode.Value < value)
    	{
    		return find(rootNode.left, value, compteur--);
    	}
    	else{
    		return find(rootNode.right, value, compteur++);
    	}
    }
    Edit: c'est un arbre binaire je suis à l'ouest car une liste chainée c'est que dans un sens. ça fait longtemps que j'ai pas pratiqué.

    Edit2: faut aussi gérer le 1 million de noeuds max que j'ai oublié (je corrige pas car j'ai dépassé les 5 minutes ).
    Mauvaise réponse :
    • Tu retournes un compteur qui correspond à la profondeur de la recherche dans l'arbre, mais en aucun cas une information qui permet d'identifier le nœud trouvé. C'est sûrement un reliquat du code que tu avais écrit quand tu croyais qu'il s'agissait d'une liste chaînée.
    • Tu as inversé droite et gauche.
    • Dans le cas où rootNode.left != null && rootNode.right == null && rootNode.Value > value, ton code exécutes find(rootNode.right, value, compteur++) qui essaie de lire la propriété .left sur un paramètre nul => BOUM !

  20. #20
    Membre expert
    Profil pro
    Dév
    Inscrit en
    Juin 2007
    Messages
    1 154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Dév

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 154
    Points : 3 667
    Points
    3 667
    Par défaut
    Oui ce code est full erreur, j'ai essayé d le faire en 5 minutes comme au test de zecreator. Du coup je cherche pas à corriger mon post .

    Pour la consigne, comment tu peux renvoyer une référence sur l'arbre en langage javascript puisqu'un noeud ne possède qu'une valeur entière pour l'identifier ? (je suis pas expert dans ce langage)

Discussions similaires

  1. Test technique JAVA/J2EE
    Par leila92 dans le forum Emploi
    Réponses: 7
    Dernier message: 15/03/2007, 00h13
  2. ATOS Origin test technique
    Par johanne21 dans le forum SSII
    Réponses: 4
    Dernier message: 31/07/2006, 15h26
  3. [Emploi] Les tests techniques Java/J2EE c'est quoi ?
    Par dedeloux dans le forum Emploi
    Réponses: 6
    Dernier message: 27/04/2006, 16h35
  4. [Sondage] : Test technique pour un entretien professionnel
    Par __fabrice dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 17/06/2005, 17h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo