des conseils de carrière pour un doctorant cherchant à programmer? [fermé]


13

Je suis en grande partie un programmeur autodidacte. En fait, j'ai commencé à programmer à mi-chemin de mes études de biophysique, et même si je pense avoir fait du bon travail, je n'ai jamais fait partie d'une équipe de développement `` sérieuse '' qui en avait plus d'un ou deux. d'autres développeurs (et je n'hésiterais pas à les appeler également inexpérimentés en développement de logiciels en tant que profession).

Après avoir terminé mon doctorat, je me suis concentré sur la programmation, officiellement en tant que post-doctorant, mais officieusement en tant que programmeur de recherche. Pendant ce temps, j'ai également eu deux entretiens chez Google, mais pas une offre réelle. Dans l'état actuel des choses, j'ai mis des racines et je n'aurais probablement pas pu prendre le travail de toute façon. Femme au foyer + emploi très bien rémunéré, etc. Cela fait environ trois ans, et mon évaluation honnête est que j'ai appris une tonne de plus, mais j'ai vraiment besoin de plus d'un groupe de pairs pour maintenir ou accélérer ma croissance. Le problème est, chaque fois que je regarde, la plupart des offres d'emploi ont des exigences qui semblent incroyablement grandioses et j'hésite à postuler. Cela, ou le travail / projet semble incroyablement terne.

Je soupçonne que la plupart des gens sont beaucoup moins réalistes que moi quand il s'agit d'évaluer le temps qu'il leur faudra pour se mettre au courant, ou qu'ils s'en moquent; ma crainte est que je ne suis absolument pas qualifié pour tout travail de développeur intéressant et bien rémunéré. IE: Je suis convaincu que je pourrais repasser complètement en mode C ++ avec quelques semaines de travail (j'utilise principalement C, Python, C # quotidiennement) mais je ne me considère pas comme étant "compétent" en C ++ sur mon CV ou en postulant pour les emplois qui «nécessitent» une telle connaissance. Les quelques candidatures pour lesquelles j'ai senti que j'étais un bon match légitime n'ont pas suscité de réponse.

Je soupçonne que les choses suivantes sont des problèmes potentiels avec ma candidature / mon CV et j'aimerais avoir des commentaires:

Je n'ai pas de diplôme CS. Mon BS était en biochimie et biologie moléculaire, mon doctorat en biophysique. J'ai suivi des cours d'algorithmes de premier et de deuxième cycle et je les ai complètement tués, mais je ne sais pas comment traduire cela efficacement dans mon CV (la différence entre obtenir un A + et fumer tout le monde dans la classe).

J'ai un doctorat, mais ce n'est pas en CS ... J'ai débattu si je devais le retirer de mon CV, et qu'il serait alors trompeur de répertorier au moins certaines de ces années comme une sorte de 'programmation' 'travail (à bien des égards, il était).

Je pense qu'il y a parfois de forts stigmates associés aux programmeurs «autodidactes». J'en fais certainement partie. Je reconnais même que certains de ces stigmates contiennent un soupçon de vérité, mais je veux vraiment être un atout pour une équipe. Comment puis-je communiquer que même si je suis en grande partie autogéré depuis environ 8 ans, je peux toujours prendre des ordres de marche en cas de besoin? Dois-je simplement le dire franchement?

Dois-je simplement devenir beaucoup moins scrupuleux sur l'ensemble du processus? anecdote: J'ai un ami qui a postulé pour des postes où il a complètement truqué ses qualifications pour dépasser le premier abattage. Il était beaucoup plus honnête et ouvert à propos de ses qualifications réelles lorsqu'il a été contacté et il a quand même réussi à être invité à quelques entretiens et a même reçu des offres. Ses balles sont cependant plus grosses que les miennes.


J'admire la ténacité de postuler à Google sans expérience! Mais malheureusement, nous devons tous commencer au bas de l'échelle. La principale raison pour laquelle un employeur peut ne pas vouloir de doctorat est que, généralement, ils sont considérés comme plus théoriques que pratiques (scientifiques, pas ingénieurs). Il s'agit de faire avancer les choses, vous devez donc prouver d'abord que vous pouvez le faire.
Personne le

1
Je m'en doutais, malheureusement je pense qu'il y a une idée fausse interdisciplinaire. Je dirais que la plupart des gens n'obtiennent pas leur doctorat en biosciences sans planifier avec succès le travail, faire le travail et communiquer le travail. Et une partie de «faire le travail» signifie se salir les mains: les équivalents du monde de la programmation du codage, du débogage et du réglage. J'ai l'impression que c'est similaire à «Getting Things Done» est le sens que vous vouliez dire. Maintenant, comment communiquer cela sur un CV sans paraître pédant, condescendant ou arrogant m'échappe ...
C SD

