Maison développement back-end Problème PHP Comment interviewer un programmeur PHP qui travaille depuis un an

Comment interviewer un programmeur PHP qui travaille depuis un an

Jun 10, 2019 pm 05:27 PM
php 面试

Comment interviewer un programmeur PHP qui travaille depuis un an

Cet article est juste pour partager mes sentiments et mes expériences au cours des dernières semaines. J'espère qu'il pourra apporter des gains à beaucoup comme moi ou aux débutants dans l'industrie Internet

Avant-propos

Tout d'abord, je dois expliquer que je ne suis qu'un PHPer ordinaire qui a obtenu son diplôme il y a un an et qui n'a qu'un an de travail expérience.Mes capacités sont limitées.Cet article est juste pour partager mes sentiments et mes expériences au cours des dernières semaines, j'espère qu'il pourra apporter des gains à beaucoup de gens comme moi ou aux débutants dans l'industrie Internet.Bien sûr, j'espère que les experts pourront commenter. et ajoutez tout ce qui est faux ou insuffisant.

Or, trois et argent. À cette période de l'année, de nombreuses personnes souhaitent profiter de cette opportunité pour changer d'emploi ou rejoindre une certaine industrie. L'objectif est très clair : ils ont besoin d'un meilleur environnement et réalisent leur propre valeur. . Surtout dans l'industrie Internet, qui a été très populaire au cours des dix dernières années, qu'ils soient de nouveaux diplômés, ceux qui codent depuis plusieurs années ou ceux qui entrent dans l'industrie informatique dans tous les secteurs, ils espèrent tous pouvoir « obtenir » un salaire élevé, acquérir des connaissances et bénéficier d'avantages sociaux. » Désormais, l'augmentation des inscriptions dans les collèges et les universités et l'abaissement des seuils informatiques ont également entraîné l'arrivée sur le marché d'un trop grand nombre de jeunes programmeurs ayant « de faibles compétences et des objectifs élevés » (je suis l'un d'eux). De plus, l'hiver Internet de cette année, il y a beaucoup de moines et peu de monde, et il n'est pas facile de trouver une opportunité d'entretien. Ne parlez pas d'accepter l'offre. Je ne veux pas perdre de temps dans mon entreprise actuelle. Je ne vous en dirai pas les raisons précises, alors j'ai décidé de trouver un nouvel emploi. D'une part, je veux faire mes preuves, et d'autre part. D’un autre côté, j’ai envie de sortir de ma zone de confort et de me lancer plus de défis.

Un mois de mars misérable

J'étais tellement arrogant au début que j'ai passé une demi-journée à trier mon CV. Mon CV devrait encore être plutôt bon à ce moment-là (. Les articles suivants décriront en détail comment optimiser les CV.) Le lendemain, j'ai commencé à soumettre des CV sur Boss Direct Recruitment et Lagou. Les premières soumissions concernaient des postes de développement de 1 à 3 ans en PHP à Guangzhou. élevé, mais j'ai eu la chance de recevoir plusieurs invitations à des entretiens. Ensuite, je me suis réservé deux jours pour réviser. En fait, j'ai simplement recherché les questions d'entretien PHP en ligne et ouvert plus d'une douzaine d'onglets avec diverses questions d'entretien. C'est ce que j'appelle des « questions multiples ». , les choses que j'ai lu étaient si confuses que j'ai presque tout oublié le jour de l'entretien. Beaucoup d'entre eux ont juste mémorisé certaines réponses et ne les ont pas du tout comprises clairement. Voir les entretiens spécifiques ci-dessous pour la situation misérable.

Préparation insuffisante - le premier tour n'a pas été bon

