Sur quoi se concentrer pour développer une démo de jeu pour une interview?

9

Dans d'autres discussions sur ce site Web, il a été souligné à plusieurs reprises qu'avoir une démo de jeu à présenter lors d'un entretien d'embauche est d'une importance capitale, j'ai donc décidé d'essayer et d'écrire ma propre démo de jeu.

J'aimerais savoir ce qui est typique pour les enquêteurs sur lesquels concentrer leur attention lors de l'examen de votre démo de jeu .

Je préciserai que je n'ai pas d'ouverture spécifique à ma disposition en ce moment, mais que je viserais probablement des positions de programmation de gameplay et / ou d'intelligence artificielle . Pour cette raison, je peux répondre par moi-même en termes de grandes catégories: "les graphismes de fantaisie" ne devraient pas être ma priorité tandis que le "comportement des joueurs d'ordinateur" devrait ... Pourtant - n'ayant aucune expérience directe de cette industrie - je voudrais savoir s'il y a des choses moins évidentes, je dois faire attention à:

  • Quelle est l'importance de la modularité du code?
  • Quelle est l'importance de présenter une implémentation d'algorithme typique?
  • Quelle est l'importance d'inclure de nouvelles fonctionnalités?
  • Quelle est l'importance de la jouabilité?
  • Dois-je privilégier la lisibilité du code ou l'optimisation du code?
  • Quelle est l'importance de la documentation du code?
  • etc...

Gardez à l'esprit que les exemples ci-dessus ne sont que des exemples pour illustrer le niveau de détail que j'apprécierais dans la réponse, ils ne sont pas des sous-questions spécifiques que j'aimerais nécessairement aborder (sauf si vous pensez qu'il est pertinent d'en discuter).

Merci d'avance pour votre temps et votre expertise.

Mac
la source

Réponses:

13

N'écrivez pas de démo pour une entrevue si vous pouvez l'éviter; soumettre du code ou des projets existants si vous le pouvez.

Les démos et les exemples de code sont importants pour de nombreuses raisons (qui varient selon le réviseur), mais ils visent principalement à montrer aux employeurs potentiels le type de code que vous écrivez à l'état sauvage et le type de problèmes que vous souhaitez résoudre. Ils aident également à démontrer votre intérêt pour le développement de logiciels.

Il est préférable de soumettre du code que vous avez déjà écrit pour un projet ou un jeu précédent que vous avez écrit et dont vous êtes fier, ou qui démontre une solution intelligente à un problème - tout ce qui est intéressant ou difficile ou qui peut servir de la base d'une bonne discussion.

L'écriture explicite de code à soumettre comme exemple de code a tendance à apparaître comme artificielle et fausse; il peut être étonnamment facile de dire, par exemple, qu'un programmeur pensait qu'un employeur potentiel voudrait voir du code "bien documenté" et ainsi mettre des commentaires vraiment détaillés sur tout, en s'efforçant d'atteindre ce qu'il croit être la perfection. Le vrai code n'est pas parfait, il a des verrues et des bords rugueux, et lorsque vous écrivez du code explicitement pour la soumission de démonstration, vous avez tendance à le polir tellement qu'il devient évident que vous ne l'avez pas écrit parce que vous avez aimé l'écrire. Tu voulais juste un travail.

Cela dit, si vous n'avez aucun travail que vous pouvez soumettre - soit parce que vous n'en avez pas encore écrit soit parce que votre travail précédent vous empêche de soumettre le code (sous NDA) - vous n'avez pas de beaucoup d'options mais pour écrire quelque chose de nouveau. Dans ce scénario, je vous encourage à vous concentrer sur l' écriture de la chose pour elle-même et à oublier ce que les employeurs «veulent». Écrivez un jeu parce que vous voulez écrire un jeu. Écrivez une démo technologique cool parce que vous voulez explorer cette technologie, car c'est ce qui vous intéresse.

  • Quelle est l'importance de la modularité du code?
  • Quelle est l'importance de présenter une implémentation d'algorithme typique?
  • Quelle est l'importance d'inclure de nouvelles fonctionnalités?
  • Quelle est l'importance de la jouabilité?
  • Dois-je privilégier la lisibilité du code ou l'optimisation du code?
  • Quelle est l'importance de la documentation du code?

Les réponses à toutes ces petites questions sont, malheureusement, "cela dépend" (sauf pour la lisibilité - je pense que vous devriez privilégier la lisibilité en général, en particulier pour le "code de démonstration"). Certains employeurs voudront peut-être vous voir réimplémenter le tri rapide. D'autres peuvent ne pas s'en soucier. D'autres vous demanderont simplement de réimplémenter quicksort sur un tableau blanc lors de l'entretien de toute façon.

Ne vous concentrez pas sur ce que vous pensez que les employeurs veulent , car différents employeurs et même différentes personnes qui peuvent réviser votre code voudront des choses différentes. Concentrez-vous plutôt sur ce que vous voulez mettre en valeur sur vous - même , car vous avez beaucoup plus de contrôle sur cela et cela vous sera plus avantageux à long terme.


la source
3
Merci pour cette réponse (+1). Définitivement inattendu dans son contenu (mais peut-être précisément pour cette raison: très utile). Je suis particulièrement heureux car j'ai déjà un projet de jeu pour animaux de compagnie que je voudrais écrire, pour la raison que je voudrais y jouer! :)
mac