1
Quelle est votre définition du fond? J'aimerais faire plus que ce que je fais maintenant, mais ma plus grande motivation est que je veux en savoir plus, plus rapidement et dans le cadre d'un effort plus important. Je fais actuellement environ 45k en tant que programmeur non officiel (postoc) et mes perspectives d'avenir si je reste à ce titre ne sont pas les meilleures, mais est-il déraisonnable pour moi de penser que le `` bas '' n'a pas à payer moins ET être moins intéressant?
C SD


Si vous avez eu des entretiens avec Google dans le passé, votre manque de diplôme CS ne vous empêche probablement pas de travailler là-bas ou ils ne vous auraient pas interviewé en premier lieu. Contrairement à de nombreuses entreprises, Google donne une "deuxième chance" si au moins un an s'est écoulé. Nous sommes en pleine embauche en ce moment.
Uri

Réponses:


12

Comment dois-je dire ceci: les programmeurs viennent un centime, mais les programmeurs ayant une expérience biophysique sont probablement très rares. Donc, si j'étais vous, j'essaierais d'abord de trouver un emploi dans votre domaine, un emploi où la programmation fait partie de la description de travail (ou en faire une partie de la description de travail). De cette façon, vous développerez des compétences beaucoup plus compétitives et uniques que celles du développeur moyen, ce qui pourrait éventuellement vous décrocher un excellent travail.

Lorsque vous planifiez votre carrière, vous ne devez pas seulement regarder l'année prochaine, pensez à cinq à dix ans à long terme. Si la programmation est quelque chose que vous aimez mais que vous n'avez peut-être pas d'éducation formelle, vous devez tirer parti de vos autres compétences pour décrocher l'emploi que vous souhaitez.


2
Trouvez une entreprise qui fait du travail en biophysique, mais aussi de la programmation.
Alex Feinman

2
Tout à fait d'accord. Être capable de parler de deux domaines est fondamentalement une compétence rare. Tirez parti de cette compétence pour faire quelque chose de génial.
Paul Nathan


bon conseil. Je suppose que ce que vous me dites, c'est que je ne suis pas réaliste. J'avais espéré trouver du travail sur un projet public de grande envergure. Des choses comme WebKit, StreetView / Earth, Photosynth, LLVM, btrfs, packages de retouche photo: Photoshop, Lightroom, Aperture. Le travail de biophysique impliquant la programmation a tendance à être plus ce que je fais déjà, c'est-à-dire de petites équipes, un processus aléatoire ... mais je vais juste regarder plus loin.
C SD

1
@C SD - Non, vous ne pourrez pas faire partie d'une grande équipe et la diriger. Être un doctorat est ce que devrait vraiment être votre position, mais vous n'avez pas encore les côtelettes pour cela. Et ce que vous devez faire, c'est passer d'un bio-physicien en programmation à un programmeur travaillant sur des projets de bio-physique. Si vous trouvez un programmeur senior fort, voyez s'il vous guidera. Utilisez votre diplôme en biophysique pour soutenir votre programmation au lieu de la laisser vous définir.
SoylentGray

2

Tout d'abord, apprenez à vous concentrer. Sérieusement. Les longues histoires complexes doivent être modifiées.

Je n'ai pas de diplôme CS.

Pas plus qu'une fraction substantielle des programmeurs qui travaillent. Dans les grands magasins informatiques, il existe un bon nombre de diplômes associés.

J'ai un doctorat, mais ce n'est pas en CS ... Je me demande si je devrais le retirer de mon CV,

Non. Dans l'industrie, n'importe quel diplôme est ce qui est important. Encore une fois, pour les emplois d'entrée de gamme où vous pouvez acquérir de l'expérience, c'est-à-dire la boutique informatique d'une compagnie d'assurance, vous êtes en concurrence avec des enfants titulaires d'un diplôme d'associé.

Je pense qu'il y a parfois de forts stigmates associés aux programmeurs «autodidactes».

Quelle? La plupart des informaticiens avec qui j'ai travaillé sont autodidactes parce que leurs entreprises sont trop bon marché pour faire appel à des instructeurs pour les nouvelles technologies.

Il suffit de postuler pour chaque travail de programmation. Plus vous postulez, plus vous comprendrez ce qu'ils recherchent.

Un grand magasin informatique dans une compagnie d'assurance maladie aléatoire sera parfaitement heureux d'avoir quelqu'un qui est raisonnablement intelligent et connaît la technologie même s'il est autodidacte.