La première entreprise, Pazhou, Guangzhou, a un très bon environnement, de bons avantages sociaux et une entreprise spécialisée dans applications de beauté. C'est aussi l'opportunité d'interview que je regrette le plus. Il y avait un test écrit au début, et le contenu principal était un peu orienté vers le langage C. Il n'y avait presque pas de PHP, je me suis uniquement appuyé sur les vagues connaissances de l'université pour rédiger certaines réponses, j'ai oublié l'heure précise d'un test. pendant ce temps, je n'entrerai donc pas ici dans les détails du contenu de l'épreuve écrite. Principalement la première série d'entretiens :

  • La première question : il existe 5 types de données de Redis, et je n'ai répondu qu'à une seule chaîne.

  • Deuxième question : Savez-vous comment Redis implémente l'implémentation des données et synchronise la base de données ? Je ne connais même pas le type de données, je peux seulement vous dire que ce n'est pas clair et que je ne l'ai jamais utilisé.

  • La troisième question : Si la base de données est volumineuse, comment l'optimiser ? Ma réponse : faites du bon travail d'indexation et d'optimisation des instructions MySQL.

  • Quatrième question : Quelles optimisations d'instructions MySQL avez-vous effectuées au travail ? Ma réponse : j'utilisewhere in (id1, id2...) pour l'optimisation. . .

En fait, durant l'année de développement PHP, je n'ai pas beaucoup utilisé Redis, j'ai simplement utilisé String (ça montre aussi que je suis vraiment bon dans ce domaine). En fait, où est Laravel ? Le préchargement ORM utilise Where In pour résoudre le problème N+1 (voir le manuel de Larave pour plus de détails), où in n'est pas plus efficace que la jointure gauche

Enfin, après discutant pendant près de 20 minutes, j'ai demandé aux RH de me poser Certaines questions, comme mon impression de l'entreprise, etc., devraient simplement suivre le processus, puis me demander de revenir en arrière et d'attendre une notification, et bien sûr il y aura il n'y aura aucune notification.

Je n'ai pas réussi les bases - j'ai échoué au deuxième tour

La deuxième compagnie d'assurance, une compagnie d'assurance à côté de l'université de Shenzhen, m'a porté le plus gros coup. Il n'y avait pas de questions de test écrites. Au premier tour, un jeune homme qui avait à peu près le même âge que moi est venu pour l'entretien. Les questions posées étaient essentiellement des questions d'entretien provenant d'Internet, comme la différence entre TCP. et udp, poignée de main à trois, la différence entre inclure/exiger, etc. J'ai essentiellement répondu à toutes. Puis une personne aux cheveux relativement fins et plus expérimentée est venue m'interviewer :

  • Mon CV mentionnait une connaissance liée au JWT, il m'a donc demandé de décrire des choses spécifiques. La différence avec la séance, etc. Le projet a pris du temps, alors je lui ai simplement parlé de JWT, mais ce n'était évidemment pas suffisant pour le satisfaire, alors j'ai continué à demander jusqu'au niveau le plus bas, à ce moment-là, j'étais très paniqué et je ne m'en souvenais même pas.

  • Comment les frameworks PHP implémentent-ils le chargement automatique des fichiers ? J'ai répondu à la méthode magique __autoload and include, et l'autre partie m'a demandé d'être plus précis, y a-t-il autre chose ? Je n'arrive vraiment pas à penser à

  • pour écrire une liste chaînée, n'est-ce pas ? Ne le fera pas. . .

En fait, concernant la question JWT, l'intervieweur ne l'a probablement jamais utilisée. Le serveur a en fait une clé privée Chaîne secrète pour la signature, afin d'obtenir l'effet recto verso. cryptage, décryptage et vérification. Le deuxième problème devrait être qu'il existe également un spl_autoload_register qui peut être utilisé pour enregistrer plusieurs fichiers

La troisième liste chaînée, je regrette de ne pas avoir bien appris les structures de données à l'université, je vais devoir le faire. rattrapez-le plus tard

Enfin, l'intervieweur a directement donné le résultat : Je suis désolé, le vôtre ne convient pas à notre entreprise. J'espère que vous pourrez compléter les connaissances de base à l'avenir. sachez simplement comment l'utiliser, mais sachez aussi pourquoi il peut être utilisé de cette manière. Même si ce fut un coup dur, c'est cette interview qui m'a fait prendre conscience de moi-même et j'ai réalisé que je manquais trop de connaissances et que mes bases étaient trop pauvres.

J'aime toujours ce genre d'entretien où les résultats sont donnés directement.

Pratique insuffisante, connaissances trop étroites - pas très directes

