Sam & Max » emploi http://sametmax.com Du code, du cul Sat, 07 Nov 2015 10:56:13 +0000 en-US hourly 1 http://wordpress.org/?v=4.1 Dans quels secteurs retrouve-t-on Python ces temps-ci ? 15 http://sametmax.com/dans-quels-secteurs-retrouve-t-on-python-ces-temps-ci/ http://sametmax.com/dans-quels-secteurs-retrouve-t-on-python-ces-temps-ci/#comments Fri, 05 Dec 2014 20:31:01 +0000 http://sametmax.com/?p=12709 J’utilise le compte Tweeter du blog (n’oubliez pas qu’il y a un flux RSS des tweets) pour RT des offres d’emploi en rapport avec Python régulièrement. Des stages, des demandes de freelance, des embauches, etc. J’essaye de rester dans des offres francophones ou dans des pays limitrophes à la France, histoire que ce soit des infos utiles.

Ce faisant, j’ai pu noter au fil de l’année les secteurs qui sont le plus présents parmi ces recrutements, en tout cas via micro-blogging.

En premier, on a le Web, évidemment. Essentiellement du Django. Rien d’étonnant, ce n’est pas lié à Python en particulier, c’est juste le secteur informatique qui est le plus actif, et tout langage qui peut faire du HTTP correctement amène forcément du taf. Les outils pour cela en Python sont de bonne qualité, et on le retrouve donc un peu partout.

Ensuite vient la finance.

Ceci me gène un peu. Je ne les retweete pas en général, car éthiquement parlant, je ne suis pas à l’aise avec les institutions financières actuelles, mais ce n’est pas le sujet de l’article. Néanmoins ce sont d’excellentes opportunités techniques : analyse de données, temps réel, traitements logiques, UI, grosses infras, des moyens et un travail avec un impact fort IRL. Que Python s’impose dans ces milieux n’est pas une surprise : ils privilégient pragmatisme et efficacité. Or Python est un langage clair, qui permet une itération rapide en dev, des traitements complexes tout en restant facile à maintenir.

En 3ème position (selon les stats de l’INDMS, bien sûr), on retrouve la science : les chercheurs, biologistes, physiciens, géographes, astronomes et tous corps de métiers qui ont besoin de pouvoir adapter facilement des algos, transcrire des maths en code, traiter des gros jeux de données… Python est un langage fantastique pour cela, et sont apparues tout un tas de libs, soit pour gagner en perf, soit pour coller aux règles du métier. On retrouve du coup le langage comme solution de scripting dans des logiciels pros comme les SIG, des bases de données moléculaires et autres gros morceaux. C’est un usage tellement important que la prochaine version va embarquer un nouvel opérateur mathématique pour multiplier les matrices : le @.

Et puis il y a l’admin système et l’automatisation. Python remplace Perl un peu partout, dès qu’un script bash ne suffit plus. Car Python est simplement plus lisible et maintenable que ces deux langages, et il est aussi maintenant plus versatile, grâce au travail de la communauté. Des initiatives comme OpenStack ont fait de Python un acteur majeur dans les solutions de déploiement, de cloud, d’archi distribuées. C’est néanmoins très spécialisé, et concurrentiel, et donc trouver un bon dev là dedans ne doit pas être facile.

Notre pénultième, c’est la gestion d’entreprise. Principalement à travers le produit Odoo (aka OpenERP) qui s’occupe de tout, du personnel aux clients en passant par la facturation. C’est un peu usine à gaz, mais ça vaut toujours mieux que SAP. Ceci dit, en dehors de cela, Python est un fantastique langage glu, du fait qu’il est capable de lire et générer de nombreux formats (MS Office, LibreOffice, PDF, images) et base de données (MySQL, PostGres, Oracle, Access, et d’autres plus obscures). On peut même parler certains protocoles de machines outils. Dans des usines qui ont 15 ans d’empilement technologique et de migrations avec des morceaux legacy qui traînent partout, ça change la vie. Surtout qu’on peut maintenant remplacer VB avec Python presque partout, y compris dans Excel.