Étant donné que la plupart (plus de la moitié) des programmeurs qui travaillent n'ont (a) aucun diplôme utile et (b) sont autodidactes dans une ou plusieurs des technologies qu'ils devraient utiliser, vos préoccupations sont entièrement un gaspillage de main-tordue.

Si vous voulez avoir l'air plus professionnel, commencez à lire plus de code. Commencez par des projets open source qui vous intéressent et procédez à une rétro-ingénierie complète de la base de code afin de voir quelles sont les meilleures pratiques.

En outre, étant donné le choix, la plupart des magasins informatiques sont invités à embaucher des gens ayant des "connaissances commerciales" au lieu de compétences technologiques. Donc, si vous avez la plupart d'un doctorat dans un sujet aléatoire (sérieusement, votre question était si longue et décousue ...) alors concentrez-vous sur cette industrie.


Désolé, c'était trop long. Je pensais que je mettrais les bits les plus importants en haut et en bas pour faciliter les analyses rapides. Mon expérience concernant les diplômes a été tout à fait le contraire ... Joel S. a même un ancien post sur la façon dont les doctorats CS sont "surévalués" ... J'hésite à juger sa valorisation de ceux de domaines complètement différents.
C SD

Pouvez-vous lier le post de Joel?
Andrea

joelonsoftware.com/articles/GuerrillaInterviewing3.html partie la plus pertinente: les gens qui sont intelligents mais qui ne font pas avancer les choses ont souvent des doctorats et travaillent dans de grandes entreprises où personne ne les écoute parce qu'ils sont complètement impraticables. Ils préfèrent réfléchir à quelque chose d'universitaire sur un problème plutôt que d'expédier à temps. -------------------- pour le mettre en contexte, ses critères réels sont exacts et n'ont rien à voir avec les diplômes, mais il révèle un biais clair, même si c'est, certes, humoristique.
C SD

J'ajouterai également que d'autres personnes (loueurs) m'ont dit qu'avoir un diplôme plus élevé peut vous faire monter ou monter, mais cela peut également placer la barre plus haut. Je voudrais énumérer mon diplôme car j'ai travaillé dur pour cela, et je pense qu'il montre de bonnes qualités (et pas nécessairement l'éducation), mais si une personne des ressources humaines voit les lettres et pense "nous devrons le payer à moins X, et il n'a même pas un diplôme et des tonnes d'expérience pertinentes? ERRRRRRR "
C SD

@C SD: "si une personne des ressources humaines voit les lettres et pense ..." Vous n'avez aucune preuve. Vous pouvez arrêter de vous tordre la main maintenant. Jusqu'à ce que quelqu'un vous le dise, considérez que c'est moins qu'une rumeur et plus une légende urbaine.
S.Lott

1

La vérité est que vous devrez probablement assumer un de ces emplois "incroyablement ennuyeux" afin de mettre un pied dans la porte. Mais une fois que vous avez 6-12 mois en tant que programmeur travaillant sur votre CV, vous devriez pouvoir avancer et monter assez rapidement.


0

Je crois fermement que la programmation est un art et qu'elle vient de la pratique plutôt que des diplômes.
Oui, c'est assez décourageant que souvent les organisations, en particulier les grandes (comme Google), sous-estiment les programmeurs autodidactes car ils n'ont pas de diplômes supérieurs. Vous parlez comme une personne avec un fort niveau de patience et je ne me considère pas suffisamment qualifié pour vous conseiller mais je voudrais mentionner quelques points qui pourraient vous aider:
1. Essayez dans de petites organisations où ils préfèrent le talent.
2. L'Open Source est la plateforme pour montrer votre talent, acquérir de réelles connaissances en développement.
3. Certifications: Il existe différentes certifications de programmation offertes par des géants comme MS, Oracle, etc. en les ajoutant certainement à votre CV, vous donnerez un avantage à votre programmation.
Bonne chance! :)


Merci pour le conseil. En particulier, le numéro 2 semble bon, car j'utilise beaucoup de projets OSS et j'examine même beaucoup de code dans ceux que j'utilise. Je devrais vraiment contribuer à certains d'entre eux, mais au bout du compte, le fait d'avoir à prendre en charge les diverses demandes de logiciels d'un laboratoire de 15 personnes me laisse pratiquement seul avec peu de temps pour gagner en notoriété grâce à la participation. Peut-être que la réponse est alors d'essayer # 1 avec l'espoir de pouvoir aussi faire # 2. retour au monstre ...
C SD

Vous êtes les bienvenus et bonne chance! :)
Ranger