La troisième entreprise, l'intervieweur est un grand homme, il était un ami de Han Tianfeng, il est très gentil et gentil. Il n'y a pas eu de test écrit ni d'auto-présentation. Ils m'ont principalement interrogé sur mon expérience professionnelle. Ce qui m'a le plus impressionné était : ai-je déjà capturé un paquet, quels outils ai-je utilisé, ma compréhension de TCP et si j'ai utilisé un langage pour le faire. implémenter le processus TCP. . . Malheureusement, je ne l'ai jamais pratiqué. Mes connaissances sont trop limitées. Après avoir discuté pendant 20 minutes, je suis parti et il n'y a eu aucun résultat.

Offre de Bai Gaoxing -- J'ai de la chance

La quatrième entreprise est également à Shenzhen L'entreprise que j'ai vue sur le site de recrutement n'est pas petite, avec 100-. 500 personnes. Mais l'offre a été faite par une autre société, après vérification en ligne, il s'est avéré qu'il s'agissait d'une filiale, quelque peu externalisée. Il n'y a pas eu de test écrit. Un jeune homme m'a interviewé et m'a principalement posé des questions sur certaines informations sur Laravel, que l'on trouve généralement dans les manuels. Mes réponses n'étaient pas très complètes. Enfin, il y a une question : quels modèles de conception connaissez-vous et quels sont les six principes ? Concernant les modèles de conception, je suis resté uniquement sur les modèles singleton et usine, et les six principes n'ont pas été entièrement répondus.

J'ai finalement été laissé passer de manière inattendue. Je pense que l'entreprise a un besoin urgent de personnel. Le salaire qu'on m'a proposé était tout à fait satisfaisant. J'ai pensé qu'après avoir passé des entretiens avec de nombreuses entreprises, l'une d'elles m'a finalement accepté et a accepté d'aller travailler la semaine prochaine. La première chose que j'ai faite à mon retour dans l'entreprise le lendemain a été de demander à notre directeur de démissionner dans une semaine, mais on m'a dit que le processus de transfert prendrait en fait un mois. , j'avais pratiquement tout remis, et le projet n'était pas grand, mais la raison invoquée par l'entreprise est que si vous n'avez pas de transfert de travail, cela signifie que vous ne faites rien aux heures ordinaires et que votre travail n'est pas saturé, ce qui affectera le recrutement ultérieur. Cela m'a complètement dérouté. D'une part, je n'ai pas osé démissionner à l'avance. Beaucoup de gens étaient dans la crise d'Internet, alors ils ont attendu d'avoir reçu l'offre avant de parler de démission. cela doit passer par un processus d'un mois. Le nouveau L'entreprise a continué à arriver au travail une semaine plus tard, et il n'y avait pas besoin de discuter de quoi que ce soit. . . Finalement, j'ai renoncé à l'offre. D'une part, je pensais que cette société était quelque peu externalisée. D'autre part, utiliser le nom d'une filiale pour faire une offre m'a toujours un peu inquiété. lors de mon précédent stage, il y avait une entreprise qui recrutait sous le nom de Tencent. Plus tard, on a découvert qu'il s'agissait d'un agent Tencent Automobile. . .

Fin

Voici les entreprises que j'ai interviewées en mars et qui étaient assez impressionnantes. Les bonnes questions conduisent à des opportunités gaspillées. Je voudrais donc avertir tout le monde ici que si vous décidez de partir, vous devez être parfaitement préparé. Ce type de préparation ne doit pas être simplement une soi-disant mise à jour des questions d'entretien. J'écrirai un autre article à l'avenir. pour décrire en détail les nombreuses fois où j'ai échoué à l'entretien, comment passer deux semaines pour le faire - "avoir un plan, être efficace et avoir un excellent CV", et enfin réussir à obtenir votre offre préférée.

  • Ayez un plan——Si vous planifiez vos objectifs d'apprentissage quotidiens, il comprend principalement près de 10 aspects de connaissances tels que le système d'exploitation, le réseau informatique, MySQL, etc. .

  • Haute efficacité - Je vais présenter comment je me souviens efficacement de certaines connaissances de base et couvrir les points de connaissance de l'entretien autant que possible

  • Excellent CV——L'entretien est la première étape, et le CV est la plus critique. Je vais vous présenter comment j'optimise mon CV