En dernier, il y a le Big Data. Derrière ce mot pompeux se cache les analyses de données massives, l’intelligence artificielle et en fait, tout ce qui concerne extraire du sens à partir d’un gros blob qui n’appartient pas aux métiers cités précédemment. Interprétation du langage humain, études d’images ou de son, réseaux sémantiques, généralement sous forme de grandes collections d’échantillons. Là c’est du haut niveau, mais ça fait justement des postes intéressants.

Malgré Kivy, le Rasberry Py et Micro Python, je ne vois pas encore le langage décoller dans l’embarqué, sur téléphone, sur l’internet des objets… WAMP va peut être changer la donne, mais pas tant que qu’on aura pas créé une API plus sexy.

Les jeux vidéos sont aussi un secteur qui manque de Python, et c’est dommage. On lui préfère souvent le Lua, à part dans quelques cas comme Civilisation ou Eve Online.

Apparemment Python paie bien, mais honnêtement j’en ferai pas un critère de choix : ces choses là changent. Si on veut de la thune, on fait du Cobol, emploi bien payé garanti.

]]>
http://sametmax.com/dans-quels-secteurs-retrouve-t-on-python-ces-temps-ci/feed/ 15
Comment écrire une annonce pour recruter des dev 27 http://sametmax.com/comment-ecrire-une-annonce-pour-recruter-des-dev/ http://sametmax.com/comment-ecrire-une-annonce-pour-recruter-des-dev/#comments Fri, 17 Oct 2014 11:41:17 +0000 http://sametmax.com/?p=12476 Je critique souvent les offres d’emploi, mais l’art est difficile, alors voici quelques lignes directrices si cela vous arrive un jour.

Ne mettez pas les RH en avant

Les RH ne doivent PAS rédiger l’annonce. Le moyen de contact ne doit PAS être celui des RH.

Je ne dis pas que les RH ne doivent pas faire partie du processus de recrutement. Mais je recommande qu’ils s’en tiennent à l’administratif et à l’accompagnement de l’équipe technique dans la démarche.

Ils ne sont tout simplement pas qualifiés pour ça.

Ce n’est pas une insulte, c’est un constat que je fais tous les jours. Ils ne sont pas capables d’évaluer un profil technique correctement. Ils recalent trop facilement de bons profils pour délit de sale gueule (courant en info). Ils ne savent pas lire un CV tech, ils vont juste comparer les besoins de l’annonce avec le papier.

Mettez les membres de l’équipe qui va accueillir la recrue comme contact, et demandez leur de rédiger l’annonce.

Cela a de nombreux avantages :

  • Ils se sentent valorisés.
  • Ils sont impliqués dans le choix de leur collègue, l’intégration sera meilleure.
  • Ils peuvent voir des choses lors de l’entretien ou sur un CV qui sort du lot même si ça ne rentre pas dans des cases.
  • Ils ne vont pas écrire n’importe quoi dans l’annonce. Sérieux, quand je lis MailleSQL dans une annonce, j’ai envie de fesser les responsables.
  • C’est moins intimidant pour la personne qui répond à l’annonce. Parler à quelqu’un de son métier met à l’aise, et incite à postuler. Les dev sont parfois peu sociables, il faut leur faciliter cette démarche.

Bien entendu, il est important que les RH les accompagnent dans le processus. Les techos n’y connaissent rien en recrutement. C’est un travail d’équipe. Mais ils doivent être ce qui est mis en avant, le premier filtre, et le dernier mot.

Les infos importantes

Trop souvent je vois des annonces qui ne listent pas les infos essentielles. Voici une liste des choses qui DOIVENT figurer sur l’annonce :

  • Moyen de contact par email ET par téléphone. Nom de la personne qui va répondre, et poste.
  • Missions principales en 3 points : le sujet sur lequel on va travailler, quel rôle on va jouer, et les technos utilisées.
  • Talents requis, humains et techniques.
  • Échelle de rémunération.
  • Conditions de travail : équipe que l’on va intégrer (taille et rôle), localisation géographique du bureau, télétravail possible, etc.
  • Repères temporels : date de l’annonce, date de recrutement souhaitée, durée du contrat.

A l’inverse, supprimez le bruit : expressions à la mode, jargon corporate, formules toutes faites… Les devs sont sensibles à ce genre de chose, et il est facile de passer pour des charlots en voulant rajouter du nutella sur la confiture.