Les personnes autodidactes ont tendance à avoir appris de manière non systématique et ont souvent de grandes lacunes dans leurs connaissances. Une personne diplômée est généralement le choix le plus sûr. De plus, un diplôme montre un certain niveau de détermination et la capacité de terminer quelque chose. Ce n'est peut-être pas juste pour l'individu, mais il y a des raisons d'embaucher des diplômés.
David Thornley

Je suppose donc que cela signifie qu'être autodidacte ET avoir le mauvais diplôme pourrait en fait être pire que l'un ou l'autre seul?
C SD

@David Thornley, pour avoir atteint l'amour de la sagesse avec les mérites - il n'y a pas de meilleure preuve de détermination. Je préfère arbitrer ce que quelqu'un a accompli ou peut faire avec ses connaissances, pas d'où ni comment il les a obtenues. Les choses importantes à propos de chaque individu, comme le dirait Heinlein elise.com/quotes/a/heinlein_-_specialization_is_for_insects.php .
Filip Dupanović

0

J'ai aussi travaillé comme post-doctorant. Si vous le pouvez, prenez des cours de CS à votre université. Très probablement, vous ne pouvez pas suivre officiellement les cours car vous n'êtes pas un étudiant payant, mais vous pouvez demander à l'instructeur et aux assistants de classe si vous pouvez vous asseoir sur le cours et faire les projets. Vous ne noterez pas vos devoirs, mais allez aux heures de bureau et utilisez les ressources.

Pourquoi voudriez-vous faire ça? Il y a des cours que l'on ne peut apprendre seul sans assister à une bonne conférence et poser des questions de manière interactive. Je suggère de prendre des cours pour:

  • algorithmes
  • structures de données (parfois combinées avec une classe d'algorithmes; sinon, généralement la deuxième classe de programmation offerte par votre université) *
  • mise en réseau (en particulier programmation de socket TCP / IP) *
  • bases de données (utilisation SQL notamment)
  • systèmes d'exploitation *
  • langages de programmation (généralement une enquête sur les langages de programmation)

L'astérisque * indique que ce sont généralement des classes à forte programmation, donc elles aideront votre capacité de programmation globale.


0

Se détendre! Nos œuvres publiées les plus populaires sont écrites dans un récit. Nous ne jugeons pas en fonction des mérites académiques ou de leur absence. Nous sommes à propos du groupe scientifique le plus ouvert et le plus aveugle qui soit. Être capable de contribuer avec quelque chose d'utile est tout ce qui est important.

Prenez le point n ° 2 de @ Ranger. Vous n'avez pas à vous impliquer dans un grand projet open source si vous n'en avez pas le temps. Vous pourriez simplement écrire une petite bibliothèque. Les employeurs adorent lorsque vous les approchez avec un référentiel public où ils peuvent examiner une partie de votre travail - ils peuvent immédiatement évaluer que vous pouvez suivre les directives de style communautaire, que vous pouvez lire le code des autres et que vous pouvez écrire du code isolé, compressible , distribué et sous contrôle de révision. La plupart des étudiants diplômés CS ne peuvent même pas faire cela, alors parlez des lacunes dans leurs connaissances.

En fin de compte, vous êtes déjà passionné par la programmation. Qui ou quoi est là pour vous arrêter?


Je suppose que cela signifie que vous travaillez chez Google? Je ne m'attendais vraiment pas à recevoir une offre lors de la première entrevue là-bas, j'ai été un peu plus déçu la deuxième fois, mais pour être honnête, je n'aurais pas accepté le poste puisque je suis maintenant fortement enraciné. Juste déçu, je n'ai même pas réussi à obtenir une réponse de certaines de mes autres candidatures, sans parler d'une interview. Je n'ai pas soumis beaucoup de candidatures, mais je les ai soigneusement choisies car je pensais qu'elles seraient un bon match.
C SD

Nous sommes tous des spécialistes des fusées sur papier, non? Je pense qu'ils ne sont généralement pas impressionnés par vos expériences de travail passées, à moins que vous ne leur fournissiez quelque chose de physique à réviser. La plupart d'entre nous n'ont pas fait de travaux révolutionnaires à la NASA ou à Google. Ce serait crédible, car tout le monde peut comprendre le type de travail qui s'y déroule. Vous devez donc montrer vos compétences, pas seulement en parler. Mettez un code QR qui les atterrit sur la page de vos projets. Faire quelque chose de différent. Faites-vous une distinction dans la flaque de Bill et Jane des candidats. Je ne travaille pas chez Google, mais c'est ainsi que je postulerais.
Filip Dupanović
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.