Déplacer votre carrière vers un autre langage de programmation [fermé]


21

Je vais aller droit au but. Je suis à la recherche de conseils sur la façon dont un développeur expérimenté pourrait convaincre un employeur potentiel qu'il devrait être considéré pour un poste utilisant une autre langue. C'est avec d'autres exigences non spécifiques à la langue étant rencontrées (connaître le contrôle de version, OO, degré, etc ...). Par exemple, un développeur PHP expérimenté cherchant à passer à une position Perl. Est-ce même possible? Quelle serait la difficulté? Cela dépend-il de la langue?

EDIT: Les réponses que j'ai obtenues sont la preuve que l'avenir de cette communauté est vraiment brillant, mais malheureusement cela ne me permet de sélectionner qu'une seule réponse. Merci à tous ceux qui ont répondu.


7
langue! = carrière; carrière == développeur
Steven A. Lowe

Réponses:


18

Parlant comme quelqu'un qui a donné des interviews.

Être honnête

Faites-leur savoir que vous changez de piste et dites-leur également combien de temps vous pensez qu'il vous faudra pour accélérer.

Sois enthousiaste

Montrez-leur que vous êtes ravi d'apprendre la nouvelle langue. L'enthousiasme peut compenser l'expérience lorsque vous savez que le développeur va rentrer chez lui et continuer à programmer dans la même langue.

Avoir une compréhension des concepts CS

Une compréhension plus approfondie facilitera le choix d'une nouvelle langue (entre autres).

Montrez que vous connaissez une langue apparentée

Apprendre Ruby une fois que vous savez que Perl n'est pas un grand saut. Schéma d'apprentissage lorsque vous savez seulement que C est un énorme bond en avant.

Montrez que vous connaissez déjà 3 langues

Plus vous connaissez de langues, plus elles sont faciles à apprendre jusqu'à ce qu'il s'agisse d'apprendre les idiomes plus que la syntaxe.


C'est une excellente information à obtenir, en voyant un candidat potentiel du côté des gestionnaires d'embauche.
canadiancreed

20

Un programmeur expérimenté devrait être capable de maîtriser n'importe quel langage de programmation, en plus de tout outil de programmation raisonnable. Si vous souhaitez passer à une nouvelle langue, lisez simplement un livre ou deux à votre rythme, pratiquez-le chez vous, puis envoyez un CV comme tout le monde.


4
Je ne l'achète pas. Il faut du temps pour apprendre les bibliothèques fournies avec une langue. Un débutant c ++ pro / php sera-t-il aussi bon qu'un vétérinaire php de 10 ans? De plus, passer d'un langage géré en mémoire à un autre n'est pas beaucoup plus difficile que l'inverse.
Neil McGuigan

9
@NRM, pourquoi voulez-vous " apprendre " les bibliothèques? Il y a toujours une référence disponible, vous ne devriez pas encombrer votre cerveau avec des choses aussi peu importantes que les API.
SK-logic

4
@NRM Mauvais exemple. C ++ => PHP devrait être une transition presque triviale. Maintenant, essayer cela dans l'autre sens est difficile.
Konrad Rudolph

1
@NRM - bien sûr, un "débutant" ne sera pas aussi bon qu'un "vétérinaire" de 10 ans. Cependant, il existe de nombreux emplois pour les "débutants". C'est de là que viennent les vétérinaires.
davidhaskins

1
Le problème ici est de convaincre l'employeur éventuel que vous pouvez changer de langue, en particulier en obtenant des ressources humaines, qui a juste une demande qui dit "au moins 37 ans d'expérience Java" ou quelque chose de tout aussi stupide.
Fred Larson

8

Divulgation complète: je n'ai pas essayé cela moi-même

Il me semble que vous auriez besoin d'une stratégie en deux parties pour que cela fonctionne. Tout d'abord, vous devez mettre le pied dans la porte pour une entrevue. Cela signifie passer outre tout CV et filtres RH. De toute façon, vous pouvez travailler le nouveau mot-clé de langue dans votre CV sans mentir (par exemple, en contribuant à un projet open-source). Une fois que vous obtenez un entretien, vous devez prouver au responsable du recrutement que ...

  • vous pouvez parler intelligemment sur la nouvelle langue (surtout si vous n'êtes pas encore un expert)
  • vous êtes capable de prendre rapidement de la vitesse afin de ne pas retarder vos collègues

Je pense que tout programmeur suffisamment talentueux dans n'importe quelle langue devrait être capable de s'en sortir avec assez de patience. Vous aurez besoin de la bonne opportunité dans la bonne entreprise avec les bonnes circonstances pour être embauché pour une nouvelle langue. Donc, en bref, tout comme être embauché pour un travail normal. :-)


7

Pendant environ 25 ou peut-être même 30 ans, j'ai dû apprendre de nombreuses nouvelles langues. Tellement maintenant que j'ai perdu le compte. Voici une liste approximative.

SI je vais loin, très loin ...

Assembleur 8080, Z80, 6502, 8086, 80286.

BASIC (environ 6 variétés).

APL (oui)

PL / 1

FORTRAN 4 et 77

COBOL (croyez-le ou non)

PASCAL (plusieurs variétés dont Delphi)

OCCAM2 (tas de plaisir - création de processus instantanée)

C (beaucoup de compilateurs, beaucoup de processeurs, beaucoup de variantes étranges)

C ++

Ada (gros systèmes mais aussi systèmes embarqués)

Un peu de Perl juste pour le plaisir

PHP