Les trucs à oublier :

  • “leader du marché”, “en forte croissance”, et toute autre auto congratulation. On s’en branle.
  • “projet innovant”, “révolutionner”, “so excited” et autres promesses que vous n’êtes pas capable de tenir. L’enthousiasme, vous le communiquez à l’entretien. Là ça fait vendeur de tapis Apple.
  • “vous êtes passionnés”, “un ninja”, “un killer”. Vous recruteriez quelqu’un pour la compta, vous diriez ça franchement ?
  • Les termes vagues : “taille humaine” (donnez un nombre), “réactifs aux changements” (ça veut tout et rien dire), “challenge” (listez les défis, ne les qualifiez pas).

Évitez que votre annonce ressemble à ça.

Soyez pragmatique

Tous les parents trouvent qu’ils ont le plus beau bébé du monde, mais ils vous les cassent quand ils vous montrent les photos en vous clamant qu’il est fantastique.

Votre boîte pète peut-être du Chanel numéro 5 à vos yeux, mais à moins d’avoir une attractivité incroyable (auquel cas vous n’avez probablement pas besoin de mettre une annonce), tout le monde s’en fout.

Bref, n’exigez pas un bac+x pour votre poste, il n’en a très probablement pas besoin. Mettez uniquement les talents requis techniques et humains. Ceux indispensables. Oubliez la limite d’âge, de diplôme et autres caractéristiques purement sociétales.

La seule chose qui compte, c’est que le mec fasse son job, et ça, il n’y a qu’un moyen de le vérifier : le voir bosser. Donc préparez des tests techniques, et organisez la période d’essai. Souvenez-vous qu’un gars débrouillard se formera sur le tas sans problème en info, c’est l’essence de notre taff.

Enfin, si vous voulez un mec bon, il va falloir se montrer attractif. On lui proposera 80k à Londres pour le même poste, trouvez un moyen de matcher ça.

Et si vous voulez un crack, souvenez-vous qu’il peut avoir 200k aux US. Le fait qu’il soit en France montre qu’il est intéressé par autre chose que l’argent. Cherchez ce que c’est, et tentez de devenir attractif en rapport avec ce point. Il y a bien d’autres choses que du pognon : télétravail, horaires flexibles, matériel de qualité, aide pour la famille s’il a des mômes, responsabilités inhabituelles pour quelqu’un d’aussi jeune, etc.

Mais la plupart du temps vous n’avez pas besoin d’un tueur. Vous avez besoin d’un mec normal, qui fait son boulot normalement. Alors ne faites pas votre processus de recrutement comme si vous cherchiez le prochain Linus Torvalds. Soyez réaliste, et vous trouverez plus rapidement ce dont vous avez besoin.

Je ne veux pas dire qu’il faut recruter n’importe quel boulet. Mettez les (nombreux) incompétents de côté rapidement, et efficacement, sans remord. Néanmoins, descendez de vos grands chevaux. Trop de recruteurs visent bien plus haut que ce dont ils ont besoin, mais aussi de ce qu’ils valent. Et de ce qu’ils peuvent payer.

L’offre et la demande ne sont pas en votre faveur, et ça ne va pas s’améliorer. Je vois tous les jours les résultats désastreux de mauvaises embauches, si vous voulez éviter ça, il faut se remettre en question.

Exemple

Cherche Dev Backend Python

Titre simple, court, qui permet d’être scanné facilement. Votre annonce ne sera pas lue par 99% des chercheurs, elle sera listée sur une page au milieu de centaines d’autres. Pour cette raison, mettez des mots-clés qui permettent facilement de la lister. “cherche”, “dev” et “python” font une query simple pour Google, Twitter, ou le meta moteur des sites de jobs.

Mon équipe de 3 dev a besoin d’un(e) pythonista pour travailler sur notre crawler de pages. La mission sera dans un premier temps de rajouter de nouvelles sources d’information à parser. Cela inclut une batterie de tests et de la documentation. D’autres tâches ponctuelles comme de la correction de bugs de notre ancien système et de la refactorisation des précédents crawlers sont à prévoir.

