Préparation à l'entretien d'embauche WordPress


17

J'interviewe pour un emploi de développeur WordPress. Je ne travaille avec WP que depuis un an maintenant et je pense avoir une bonne vue d'ensemble, comme comment le configurer, quoi functions.phpfaire, où modifier les thèmes, etc. Mais l'interview que j'ai la semaine prochaine va être me demandant tout sur WordPress et Linux avec un peu de MySql. Tout ce que je sais, c'est qu'ils me donneront un ordinateur portable et un test.

Comment puis-je me préparer à une telle chose? Dois-je m'entraîner à écrire un plugin aujourd'hui? Je sais comment configurer un serveur Linux, mais je ne suis pas génial avec la manipulation de fichiers avancée ou les scripts shell. Je suis bon en installation, dépannage et configuration. Et j'ai beaucoup lu le WP Codex. Quel serait un bon devoir à faire pour me préparer correctement? J'ai remarqué qu'il n'y a pas beaucoup de ressources pour étudier pour une interview centrée sur WP.


1
Il existe une grande différence entre développeur, concepteur et administrateur de serveur, bien qu'il y ait certainement un certain chevauchement.
Wyck

Oui c'est vrai. Je contiens beaucoup de ces chevauchements et je l'ai fait exprès car je ne veux pas être un développeur qui bogue les administrateurs système et les administrateurs de base de données pour des choses que je peux gérer en sachant comment configurer des serveurs et des bases de données ...
Lynn

Réponses:


18

Si je devais embaucher un développeur WordPress, ma liste de souhaits ressemblerait à ceci:

  • Connaît le HTML et le CSS à l'intérieur et à l'extérieur;
  • A au moins une compréhension de base de JavaScript;
  • Connaît PHP et produit un beau code (propre, cohérent, SEC )
  • A une bonne compréhension de la conception de bases de données et de SQL: si je vous montre un schéma de base de données et quelques requêtes, pouvez-vous dire si elles sont bien conçues et efficaces?
  • Comprend leur fichier .htaccess;
  • Comprend parfaitement la boucle;
  • Comprend comment fonctionnent les taxonomies, les champs personnalisés, les types de publication personnalisés et les formats de publication, et à quoi ils servent;
  • Connaît le fonctionnement des thèmes et comprend la hiérarchie des modèles ;
  • Sait comment fonctionnent les plugins et comment en écrire un simple.

Il y a beaucoup plus que je peux penser, mais je pense que ce qui précède serait un début assez solide.

Et voici une question piège: qu'est-ce qui craint WordPress, et que changeriez-vous dans la prochaine version majeure pour le corriger? Si vous pouvez donner une réponse convaincante à cela, vous en savez probablement beaucoup sur WordPress.

Mais en mettant de côté la liste de souhaits ci-dessus pendant une seconde, la chose la plus importante pour moi n'est pas de savoir si vous connaissez la solution à un problème: c'est de savoir si vous pouvez trouver la solution.

Sachez où chercher (le Codex, le manuel PHP, des endroits comme celui-ci) et soyez vraiment intéressé à faire les choses correctement. Ne soyez pas satisfait lorsque la chose qui n'a pas fonctionné fonctionne soudainement: était-ce la bonne solution? Pourriez-vous le faire de manière plus élégante, avec moins de code? Cette solution peut-elle évoluer, peut-elle être réutilisée lorsqu'un problème similaire surgit?

J'espère que cela t'aides.


Je vais dire tous les bons points, mais un bonus pour m'avoir fait réfléchir à ce que j'aimerais améliorer avec WordPress. Du haut de ma tête, je dirais la gestion des utilisateurs. Mais je suis content que vous l'ayez demandé.
Lynn

23

La manipulation de fichiers et les scripts shell ne sont pas souvent ce que vous faites avec WordPress. Tout au plus quelque chose que vous faites à lui, comme des trucs de sauvegarde ou de déploiement. C'est quelque chose que WP lui-même et les plugins essaient de garder au minimum pour une bonne compatibilité avec différents environnements d'hébergement.

Quel type de développement WordPress va-t-il réellement être? Le champ est assez large, des trucs très frontaux aux trucs très back-end et une charge de choses entre les deux.

C'est loin d'être complet, mais les choses que je considérerais personnellement comme une base de base solide pour le développement de WP sont:

  • en général

    • compréhension à toute épreuve des hooks - ce qu'ils sont, comment ils fonctionnent, comment ils fonctionnent avec les classes, comment un code peut manipuler les événements hookés d'un autre code
    • API de paramètres, ajout de choses à la zone d'administration en général
    • concepts de sécurité, validation, désinfection, sortie à l'écran, vérification de l'autorité et de l'intention
  • développement de thème

    • requêtes et boucles, différentes façons de les exécuter et à utiliser pour quoi
    • balises de modèle, notions de base ( get_vs the_), variables globales sur lesquelles elles s'appuient
    • hiérarchie des modèles et balises conditionnelles, ce que c'est, comment le plier
    • thèmes parents et enfants, ordre de chargement, héritage du modèle, processus de configuration
    • file d'attente de script et de style
  • développement de plugins

    • modification des états des plugins (activation, désactivation, désinstallation)
    • différences logiques entre les plugins, doivent utiliser des plugins et du code dans les thèmes
    • organisation du code (préfixes, classes)
    • la logique de chargement du noyau et du plugin, quand est-il trop tôt, trop tard et approprié pour exécuter du code
    • Implémentation Ajax

J'aimerais pouvoir marquer ces deux réponses comme étant la réponse ... Les deux contiennent d'excellents points à considérer.
Lynn

D'accord, ce sont deux réponses de qualité. Peut-être qu'un wiki communautaire peut être créé à partir de cela?
hsatterwhite

2
Pas de soucis. :) Il n'y a pas de règle selon laquelle la question ne peut avoir qu'une seule bonne réponse. Acceptez simplement celui qui vous a le plus aidé personnellement et laissez le vote communautaire s'occuper du reste.
Rarst
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.