Ceux-ci ont été utilisés sur toutes sortes de machines - petits systèmes embarqués, cartes de développement, ordinateurs centraux IBM exécutant TSO, VAX / VMS, CP / M, DOS, Windows, Solaris, Linux, systèmes embarqués sans système d'exploitation, environnements de développement hébergés à distance, sur et sur la liste va.

Et il y a quelques choses plus obscures jetées le long du chemin dont je ne me souviens pas (ou je ne veux pas ... PL / M).

Chacun de ces éléments devait être appris, car cela faisait partie de la réalisation d'un travail. Dans la plupart des cas, je n'avais aucune expérience préalable, juste un manager tolérant et une volonté de me lancer et de faire le travail.

Si apprendre quelque chose de nouveau vous intéresse, alors achetez un livre, jouez, faites des choses à votre rythme. Si vous allez pour un poste, il semble bon sur un CV que vous l'avez fait parce que vous êtes intéressé.

Comme l'a souligné l'une des autres réponses, la plupart du temps, les concepts pour faire des choses traditionnelles ne changent pas beaucoup, seulement les moyens de les exprimer. (Ou bien sûr, vous pouvez entrer dans des langages très inhabituels qui ne sont ni OO ni procéduraux et cela nécessite un changement de mentalité.)

Si vous avez la chance de faire quelque chose d'un peu hors de l'ordinaire dans le cadre de votre travail, saisissez la chance pendant que vous le pouvez. La plupart des choses énumérées ci-dessus que je n'ai pas utilisées depuis des années et que je ne vais probablement pas utiliser à nouveau, mais on ne sait jamais. Un jour, j'aimerais vraiment construire une machine APL microcodée :)


4

À titre d'anecdote personnelle, j'ai été embauché pour un poste Java en montrant une démo basée sur PHP. - apprendre les concepts complets, ce serait comme utiliser un stylo au lieu d'un crayon (vous avez compris l'idée?).

Je crois que ce qui est vraiment très important, c'est de montrer que vous avez un bon développement logiciel, des concepts CS et des compétences en communication, que vous cherchez des solutions aux problèmes même les plus difficiles, que vous voulez aider vos collègues, automatiser et simplifier leur travail et surtout (pour moi du moins) que vous êtes humble et admettez que vous ne savez pas tout et que vous êtes prêt à en apprendre davantage.

(Totalement abusé du mot "ce" ..)


3

Je n'ai jamais occupé qu'un seul emploi où je connaissais déjà le langage de développement principal, alors oui, ce n'est pas seulement possible, j'ai toujours supposé qu'il était courant.

La chose à retenir est que c'est la seule langue parmi les nombreuses langues et technologies qu'ils utilisent probablement. SQL est SQL. Peu importe si vous le faites en python ou en perl. Et la configuration du serveur DB n'est même pas liée à la langue. HTML est HTML, peu importe qu'il soit généré par PHP ou ASP. Même chose avec XML. Les sockets sont des sockets, ils fonctionnent essentiellement de la même manière dans toutes les langues. OpenGL fonctionne de la même manière en Delphi qu'en C ++. La syntaxe spécifique n'est qu'une petite partie de l'image lorsque vous regardez le développement dans son ensemble. Certaines de ces compétences sont d'énormes sujets en soi et beaucoup plus difficiles à apprendre qu'une nouvelle langue.

Le point est de se concentrer sur les compétences. Bien sûr, vous ne connaissez peut-être pas leur principale technologie de développement, mais ce n'est qu'une pièce du puzzle. Mais il est probable qu'ils utilisent également d'autres technologies et systèmes d'exploitation que vous connaissez.


1

Vous aurez du mal à entrer dans la porte si vous n'avez pas les acronymes d'écriture sur votre CV. Si vous voulez changer, passez du temps sur des projets personnels pour l'apprendre assez bien puis mettez-le en évidence.


1

C'est certainement possible. Je viens de commencer un travail où je travaille en rubis, javascript et c'est parti. Avant de commencer, je n'avais pas beaucoup d'expérience avec aucune de ces langues.

Je pense que la clé de mon succès ici était que dans l'intervalle entre la réponse initiale et l'entretien, je me suis assuré que je connaissais suffisamment de rubis (leur langue principale) pour comprendre et écrire du code du monde réel. Je pense que cela a également aidé que je connaissais Python et C qui sont assez similaires à ruby ​​and go.


1

La société pour laquelle je travaille n'a pas cherché de "programmeurs C #". Tout bon programmeur ferait comme il peut apprendre une langue en un rien de temps.

Si vous embauchez des programmeurs avec l'idée qu'ils restent quelques années, je ne peux vraiment pas voir cela comme un problème, ils ont beaucoup de temps pour apprendre les tenants et les aboutissants de la langue. S'ils partent après un an, c'est probablement une perte de temps.


0

À mon humble avis, tous les programmeurs ne réagissent pas de la même manière. La langue est la religion ;-)

Dans mon expérience personnelle, j'aime apprendre une nouvelle langue mais il s'agit d'aimer ou de haïr très rapidement. Je peux tomber amoureux d'une nouvelle langue le premier jour la connaît et l'utiliser pour les années à venir. J'ai aussi détesté les langages du début jusqu'à maintenant, même des centaines de milliers sinon des millions de programmeurs les utilisent.

Je conseillerais donc de ne pas commander un programmeur homologue dans une autre langue. Au lieu de cela, bavardez sur la préférence linguistique pendant la bière du vendredi soir, pour découvrir son amour ou sa haine.

  • J'ai intentionnellement omis les noms de langue dans cette réponse ;-)
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.