On commence par le quoi. C’est ce qui intéresse le plus la recrue, il veut savoir ce qu’il va foutre là-bas. Pas besoin de rentrer dans trop de détails, il faut juste en donner assez pour être clair, et pas trop pour l’inciter à appeler pour en savoir plus.

On utilise la première personne, ce qui donne un sentiment de proximité. “pythonista” est un terme spécifique à ce type de dev, montrant que l’annonce a été rédigée par quelqu’un qui s’y connaît.

Nous : LambdaBoite est spécialisée dans la vente de LambdaProduit, notre but étant de satisfaire LambdaBesoin de LambdaTypeDeClient.

Vous : on se fiche de savoir si vous avez 23 ans, portez des piercings ou si vous êtes sur une chaise roulante pourvu que vous livriez les features à temps.

On présente rapidement l’entreprise de manière générale. Un lien vers une page plus détaillée peut être inséré. On note les exigences humaines. Si la ponctualité est importante, mettez le. Ces lignes sont la relation personnelle que vous voulez établir. C’est vous, et lui/elle. C’est aussi le moment de mettre les recrues à l’aise en faisant un contraste. Ici, c’est carte blanche. Si vous avez des valeurs, exposez les. Si vous avez des choses amusantes à dire, dites les. Si ce sont des phrases marketings dictées par le département com interne (“we value…”), faites-les sauter.

Profil technique :
– Capable d’écrire en Python : un décorateur maison, un code téléchargeant des ressources en ligne avec gestion des erreurs, une interface en ligne de commande avec argparse.
– sait créer et déployer un daemon sous Linux Fedora en prod via supervisor.
– sait faire une branche et un merge git.
Vous serez testé à l’entretien.
Sur place vous travaillerez avec :
– de la programmation asynchrone.
– PosGres.
– Le framework Scrapy.
Ces notions ne seront pas testées, vous pourrez les apprendre sur le tas.

Plutôt que d’utiliser des termes vagues comme “bon niveau”, “senior”, etc., donnez des moyens précis de mesurer un niveau. Notez qu’on ne parle pas de diplôme ici. Le meilleur prog que je connais a Bac -2.

On sépare l’indispensable du “est un plus”. Mais plutôt que de le tourner en exigence, on le liste comme quelque chose d’attractif.

Date de recrutement souhaitée : 3 mars
Contrat : CDD dans un premier temps, possible recrutement en CDI.
Rémunération : 30-40k
Contact : wololo@lambdaboite.com ou 0123456789 (Linette Michalon, CTO et votre futur boss)
Adresse : 69 avenue du coin de la rue 69777 La villette sur roustifailles (votre bureau vous y attend)
Site Web : http://lambdaboite.com/travaillez-chez-nous

Nature du contrat, contact avec qui, quoi et où puis lien vers une carte.

On notifie que l’adresse est bien l’endroit où l’on va travailler et pas juste le centre administratif.

Un lien vers plus de détails sur les conditions de travail (temps pour se déplacer, transport, photos des bureaux, liens vers l’équipe, présentation des produits, etc) est bienvenu.

Et oui, rédiger une annonce prend du temps. Recruter correctement prend du temps.

Copier / coller

Comme je sais que les gens aiment bien les templates, voici la version intégrale, prête à être copiée.

Mais je déconseille de l’utiliser telle quelle. Tout comme un CV doit être réécrit pour chaque poste qu’on vise, une annonce doit l’être pour chaque poste qu’on veut pourvoir.

Cherche Dev Backend Python

Mon équipe de 3 dev a besoin d’un(e) pythonista pour travailler sur notre crawler de pages. La mission sera dans un premier temps de rajouter de nouvelles sources d’information à parser. Cela inclut une batterie de tests et de la documentation. D’autres tâches ponctuelles comme de la correction de bugs de notre ancien système et de la refactorisation des précédents crawlers sont à prévoir.

Nous : LambdaBoite est spécialisée dans la vente de LambdaProduit, notre but étant de satisfaire LambdaBesoin de LambdaTypeDeClient.

Vous : on se fiche de savoir si vous avez 23 ans, portez des piercings ou si vous êtes sur une chaise roulante pourvu que vous livriez les features à temps.

