web-dev-qa-db-fra.com

À quoi dois-je m'attendre de mon premier travail de programmation?

Je viens d'être embauché pour mon premier emploi en programmation! J'ai 25 ans et j'utilise Java académiquement depuis 6 ans.

Maintenant que j'ai été embauché, je crains que mes compétences ne correspondent pas à ce que l'employeur attend. J'ai peur d'être affecté à un projet et je dois poser beaucoup de questions que mes collègues se sentiront amateurs.

Est-ce une peur rationnelle? Quelles ont été vos premières expériences de travail en programmation? À quoi dois-je m'attendre? Quels conseils pourriez-vous me donner?

Merci.

37
Ben B.

Il y en a trop des choses qu'on ne peut pas apprendre au collège. Il y a aussi beaucoup de choses spécifiques à l'entreprise. Dans les deux cas, vous avez le choix:

  • soit vous demandez des explications à vos collègues,
  • ou vous ne demandez rien à personne et vous prenez le risque de faire une erreur.

Si j'engage quelqu'un qui n'a pas d'expérience professionnelle, cela ne me dérangerait pas qu'elle pose beaucoup de questions les premières semaines ou les premiers mois. D'un autre côté, si elle craint de demander de l'aide et perd des heures à résoudre un problème qu'un autre développeur peut résoudre en quelques secondes ou commet des erreurs stupides qui pourraient être facilement évitées par quelqu'un plus ouvert à la communication avec ses pairs, cela me dérangera beaucoup plus.

N'évitez pas les questions. C'est un bon moyen à la fois d'apprendre des choses et de socialiser avec les personnes avec lesquelles vous allez travailler. Mais:

  • Ne posez pas de questions juste pour les poser.
  • N'oubliez pas que d'autres personnes ont leur propre travail à faire et leurs propres délais. Ils ont autre chose à faire que de passer leur temps à vous aider pour chaque tâche.
  • Ne vous attendez pas à ce que d'autres personnes fassent votre travail (tout comme il n'est jamais le bienvenu de demander à Stack Overflow de faire votre travail).
  • Notez que si vous dérangez un développeur, il perd dix minutes ou plus pour se concentrer à nouveau. Alors ne posez pas de questions si vous pouvez trouver une réponse en quelques secondes sur Internet.

Exemple de mauvaises questions:

  • "Hé, je veux créer un tableau comme {1, 2, 3, ... n-1, n} en PHP. Pouvez-vous m'aider?" Ici, vous montrez que non seulement vous ne savez pas comment utiliser la documentation PHP, mais vous ne vous souciez même pas de chercher sur Google ou de réfléchir un instant. vous ne connaissez pas la méthode range en PHP. Ce n'est pas correct si vous ne la trouvez pas vous-même.

  • "J'essaie d'implémenter des plugins, mais je ne sais pas ce qu'est CAS dans .NET Framework. Pouvez-vous m'expliquer ce que c'est?" Oui , il est plus facile de demander des explications, mais qu'en est-il de la recherche Google sur "CAS .NET Framework 4.0" en premier?

  • "Pourquoi me forcez-vous à utiliser le contrôle de version? J'ai toujours travaillé sans et je ne comprends pas pourquoi j'en aurais besoin maintenant." Eh bien, vos collègues n'ont pas à expliquer pourquoi vous devez l'utiliser. Tout d'abord, c'est une ligne directrice de votre entreprise. Vous n'êtes pas ici pour dicter comment travailler. Deuxièmement, il existe de nombreux livres, articles de blog et réponses sur les sites Web SE expliquant pourquoi tout le monde doit utiliser le contrôle de version. Il suffit de chercher.

Exemples de questions bienvenues:

  • "Je veux valider les modifications apportées au contrôle de version, mais il y a un étrange message d'erreur. Il dit: [...]. Peut-être savez-vous ce que c'est?" Il est probable que votre collègue ait déjà vu ce message des dizaines de fois auparavant, il est donc normal de le demander.

  • "Je lis la page 9 des conditions requises pour ce projet, partie 4.2.1, mais je ne suis pas sûr: est-ce à moi ou à l'administrateur de la base de données de faire cette partie? " Il vaut mieux demander, que de passer trois jours pour faire le travail qui est déjà fait par la dba.

  • "J'ai besoin d'implémenter des plugins, mais après avoir lu ceci et cela, je ne comprends toujours pas ce qu'est un bac à sable et comment est-ce lié à la sécurité. Pourriez-vous m'expliquer cela plus tard lorsque vous ' serai-je libre? " Vous avez recherché. Tu as fait un effort. Tu n'as pas compris. Ce n'est pas grave de ne pas tout comprendre, et il vaudrait mieux demander des explications plutôt que de passer un week-end à les chercher.

57
Arseni Mourzenko

"La seule question stupide est celle qui n'est pas posée."

^ Sérieusement. N'oubliez pas cela.

Si vous êtes universitaire depuis 6 ans, je suppose (et en espérant) que vous avez une solide compréhension des concepts d'ingénierie de base. À moins que vous ne vous soyez mis dans une mauvaise situation avec un employeur terrible, ils devraient être conscients qu'être fraîchement sorti de l'école dans votre premier emploi, vous aurez une courbe d'apprentissage devant vous et vous attendez à ce que vous fassiez des erreurs en cours de route .

Si vos compétences ne correspondaient pas à ce que l'employeur recherchait, ils ne vous auraient pas embauché. S'ils vous ont embauché même si vos compétences ne correspondent pas correspondent à ce qu'ils cherchez, alors vous ne voudrez probablement pas y travailler de toute façon.

