Questions pour Déterminer Maven Connaissances
J'ai demandé à Maven de la formation au travail, et les patrons veulent embaucher quelqu'un qui sait Maven pour venir travailler avec nous en tant que consultant de sorte que nous allons apprendre Maven à partir d'une perspective sur le monde réel au lieu d'un point de vue de la formation.
J'ai été chargé de venir avec des questions de difficulté variés de demander des candidats à l'embauche afin de vérifier leur Maven capacité. Le problème est que je ne comprends pas tout Maven encore (d'où la demande de formation).
Quelles questions aimeriez-vous poser à quelqu'un afin de déterminer leur Maven capacité, et le niveau de connaissances quelqu'un pour avoir de Maven pour y répondre?
Vous devez vous connecter pour publier un commentaire.
À mon avis, un "Maven" conseil doit:
dependencyManagement
.Quelqu'un avec ces compétences devrait vous mettre sur le droit chemin (et a probablement une expérience décent de Maven).
Beaucoup de bonnes questions, en particulier celles proposées par Pascal Thivent. Cependant, je voudrais poser une autre question:
Q: Quelle est la différence entre l'agrégation et de l'héritage dans Maven?
R: Vous pouvez faire une courte explication ici.
Je suggère que vous pensez en ce que vous voulez avec Maven, ou pourquoi tu veux l'introduire dans vos projets. Peut-être demander à votre patron pour son motifs/objectifs dans l'introduction de Maven.
Après que vous avez nommé vos principaux objectifs pourquoi d'introduire Maven. Demandez consultants potentiels comment qu'ils allaient utiliser Maven pour atteindre ces objectifs.
Exemples 1
Objectif: l'amélioration globale de la qualité du code en projet.
Question: Comment pouvons-nous utiliser Maven pour améliorer l'ensemble de nos code de la qualité dans les projets.
Réponse Possible: Maven a plusieurs plugins de force/meassure de la qualité du code dans les projets, nous avons pu intégrer les personnes dans notre buildscripts dans presque pas de temps. (par exemple, checkstlye, pmd, cobertura, xradar...)
Exemples 2
Objectif: Création automatisée des scripts de déploiement pour la destination de plusieurs environnements.
Question: Comment pouvons-nous utiliser Maven pour déployer automatiquement des artefacts à destination de plusieurs environnements.
Réponse Possible: On pourrait utiliser les plugins Maven pour le déploiement (par exemple, Fret) et l'utilisation de maven profils pour gérer plusieurs configurations.
un.s.o.
Je voudrais poser la question:
Les deux sont très ouverts à des questions, mais ils doivent donner à votre sensation de ses compétences et ce que vous pouvez apprendre de lui et de ce qu'il pourrait apporter à votre entreprise.
MODIFIER
Maven n'est qu'une pièce dans l'ensemble de la gestion de configuration logicielle (SCM) de la stratégie. Un bon consultant doit connaître les détails de maven dans et hors, mais aussi savoir comment s'inscrit-elle dans la grande image. Tout comme vous vous attendez à un Java EE conseiller d'être expert en Java, mais de savoir ce que cela signifie pour fournir d'applications d'entreprise pour un client.
Dans la société, j'ai travaillé, nous avons eu un gars responsable de la SCM qui avait été un Maven contributeur. Et de son point de vue était beaucoup plus vaste que le "juste" de maven. Il a été en charge de l'productive construire, la configuration et le processus de libération. Deux exemples:
Nous étions de coder en dur le numéro de version dans du code java pour pouvoir l'afficher dans le dialogue "à propos" de nos applications de bureau. La plupart du temps, nous avons oublié de le changer après la libération entraînant une incompatibilité entre le numéro de version et le dialogue à propos -- gros problème pour les intégrateurs sur place. C'est une mauvaise pratique. Il a ensuite mis en place quelque chose, de sorte que le numéro de version de Maven serait correct dans le
manifest
fichier et éduqués pour lire lamanifest
fichier à partir de Java pour assurer à la fois du match.Lorsque vous relâchez un module, il a écrit un script non seulement de construire la demande, mais également à proximité de la version correspondante dans le système de ticket (JIRA) et pousser les notes de publication dans le wiki.
Tout ça pour dire, que de savoir comment "mavenize" un projet est important, mais le plus important, le gars doit comprendre comment vous travaillez actuellement, ce qui est en place et vous aider à mettre en place quelque chose de raisonnable pour améliorer votre productivité.
Voici les questions que je voudrais poser la question:
pour un groupe de projets?
version particulière d'un plugins?
serait d'utiliser un assemblage de construire un bocal
plutôt que de le jar du plugin?
Projet Java EE composé d'un EJB, une GUERRE
fichier et deux pots.
l'intérieur de la société repository server et pourquoi?
Toutes ces questions ont au moins deux réponses. Je serais à la recherche de quelqu'un qui peut fournir au moins deux réponses et de souligner les avantages et les inconvénients de chaque approche. Idéalement, cette personne devrait être peaufiner la mise en place pour moins de perturbations pour la façon dont votre environnement travaille déjà.
Si vous avez le luxe, je suggère d'avoir le consultant venir sur place pour un jour, lui donner une java du projet que vous travaillez sur et demandez-lui de "mavenize" pour vous. Le lendemain, à s'asseoir avec lui/elle et demandez-leur d'expliquer comment compiler, et de construire un bocal (ou de guerre).
Ou peut-être les faire venir à l'entretien avec un projet maven à démontrer. Le devrait être en mesure de compiler et générer un jar/la guerre à tout le moins, de l'omi. Si ils peuvent exécuter des tests unitaires, déployer pour tomcat, intégrer avec les différentes structures comme gwt, hibernate, spring, etc, puis encore mieux.