Profil technique :

– Capable d’écrire en Python : un décorateur maison, un code téléchargeant des ressources en ligne avec gestion des erreurs, une interface en ligne de commande avec argparse.
– sait créer et déployer un daemon sous Linux Fedora en prod via supervisor.
– sait faire une branche et un merge git.

Vous serez testé à l’entretien.

Sur place vous travaillerez avec :

– de la programmation asynchrone.
– PosGres.
– Le framework Scrapy.

Ces notions ne seront pas testées, vous pourrez les apprendre sur le tas.

———-

Contrat : CDD dans un premier temps, possible recrutement en CDI.
Rémunération : 30-40k.
Contact : wololo@lambdaboite.com ou 0123456789 (Linette Michalon, CTO et votre futur boss)
Adresse : 69 avenue du coin de la rue 69777 La villette sur roustifailles (votre bureau vous y attend)
Site Web : http://lambdaboite.com/travaillez-chez-nous

Sortir du cadre

Ce que je viens de faire là, c’est une annonce générique. La vérité c’est que je n’écrirais pas une annonce comme ça moi-même. Une fois que vous avez maîtrisé ce qui est important pour vous et la recrue, vous pouvez adapter le style pour en faire quelque chose de plus personnel, et souvent plus court. L’idéal est de faire transparaître l’état d’esprit de la boîte via l’annonce.

Bon évidemment si vous recrutez pour une énorme boîte dinosaure type EDF, vous êtes baisé.

Pour finir, n’oubliez pas que l’annonce n’est pas la manière à préférer pour recruter. Le bouche à oreille, les événements techniques (conf, rassemblements, etc.), les sites communautaires et même les restos / bars sont de bien meilleurs sources. Donc mettez une annonce en ligne, puis allez à la Pycon à Lyon la semaine prochaine ou allez boire un verre au Cardinal sur Richelieu à Paname. Ca marche mieux.

]]>
http://sametmax.com/comment-ecrire-une-annonce-pour-recruter-des-dev/feed/ 27
Où trouver un Job ou une mission Python / Django ? 20 http://sametmax.com/ou-trouver-un-job-ou-une-mission-python-django/ http://sametmax.com/ou-trouver-un-job-ou-une-mission-python-django/#comments Sat, 06 Oct 2012 21:03:48 +0000 http://sametmax.com/?p=989 Je vois ici et là encore des gens qui se posent la question, et ça m’étonne, car il y a pénurie de devs, donc du besoin partout.

Les annonces françaises

Si vous cherchez en France, il y a de bonnes annonces sur des sites spécialisés comme lesjeudis,trovit, l’afpy et human coders, et nous agrégeons les 4 sur le multiboards. Dans ceux qu’on agrège pas, il y a alsacreations, indeed, jobintree, keljob, monster, option carriere, wanajob et bien entendu Google… Ne perdez pas de temps sur les sites officiels type Apec, Anpe, Pôle emploi, etc. C’est beaucoup de temps pour un très mauvais retour.

(Et c’est là que je me dis que faire un méta moteur de recherche pour des annonces uniquement sur Python, ça pourrait être trop cool)

Si vous êtes freelance, vous devriez quand même utiliser ces sites car les offres y sont pèles mêle, et il y a des missions dans le lot. De plus, si vous voyez écrit quelque chose dans une annonce, ça ne veut pas dire qu’on ne peut pas proposer autre chose. Offrez vos talents en tant que freelance à quelqu’un qui cherche à embaucher en CDD, et même parfois en CDI, peut parfaitement marcher. Ca ne coûte rien, et au pire les gens ont votre CV et vous avez leurs contacts, et rien que pour ça, ça vaut la peine.

Parfois les sites ne proposent pas les contacts. Soyez créatifs: vous êtes informaticien, utilisez les outils informatiques à votre disposition pour retrouver la société à travers une annonce sur un site concurrent, un dossier de presse qui parle du projet sur lequel on embauche, la localisation géographique, le nombre d’employés, les technos utilisées, le nom du contact… On augmente drastiquement ses chances quand on contacte les gens en direct, pas à travers un site, donc n’hésitez pas à passer quelques heures pour trouver la source d’une annonce. Dans le cas où il y a trop peu d’infos pour lancer une recherche, laissez tomber. Un employer qui met 3 lignes dans sont annonce hors de Twitter, ça sent le job pourri.

