Skip to content

Instantly share code, notes, and snippets.

@elishowk
Created October 24, 2012 14:39
Show Gist options
  • Save elishowk/3946440 to your computer and use it in GitHub Desktop.
Save elishowk/3946440 to your computer and use it in GitHub Desktop.
Questionnaire entretien dev web

Questionnaire entretien dev web

@version 1.1

Contributors

@bentruyman (http://bentruyman.com/), @roger_raymond (http://twitter.com/iansym), @ajpiano (http://ajpiano.com/), @paul_irish (http://paulirish.com/), @SlexAxton (http://alexsexton.com/), @boazsender (http://boazsender.com/), @miketaylr (http://miketaylr.com/), @vladikoff (http://vladfilippov.com/), @gf3 (http://gf3.ca/), @jon_neal (http://twitter.com/jon_neal), @wookiehangover (http://wookiehangover.com/) and @darcy_clarke (http://darcyclarke.me)

Veille Techno

  • Êtes-vous sur Twitter ?
    • Si oui, qui suivez-vous ?
  • Êtes-vous sur GitHub ?
    • Si oui, donnez quelques exemples de dépôt que vous suivez.
  • A quels blogs êtes vous abonné ?
  • Si vous pouviez maitriser parfaitement une technologie cette année, laquelle serait-ce ?
  • Quels raisons peuvent justifier la non-publication du code-source d'un logiciel ?
  • Quel est l'application dont vous êtes le plus fier ?
  • Avez vous des projets chouchous ? Quel genre ?

Outils de Dev

  • Quel logiciel de gestion de versions avez-vous déjà utilisé ? (Git, SVN etc.)
  • Quel navigateur et outils de débogage web utilisez-vous ?
  • Quel outils utilisez vous pour tester la performance de votre code ?
  • Quel outils utilisez vous pour surveiller la performance de votre code ?
  • Quelles sont vos parties favorites des outils de développement que vous utilisez le plus ?

Méthodologie

  • Pouvez-vous décrire votre workflow lorsque vous créez une page web ?
  • Quand optimisez vous les performances de vos applications web ?

Performance

  • Pourquoi est-il préférable de disposer ses assets sur des domaines différents ?
    • Combien de ressources différentes un navigateur peut télécharger à partir d'un même domaine à un instant T ?
  • Donnez 3 façons qui permettent de réduire le temps de chargement d'une page. (perçu ou réel)

HTML

  • Expliquez ce que le terme "HTML sémantique" signifie.
  • À quoi servent les data- attributes ?
  • Citez 2 balises HTML5 qui n'existaient pas en HTML4 ?
  • citez 1 à 5 APIs d'HTML5 ?
  • Décrivez la différence entre cookies, sessionStorage, et localStorage.

Javascript

  • Quelles sont les librairies Javascript que vous avez utilisé ?
  • Quelles sont les librairies Javascript que vous aimeriez utiliser ?
  • Que sont les variables undefined et null ?
  • Qu'est-ce qu'une closure, et pourquoi / comment en utiliseriez vous une ?
  • Quel est un cas d'utilisation pratique pour une fonction anonyme ?
  • Différence entre :
function Person(){}
var person = Person() // et
var person = new Person()
  • Quelle est la différence entre .call et .apply ?

  • Pouvez vous expliquer comment fonctionne l'héritage en Javascript ?

  • Quand utiliseriez-vous document.write() ?

  • Quelle est la différence entre détection de feature, et l'utilisation de l'User Agent ?

  • Expliquez un appel AJAX dans le plus grand détail possible

  • Avez vous déja utilisé fait du templating en Javascript ?

    • Si oui, quelles librairies avez vous utilisé
  • Connaissez vous l'une de ces librairies ? Underscore, Backbone, Jquery, Socket.io, Sock.Js

  • Quelle est la différence entre les évenements load et ready du document?

  • Quelle est la différence entre == et === ?

  • Expliquez comment vous récupéreriez un paramètre de querystring de l'URL du browser.

  • Expliquez la politique d'origine commune (Same origin policy) et ses implication en Javascript.

  • Expliquez la délégation d'évênement.

  • Décrivez une stratégie de mémoization (pour éviter la répétition des calculs) en Javascript.

  • Qu'est-que qu'une instruction 'Ternaire', et qu'indique le mot 'Ternaire'

code JS basic

~~3.14

Question: Que retourne ce code ? Réponse: 3

"je suis un mangeur de lasagne".split("").reverse().join("");

Question: Que retourne ce code ? Réponse: "engasal ed ruegnam nu sius ej"

( window.foo || ( window.foo = "bar" ) );

Question: Que retourne window.foo? Réponse: "bar" seulement si window.foo n'était pas défini ou faux, autrement il garde sa valeur

var foo = "Hello"; (function() { var bar = " World"; alert(foo + bar); })(); alert(foo + bar);

Question: Que se passe t'il à l'éxécution de ce code ?

Réponse: "Hello World" & ReferenceError: bar is not defined

var foo = [];
foo.push(1);
foo.push(2);

Question: Quelle est la valeur de foo.length ? **Réponse: 2

var foo = {};
foo.bar = 'hello';

Question: Quelle est la valeur de foo.length ? **Réponse: undefined

jQuery, plus avancé

  • jQuery : incontournable ?

  • Expliquez le chainage

  • Expliquez 'deferred'

  • Décrivez des optimisations spécifiques à jQuery que vous pouvez implémenter.

  • Que fait .end() ?

  • Pourquoi et comment restreindriez-vous un evenement bindé à un un namespace ?

  • Nommez 4 valeurs différentes que vous pouvez passer à la méthode jQuery.

    • Sélecteur (string), HTML (string), Callback (function), HTMLElement, objet, tableau, tableau d'éléments, objet jQuery, etc…
  • Quelle est la différence entre .get(), [], et .eq() ?

  • Quelle est la différence entre .bind() et .live(), ou entre .delegate() et .on()?

  • Optimisez ce sélecteur :

$(".foo div#bar:eq(0)")

CSS

  • Connaissez vous des libraires CSS
  • Avez vous déja utilisé un grid system, et si oui, lequel préférez-vous ?
  • Avez vous déja implémenté des media queries, ou des layouts/CSS spécifiques aux mobiles ?
  • Utilisez vous des préprocesseurs CSS ? (SASS, Compass, Stylus, LESS)
    • Si oui, décrivez ce que vous aimez et n'aimez pas des préprocesseurs que vous avez utilisé.

Python :

  • Qu'aimez-vous à propos de Python?
  • Que détestez-vous ?
  • De quel projet en python êtes-vous le plus fier, pourquoi ?
  • De quel projet en python êtes-vous le plus honteux, pourquoi ?
  • Quelle est le système de base de données intégré dans la distribution standard de Python ?
  • Comment optimiser-vous et monitorez-vous votre code python ?
  • Quel système de tests python avez-vous déjà utilisé ?
  • Connaissez vous l'une de ces librairies ? Gevent, Celery, Boto, Tornado, Flask

Ops

  • Avez vous déjà utilisé AWS ? Heroku ? DotCloud ?

Extras

  • Si c'était pas du Dev, vous feriez quoi ?
  • Quelle est votre feature favorite de IE
@fcuny
Copy link

fcuny commented Nov 14, 2012

La question "Que détestez-vous ?" est une des plus importantes à mon avis, ca montre que le candidat est capable d'avoir une opinion et une reflexion sur les outils qu'il utilise :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment