Que recherchent les employeurs chez les candidats autodidactes? [fermé]

23

Je suis un programmeur autodidacte sur le point d'entrer sur le marché du travail. Ce que je veux savoir, c'est quelle est la meilleure façon de montrer mon expérience aux employeurs?

Qu'est-ce que les employeurs veulent savoir sur mon expérience en programmation? Les employeurs veulent-ils regarder le code que j'ai écrit ou pourraient-ils voir le logiciel en action? Ou se soucient-ils seulement de la quantité d'utilisation de mon logiciel / de la quantité de revenus générés? Dois-je écrire sur mon style de conception et de programmation?

Mon parcours: J'ai récemment obtenu mon diplôme dans une université où j'ai étudié les langues étrangères, et c'est à cette époque que j'ai découvert que la programmation est ce que je veux vraiment faire. Actuellement, je suis un programmeur de garage, développant un logiciel pour un client à des fins commerciales tout en continuant à m'auto-enseigner, mais mon objectif est de commencer un emploi et une carrière «appropriés». En plus, je vis en Finlande en ce moment, mais je cherche un emploi en Chine ou au Japon (j'ai appris les deux langues en étudiant à l'étranger).

Ano Päivinen
la source
Notez que la plupart des programmes de nos jours se font en équipe (simplement pour se faire) et être capable d'écrire du code sous la forme attendue par les autres est une compétence importante. Vous voudrez peut-être suivre un ou deux cours de programmation dans votre ancienne université, si possible, simplement pour acquérir les compétences de base.
2
"apprendre les compétences de base" - cela ne voulait pas dire que vous ne connaissiez aucune compétence de base, mais qu'il y avait beaucoup à apprendre, et il n'est pas certain que vous les ayez toutes apprises par vous-même.
4
Jetez un œil à ce que tout commandant CS devrait savoir . Il souligne l'importance d'avoir un portefeuille d'expériences git pour montrer aux employés, les compétences Linux / UNIX, divers paradigmes de programmation et bien plus encore. Voir également la matrice de compétences du programmeur et les cours gratuits d'informatique de Coursera .
Anthony
@ AnoPäivinen BTW, ne sous-estimez pas le nombre de personnes autodidactes dans le biz et ne vous découragez pas par ce qui peut sembler d'énormes lacunes que vous aurez au début. J'ai travaillé avec des gens incroyables qui étaient autodidactes.
MrFox

Réponses:

8

Je dirais que les employeurs recherchent ces choses dans tous les candidats programmeurs (cela vient de ma propre expérience en tant que développeur principal qui sélectionne les candidats):

  • Capacité à être flexible et à apprendre rapidement de nouvelles technologies (ceci est particulièrement important pour les programmeurs autodidactes)

  • Capacité à communiquer les problèmes

  • Capacité à résoudre des problèmes algorithmiques et logistiques (important pour les analystes programmeurs)

  • Capacité à se conformer aux normes et aux règles des entreprises locales, c.-à-d. ne soyez pas trop coincé dans vos voies, assurez-vous de suivre les conventions de dénomination de l'entreprise pour laquelle vous travaillez.

  • Honnête et travailleur.

Dans de nombreux cas, les grandes entreprises vous demanderont de fournir un exercice de candidature. Ces exercices varient en difficulté, mais un exemple pourrait être de coder un module réutilisable qui convertit un montant en dollars en une chaîne de texte lisible en anglais qui serait écrite sur un chèque pour ce montant, c'est-à-dire. "999,34 $" à "Neuf cent quatre-vingt-dix-neuf dollars et trente-quatre cents".

Il est important de noter que ce n'est pas seulement le code qu'ils examineront dans ces exercices, mais aussi la documentation qui l'accompagne, c'est-à-dire. doco qui explique les problèmes, les hypothèses et l'algorithme utilisé. Ils examineront également vos conventions de dénomination (principalement la vérification de la cohérence) et la vérification des commentaires clairs du code.

Aaron Murgatroyd
la source
9

Un indice

Sérieusement, je ne recherche que quelques éléments chez un candidat:

  1. capacité de base à programmer
  2. intérêt pour la programmation
  3. compréhension proportionnée à l'éducation et à l'expérience
  4. capacité d'apprendre
  5. la gentillesse

Exemples: diplômé d'un lycée autodidacte qui a résolu 50 problèmes d'Euler: embauche facile. MSCS avec 4.0 GPA qui ne peut pas expliquer la différence entre TreeMap et HashMap: ne pas embaucher.

Kevin Cline
la source
Pouvez-vous expliquer ce que vous entendez par gentillesse? Est-ce une propriété de ne pas être un imbécile?
Ano Päivinen
1
@ AnoPäivinen: Il couvre une gamme de comportements liés au traitement des collègues qui se résument tous à la considération des autres. "Jerk" est défini par le fait de ne pas considérer les autres.
kevin cline
J'étais sur le point de dire que je devrais venir travailler pour vous, en fonction de vos besoins, mais je n'ai aucune idée de ce qu'est une carte d'arbre / de hachage lol. Après trois ans passés à vivre et à respirer le développement de logiciels / web, je suis toujours critiqué lors des entretiens pour des choses dont je n'ai jamais entendu parler. Ça me donne l'impression de n'avoir rien appris. Parfois, je vous jure que vous inventez tous ces trucs. Soit ça, soit je n'apprendrai vraiment rien avant d'être embauché.
Josh Campbell
@Josh: obtenez une copie de "Introduction aux algorithmes". N'importe quelle édition.
kevin cline
1
@papercuts: Si vous postulez pour des stages, je pense qu'il serait raisonnable de mentionner que vous avez résolu n problèmes Euler, où n> 20. Votre objectif avec un CV est de recevoir un appel. Les informations qui montrent une certaine capacité à programmer ne feront pas de mal.
kevin cline
3

D'autres ont déjà répondu à votre question directe sur les candidats autodidactes. Cependant, il y a une autre considération qui peut être encore plus importante que d'être autodidacte ou non. Je parle des cultures des pays dans lesquels vous prévoyez de travailler et de vivre.

Tout d'abord, n'écrivez jamais «emploi en Chine ou au Japon» . Cela ressemble à "la Finlande ou l'Australie" (sans infraction). Ils sont totalement différents et vous devez choisir.

En outre, l'emploi dans un autre pays signifie généralement des impôts plus élevés pour une entreprise, diverses limitations (par exemple, embaucher un étranger, embaucher N autochtones), etc. Donc, pour être embauché en Chine, vous devez être vraiment bon dans ce que vous faites .

En fait, vous avez deux meilleures options:

  • Diplômé dans un pays de votre avenir. Cela vous donnera (a) une connaissance des normes nationales; b) contacts commerciaux; (c) diplôme officiel (qui peut être plus important que vous ne le pensez). De même, partout ailleurs, les grandes entreprises contactent les universités pour trouver les étudiants les plus éminents, et vous avez de bonnes chances d'être celui-là.
  • Postulez auprès d'une entreprise multinationale ayant des succursales en Chine. Vous pouvez parler avec les RH et accepter de travailler sur un poste local pendant un certain temps, puis déménager au sein de la même entreprise (moins de paperasse). Ayant une formation linguistique et culturelle, ce serait plus facile pour vous. Et, au moment du déménagement, vous aurez déjà une expérience informatique pratique dans l'entreprise.
bytebuster
la source
Merci pour la perspicacité! Cela peut sembler étrange que je décide entre la Chine (Shanghai) et le Japon, ils sont très différents mais je les aime vraiment tous les deux. Mais je ne peux pas encore décider lequel est le meilleur, alors je vise les deux et je vois ce qui se passe. Je me demande si ça a du sens!
Ano Päivinen
Vous pouvez les aimer tous les deux. Assurez-vous simplement que vos candidatures sont spécifiques aux marchés de l'emploi chinois et japonais. Peut-être que différentes lettres de motivation seraient également utiles, comme dans cette réponse .
bytebuster
2

Qu'est-ce que les employeurs veulent savoir sur mon expérience en programmation?

Surtout, que vous en avez. Mettez-vous à leur place: si vous recrutiez quelqu'un, choisiriez-vous le gars qui ne sait pas quoi faire avec un compilateur, ou le gars qui a fait le tour du bloc plusieurs fois, a appris à résoudre des problèmes et peut en obtenir travail utile fait sans beaucoup de main dans la main?

Les employeurs veulent-ils regarder le code que j'ai écrit ou pourraient-ils voir le logiciel en action?