Les annonces anglaises

Les meilleurs jobs (les projets les plus cools et les mieux payés), impliquent presque tous un environnement de travail anglophone. Si vous ne parlez pas anglais, commencez dès maintenant à chercher des cours, c’est un investissement sur votre vie à très haut rendement.

Attention, ça ne veut pas dire que vous aurez à aller travailler à l’étranger. Il y a des boîtes qui communiquent en anglais basées en France, et d’autres qui acceptent le télétravail. J’ai déjà travaillé pour Paris depuis Madrid, Baltimore depuis Bangkok, New York depuis Bamako, etc.

On trouve des annonces sympa sur:

Et pour Django uniquement:

Hors annonces

Certains sites non destinés à l’emploi sont excellents pour ça malgré tout. Passez du temps sur les forum spécialisés de votre métier, par exemple django-fr. Enregistrez-vous comme expert sur les listings spécialisés comme django gigs et la map officielle des dev Django. Inscrivez-vous aux mailling lists. Si vous avez un compte sur Stackoverflow, mettez votre email dedans et spécifiez que vous cherchez du travail.

Faites une veille informationnelles régulière: les blogs et les journaux publient souvent des annonces. Il n’y a pas une semaine sans que cette recherche sur Twitter ne contienne une offre de travail Python. Nous même on retweet des offres régulièrement. Oui, ça prend du temps, la veille informationnelle. Ça me prend environ une heure par jour, depuis 15 ans. Ça fait parti du job. Comment vous croyez qu’on obtient la connaissance pour écrire ces articles ?

Enfin il faut mettre le nez dehors. Allez dans les lieux où il y à d’autres geek: espaces de co-working, hacker spaces, fab labs, etc. Mais aussi aux événements réguliers: afpyros, open coffee, hack-a-thon, pycon, pyconfr, django cong, django breizh… Il y a souvent quelqu’un qui cherche un dev, ou connaît quelqu’un qui cherche un dev.

Quelques petits conseils pour maximiser vos chances

Je vous dis ça car j’ai été apprenti, employé, freelance, et chef d’entreprise, donc j’ai eu pas mal de points de vue sur la question.

  • Designer votre CV avec un logiciel de dessin, pas un traitement de texte: un beau CV ne pallie pas sa pauvreté, mais c’est comme mettre un joli cadre sur un tableau, ça donne envie de l’accrocher.
  • Ne parlez pas aux ressources humaines si vous le pouvez. Essayez à tout prix (quitte à vous faire passer pour l’employer des postes), d’obtenir le contact d’un mec de l’équipe technique ou du patron. Les RH ne pigent rien à la technique et pourront vous rembarrer pour tout un tas de mauvaises raisons. A l’inverse, on a jamais vu les RH dire non à un CV apporté par un patron où l’équipe technique.
  • Mentez. Ce n’est pas une blague. L’entreprise ment. Tout le temps. Elle ne va pas vous parler de ce qui ne va pas, du projet merdique que vous allez devoir reprendre, du collègue insupportable qui sera là, etc. L’entreprise fait comme vous, elle se montre sous son meilleur jour. Vous voulez un bon job ? Mentez. La boîte ne prendra pas de risque pour vous, vous devez lui forcer la main si vous n’avez pas l’expérience, car elle essaye toujours de la jouer safe et d’embaucher un profile improbable alors que vous pourriez très bien faire l’affaire.
  • Demandez. On obtient rien si on ne demande pas. On est parfois ridicule, mais c’est une question d’habitude. L’humiliation, c’est le prix à payer si vous tentez des choses que les autres ne font pas, et donc qui ont de grandes chances de foirer. Rappel de Cocteau: “Le tact dans l’audace c’est de savoir jusqu’où on peut aller trop loin”

Peut-être qu’il faudrait que je fasse un article complet sur réussir son entretien et son CV un de ces quatres.

]]>
http://sametmax.com/ou-trouver-un-job-ou-une-mission-python-django/feed/ 20