Ici. Il devrait y avoir des centaines de CV soumis en mars. Sur la douzaine d'entreprises qui ont donné leur avis, je pense que seules sept ou huit ont été interviewées. À l'exception des quelques-unes mentionnées ci-dessus, les autres étaient toutes des entreprises d'externalisation ou des start-up. Certaines personnes m'ont même approché. et m'a demandé de démarrer une entreprise avec eux, et des stagiaires front-end développent ensemble de petits programmes (rire et pleurer). Bref, la situation actuelle du marché n'est pas bonne, mais il y a encore une chance d'obtenir un entretien. Si vous venez d'obtenir votre diplôme, il est préférable de postuler au recrutement scolaire. Si vous êtes comme moi et avez un ou deux ans de travail. expérience, tu devrais bien te préparer au lieu de te plaindre. L’environnement n’est pas bon et je veux juste arrêter de le faire. Bien sûr, certains experts des niveaux 985 et 211 devraient trouver de grandes usines ou passer les examens d'entrée au troisième cycle, avec des objectifs plus ambitieux. Je suis une personne qui considère davantage la réalité. À l'heure actuelle, il m'est très difficile d'aller dans de grandes usines. en raison de ma force et de ma formation, je ne peux donc travailler que dans des petites et moyennes entreprises dont les conditions ne sont pas trop mauvaises et qui cherchent à se développer. Les programmeurs doivent utiliser des actions pratiques pour faire leurs preuves, être terre-à-terre et ne pas être trop ambitieux ni trop bas. C'est mon opinion personnelle.

Recommandations de didacticiels associées :

Tutoriel vidéo sur les questions d'entretien pratiques PHP


Le dernier didacticiel vidéo d'entretien PHP

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Comment configurer Visual Studio Code (VS Code) pour le développement PHP Comment configurer Visual Studio Code (VS Code) pour le développement PHP Dec 20, 2024 am 11:31 AM

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

7 fonctions PHP que je regrette de ne pas connaître auparavant 7 fonctions PHP que je regrette de ne pas connaître auparavant Nov 13, 2024 am 09:42 AM

Si vous êtes un développeur PHP expérimenté, vous aurez peut-être le sentiment d'y être déjà allé et de l'avoir déjà fait. Vous avez développé un nombre important d'applications, débogué des millions de lignes de code et peaufiné de nombreux scripts pour réaliser des opérations.

Comment analysez-vous et traitez-vous HTML / XML dans PHP? Comment analysez-vous et traitez-vous HTML / XML dans PHP? Feb 07, 2025 am 11:57 AM

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Apr 05, 2025 am 12:04 AM

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Programme PHP pour compter les voyelles dans une chaîne Programme PHP pour compter les voyelles dans une chaîne Feb 07, 2025 pm 12:12 PM

Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules. Qu'est-ce qu'une voyelle? Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules: a, e, i, o, u Exemple 1 Entrée: String = "TutorialSpoint" Sortie: 6 expliquer Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total

Expliquez la liaison statique tardive en PHP (statique: :). Expliquez la liaison statique tardive en PHP (statique: :). Apr 03, 2025 am 12:04 AM

Liaison statique (statique: :) ​​implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.

Quelles sont les méthodes PHP Magic (__construct, __ destruct, __ call, __get, __set, etc.) et fournir des cas d'utilisation? Quelles sont les méthodes PHP Magic (__construct, __ destruct, __ call, __get, __set, etc.) et fournir des cas d'utilisation? Apr 03, 2025 am 12:03 AM

Quelles sont les méthodes magiques de PHP? Les méthodes magiques de PHP incluent: 1. \ _ \ _ Construct, utilisé pour initialiser les objets; 2. \ _ \ _ Destruct, utilisé pour nettoyer les ressources; 3. \ _ \ _ Appel, gérer les appels de méthode inexistants; 4. \ _ \ _ GET, Implémentez l'accès à l'attribut dynamique; 5. \ _ \ _ SET, Implémentez les paramètres d'attribut dynamique. Ces méthodes sont automatiquement appelées dans certaines situations, améliorant la flexibilité et l'efficacité du code.

See all articles