Oui. Avoir du code à afficher peut être utile. Avoir un produit fonctionnel à montrer et être prêt à répondre à des questions sur son fonctionnement, pourquoi vous l'avez fait de cette façon, etc. peut également être utile. Différents employeurs valoriseront ces choses différemment, mais il est toujours préférable d'avoir quelque chose que de ne rien avoir.

En plus, je vis en Finlande en ce moment, mais je cherche un emploi en Chine ou au Japon (j'ai appris les deux langues en étudiant à l'étranger).

Il y a beaucoup de gens en Chine et au Japon qui parlent respectivement le chinois et le japonais. Probablement pas autant de personnes parlant couramment l'anglais et le finnois. Utilisez cette force à votre avantage - recherchez les entreprises qui ont besoin de ces compétences linguistiques.

Caleb
la source
3
"Mettez-vous à leur place: si vous embauchez quelqu'un, choisiriez-vous le gars qui ne sait pas quoi faire avec un compilateur" - Pour de nombreuses entreprises, cela dépend entièrement de leur bon marché.
pdr
2

Je dirais que les compétences les plus importantes que les programmeurs autodidactes pourraient manquer sans le savoir sont celles liées au génie logiciel et à l'architecture logicielle.

Assurez-vous d'en savoir plus que d'écrire du code, assurez-vous de savoir ce qu'est la maintenabilité et comment y parvenir; ce qui est SOLIDE, pourquoi est-il considéré comme bon et nécessaire; modèles de conception, etc.

Essayez également de corriger toute mauvaise partie de votre processus. Par exemple: tests automatisés (quelque chose que tout le monde devrait faire!), Suivi des bogues, contrôle de révision des sources (également obligatoire). Cette liste n'est pas censée inclure tout, c'est juste un exemple.

K.Steff
la source
2
C'est ce que je trouve normalement manquant dans les diplômes CS! Possibilité de réciter l'O (n) pour différents conteneurs mais n'ayant jamais utilisé de débogueur.
Martin Beckett
2

Qu'est-ce que les employeurs veulent savoir sur mon expérience en programmation? Les employeurs veulent-ils regarder le code que j'ai écrit ou pourraient-ils voir le logiciel en action?

Oui, ce sont les meilleures options. Les qualifications ne sont pas un indicateur particulièrement bon de la capacité à écrire du code. Il en va de même pour les employeurs précédents - de nombreuses personnes peuvent se faufiler dans un travail pour lequel elles ne sont pas adaptées. Je veux voir quel type de code vous écrivez et un historique de la possibilité de construire des choses qui ont été mises en production.

Ou se soucient-ils seulement de la quantité d'utilisation de mon logiciel / de la quantité de revenus générés?

Cela ne fait pas partie de votre domaine de responsabilité, je m'en fiche de ce genre de choses, sauf si vous optez pour un poste de chef de projet ou plus.

Dois-je écrire sur mon style de conception et de programmation?

Pas trop, mais peut-être que des puces montrant les zones d'intérêt avec vos exemples de code seraient utiles.

Jim
la source
OK, je me soucierai moins de la façon dont mon logiciel finit comme aux mains du client et je me concentrerai sur sa bonne écriture.
Ano Päivinen
2

Compétences d'auto-apprentissage

Oui, l'auto-apprentissage est votre compétence compétitive de pointe que vous devez souligner et présenter avec fierté. De plus, vous devez montrer votre passion pour la programmation et votre désir de vous améliorer.

Qu'est-ce que les employeurs veulent savoir sur mon expérience en programmation? Les employeurs veulent-ils regarder le code que j'ai écrit ou pourraient-ils voir le logiciel en action?

Ils veulent voir vos réalisations et vos capacités de raisonnement analytique. Ils veulent voir - ce que vous avez fait qui a profité au projet, quel (s) rôle (s) vous avez joué dans la réalisation d'un projet si vous avez travaillé en équipe. Comment résoudre les problèmes et surmonter les problèmes techniques. Comment vous avez travaillé avec les collèges, comment vous avez géré la pression au travail.

Quelques autres points qui pourraient être très importants pour les employeurs:

  1. Bonne attitude
  2. Passion pour la programmation
  3. Expérience en informatique - pour voir que vous comprenez les bases du fonctionnement des ordinateurs et des logiciels
  4. Éthique du travail et compétences générales
  5. Capacité d'apprendre et de s'améliorer
  6. Histoire de l'éducation
  7. Expérience professionnelle antérieure
  8. Absence de notions préconçues
  9. Capacité à poser des questions - Oui, posez des questions plutôt que de faire des hypothèses.