Plus vous poserez de questions, plus vous vous habituerez rapidement à votre nouvel environnement de travail. Cela dit, les ingénieurs n'aiment généralement pas être constamment mis sur écoute, car il leur faut environ 15 minutes pour revenir dans le cours des choses. Donc, je penserais peut-être à mettre toutes vos questions pertinentes dans un e-mail et à les envoyer à quelqu'un dans le "savoir" à la fin de la journée.

Certaines entreprises vous jumellent avec un mentor, d'autres non.

22
Demian Brecht

Arrêtez de vous inquiéter autant. Personne n'est de classe mondiale leur premier jour.

8
whatsisname

Mon premier travail de programmation a été de reprendre un site Web écrit dans des langues que je ne connaissais même pas. J'étais le seul développeur et je n'avais personne à qui demander de l'aide. J'avais très peur de ne pas durer longtemps (sans les forums, je n'en aurais probablement pas). Alors qu'est-ce que j'ai fait? J'ai posé une tonne de questions sur les forums. Des tonnes. Je me sentais comme si je posais tellement de questions "amateurs" que j'ai fait mon avatar "je suis stupide" (c'est toujours là .. quelque part).

Mon point est que la peur est naturelle mais vous la dépasserez et poserez beaucoup de questions d'amateur. C'est la meilleure façon d'apprendre. Du moins dans mon cas, c'était et c'est toujours le cas.

De plus, lorsque j'étais dans ma formation informatique dans l'armée, ils ont brièvement passé en revue chaque concept et ont dit que "Vous apprendrez votre travail à votre premier lieu d'affectation .. c'est juste pour que vous soyez un peu familier avec ce qui se passe être. "

8
JD Isaacks

Si vous posez des questions stupides, mais ne posez qu'une seule fois, alors vos pairs ne vous détesteront pas. Mais si vous n'apprenez jamais, ils diront à votre patron de vous licencier.

Votre sich est hors de votre contrôle. Soit vous serez avec de bonnes personnes qui voudront que vous réussissiez, soit vous serez avec le mal qui voudra que vous échouiez.

Essayez de ne pas être nerveux et de faire ce que vous pouvez. Et faites beaucoup de travail supplémentaire pour apprendre la langue et les applications de l'entreprise.

2
oregon111

Lorsque vous posez une question, assurez-vous de:

  • Préparez-vous avant de demander
  • Donnez à la personne à qui vous demandez le temps de sortir de la zone
  • Essayez de faire en sorte que l'autre se sente intelligent

http://www.artificialworlds.net/blog/2011/02/12/how-to-ask-technical-questions-in-person/

2
Andy Balaam

Mon premier travail de programmation était dans un langage et un framework/plateforme que je n'avais jamais touché auparavant (Visual C++/MFC, et j'ai été formé en C sous Unix avec un peu de Java).

Morale de l'anecdote: lorsque vous n'avez aucune expérience commerciale, le premier employeur qui vous engage vous considère généralement comme une table rase. En regardant en arrière maintenant, même si j'avais été embauché pour un rôle C sur Unix, 95% + de la courbe d'apprentissage au début de ce premier emploi aurait été beaucoup plus sur les compétences générales, le contrôle des sources, la politique/gestion de bureau, etc. des trucs pour lesquels l'expérience académique ne peut pas vraiment vous préparer. Sur le plan technique, ils s'attendent généralement à ce que vous soyez très instable le premier ou les deux premiers mois - le choc sur le système causé par les seules choses non techniques suffit à distraire. Ils le savent, donc ils n'attendent probablement pas grand-chose.

MainMa a de bons conseils : Essentiellement, essayez de ne pas déranger les gens avec le genre de questions qui sont faciles à Google, et qui devraient venir avec le territoire pour quelqu'un avec 6 ans d'expérience académique. Une bonne règle de base est que les connaissances en programmation générique doivent d'abord être recherchées avant de demander, tandis que les connaissances internes spécifiques à l'entreprise/au domaine sont beaucoup plus sûres de poser des questions après un minimum creusement.

1
Bobby Tables

Je suis également diplômé de l'université et je développe des logiciels professionnellement depuis environ un an maintenant. Vous avez aussi peur des mêmes choses que moi, alors vous n'êtes pas seul. J'ai l'impression d'avoir parcouru ce que vous décrivez ici. Le meilleur conseil que je puisse vous donner est le suivant:

  1. Entourez-vous de personnes plus intelligentes que vous et désireuses de vous encadrer. Soyez aussi poli que possible, lisez dans les gens et déterminez vos alliances. Tout le monde ne sera pas ouvert pour vous aider, mais vous découvrirez facilement qui sont les "bonnes personnes" et celles avec qui vous voudrez être amis.
  2. Posez des questions autant que possible si vous pensez que Google ne peut pas répondre.
  3. Rendez-vous compte que beaucoup ne sont pas allés à l'école depuis un certain temps, et il est probable qu'ils vous considèrent comme un esprit neuf pour les idées. N'ayez pas peur de lancer des idées et n'ayez pas peur d'être en désaccord avec les autres.

C'est une ligne mince, mais vous saurez où la traverser et où non. La meilleure chose que vous puissiez faire est d'être enthousiaste à l'idée d'apprendre et de vous entourer de gens qui en savent plus que vous sur le développement de logiciels.

1
Jack