EL Yusubov
la source
1

En plus des autres réponses - énumérez les outils que vous avez appris pendant que vous vous enseigniez.

J'ai formé des diplômés d'écoles de renom avec des diplômes de grand nom qui ont insisté pour écrire du code Java dans le bloc-notes Windows et utiliser le compilateur en ligne de commande (`` c'est mieux comme ça '' - pour un programme d'une classe). La plupart des lieux de travail utilisent des IDE et d'autres outils de programmation. Et leur apprendre à utiliser Eclipse était plus facile que d'essayer de leur enseigner SVN.

En répertoriant un ou plusieurs environnements IDE ou (plus important encore) un ou plusieurs outils de référentiel de code, vous montrerez que vous êtes prêt à travailler avec une équipe.

Réponse B: si vous pouvez vous y rendre, essayez le salon CEBIT à Hanovre en Allemagne. Nous avions l'habitude d'amener les gens à visiter notre stand pour demander des emplois dans notre pays. La probabilité est faible que vous puissiez rencontrer la bonne personne qui peut vous aider. Ou demandez-leur s'ils ont besoin d'une personne locale / européenne pour les aider.

jqa
la source
Bon point pour apprendre différents IDE. Jusqu'à présent, mon attitude a été «whadev, je les apprendrai en cas de besoin».
Ano Päivinen
1
Je vois votre point sur les IDE, mais je prendrais quelqu'un avec seulement une expérience Java en ligne de commande sur un développeur BlueJ n'importe quand!
Michael K
0

Une fois que vous pouvez démontrer que vous avez écrit un code de qualité, comment et où vous avez appris à programmer est moins important. Vous avez construit l'intégralité de l'application, vous devriez donc être en mesure d'expliquer la conception, les problèmes que vous avez rencontrés et pourquoi vous avez choisi ces solutions.

Si votre candidature n'est pas bien connue, vous devrez donner plus d'explications dans votre CV et lettres de motivation. Avoir un grand nombre d'utilisateurs est un avantage car cela montre que vous pouvez gérer l'échelle, les revenus générés seront difficiles à ajouter. Quelqu'un pourrait engager un programmeur pour créer une appliation utilisant des horoscopes pour aider les chirurgiens du cerveau. Pas sûr que je tiendrais le programmeur responsable de ce produit inutile. Peut-être qu'une startup préférerait un développeur avec un certain sens du produit, mais elle ne peut pas vous le reprocher car vous devez payer vos factures.

JeffO
la source
0

Ce que je veux savoir, c'est quelle est la meilleure façon de montrer mon expérience aux employeurs?

Si les diplômes ne sont pas disponibles, les certifications connues sont un plus. Certaines certifications ne nécessitent pas de cours, vous ne pouviez que passer l'examen.

Qu'est-ce que les employeurs veulent savoir sur mon expérience en programmation?

Votre expérience en programmation consiste en projets. Dans votre CV, vous écrivez vos compétences. À l'entrevue, vous serez interrogé sur les projets sur lesquels vous avez travaillé. Ensuite, vous parlerez de ce que vous avez fait, des problèmes que vous avez rencontrés, des solutions que vous avez trouvées, etc.

Les employeurs veulent-ils regarder le code que j'ai écrit ou pourraient-ils voir le logiciel en action?

Peut être. Personnellement, je n'ai pas entendu parler d'employeurs demandant à voir le code (à part le code que vous écrivez lors de l'entretien technique, comme test). Si vous êtes un concepteur Web ou un concepteur d'interface utilisateur, dans la plupart des cas, ils voudront voir certains sites Web que vous avez créés ou conçus.

Ou se soucient-ils seulement de la quantité d'utilisation de mon logiciel / de la quantité de revenus générés? Dois-je écrire sur mon style de conception et de programmation?

La plupart des employeurs seront intéressés par les langages de programmation que vous codez couramment, les connaissances que vous possédez et les compétences que vous avez acquises. La quantité de logiciels utilisés et les revenus créés sont des trucs marketing, pas des trucs de programmation. La plupart des entreprises ont leur propre style de conception et de programmation. Ils s'attendraient à ce qu'un employé soit familiarisé avec des techniques comme Agile, Scrum, Extreme selon ce qu'il utilise.

Coral Doe
la source