Après avoir travaillé pendant un certain temps dans l'informatique, vous commencez à remarquer les astuces que les gens utilisent lorsqu'ils veulent adoucir la pilule. Eh bien, par exemple, la phrase: "Assumer la responsabilité de chaque étape du cycle de vie du produit", en fait, signifie: "Nos processus ne sont pas débogués, tout est en feu, et si nous vous jetons, vous travaillerez là-dessus."
Cet exemple est ma douleur personnelle, car il y a quelques années, lorsque j'embauchais des employés, je l'ai écrit moi-même en toute confiance que je l'ai beaucoup refusé. D'ailleurs, c'est après cet incident que j'ai soudain réalisé que tout est toujours en feu avec nous et pour cette raison nous recherchons des programmeurs universels «pour tous les travaux».
Les gens ne ménagent aucun effort pour rédiger des offres d'emploi artistiques et dissection psychologique lors des entretiens d'embauche. J'entreprends l'analyse de telles choses par désir de vous aider à ne pas tomber dans ces ordures. Regardons les choses en face, vous méritez le meilleur. Comme nous le faisons tous.
Voici une liste de ce qui fait une bonne offre d'emploi:
- Un énoncé clair et concis de l'essence des activités de l'entreprise sans excès de gros mots vides
- Un énoncé clair et concis des tâches à accomplir dans le poste concerné, sans excès de mots vides et forts
- Une liste claire et raisonnable des exigences pour le poste / poste
- Une liste claire et raisonnable des responsabilités qu'implique le poste
- Aucune mention de qualités ou de compétences qui ne sont pas directement liées au travail (sens de l'humour, persévérance, persévérance ...)
Jetons un coup d'œil à quelques exemples d'emplois qui ne correspondent pas à cette description.
Mauvais exemple # 1: nécessite un homme-orchestre
Transfert
: NASDAQ, .
:
:
:
:
:
- : , , , DevOps, , -;
- , ;
- , -, ;
- -, Javascript (Node JS & Angular JS) AWS;
- , , ;
- , .
:
- - Node JS;
- , , ;
- , & REST API;
- – SQS RabbitMQ;
- AWS (SQS, Lambda, EC2, ECS, API Gateway, Beanstalk);
- AWS Cloudwatch Elasticsearch;
- NoSQL (MongoDB, DynamoDB);
- (MySQL);
- (OAuth 2.0), ;
- .
:
- ;
- GraphQL;
- SQL & Mongo;
- ;
- Ionic Framework/React Native;
- API (Swagger).
:
- ;
- , ;
- ;
- 401;
- ;
- ;
- ;
- , ;
- ;
- .
Eh bien, allons-y dans l'ordre.
Contribuer et prendre la responsabilité de tous les aspects du cycle de vie du produit: conception, planification, développement, DevOps, test des services et des composants Web
Brrr. Autrement dit, dois-je être à la fois architecte logiciel, développeur, ingénieur DevOps et testeur? Quiconque a effectivement travaillé pour une entreprise informatique sait que le cycle de vie du produit sur toute sa longueur n'est pas une blague. Dans les startups, il arrive souvent qu'un programmeur soit assis sur plusieurs chaises et traîne tout le processus sur lui, mais une entreprise inscrite sur la liste NASDAQ n'est certainement pas une startup. Les ingénieurs DevOps sont devenus une profession distincte pour une raison.
Ajout: la dernière phrase a suscité une forte réponse de la part des gens, j'ai donc décidé de clarifier ma position.
Je comprends que DevOps est un mouvement culturel qui cherche à transformer les processus et à supprimer les barrières entre le développement et l'exploitation. Pour faire leur travail correctement, les ingénieurs doivent avoir une bonne compréhension de pratiquement chaque étape du cycle. Mais cela ne signifie pas que vous pouvez tout blâmer sur une personne ou une équipe.
Lorsque les développeurs passent du temps à autre chose qu'à implémenter des fonctionnalités ou à corriger des bogues, ce temps est perdu. C'est pourquoi des postes spéciaux apparaissent, associés à des tâches qui n'impliquent pas de travail directement sur le produit.
Ingénieur DevOps est un nom général pour un certain nombre de travaux spécialisés, il peut être facilement remplacé par des noms plus spécifiques: spécialiste de la fiabilité de site, expérience dans le développement ou l'exploitation de plates-formes, ingénieur systèmes ... Quoi que vous les appeliez, le fait est que certains domaines de l'écosystème produit sont toujours en cours de travail différentes personnes - cela vous permet de raccourcir le délai de mise sur le marché et offre plus de garanties. Dans cette situation, les développeurs qui créent le produit ne sont pas gaspillés (par exemple, sur la configuration des services AWS) lorsqu'ils pourraient travailler sur la fonctionnalité.
Stimuler le dialogue avec les partenaires commerciaux, en aidant à identifier les besoins et à trouver des solutions
Collaborer et établir des relations solides avec le groupe technologique, ainsi qu'avec des fournisseurs tiers et des partenaires offshore pour aider à créer de la valeur ajoutée pour les clients
Attendez, je veux dire, en plus de tout le reste, vous voulez faire de moi un chef de produit, un directeur de partenariat et un spécialiste du développement commercial?
Avoir la capacité et le désir de plonger profondément dans la base de code établie et de ne pas manquer les opportunités offertes par les besoins de conception, de fonctionnalité et de refactorisation du code
Montrez-moi cet homme qui veut réécrire le mauvais code de quelqu'un d'autre de tout son cœur .
Partager l'expérience passée avec d'autres membres de l'équipe, devenir un mentor pour eux, afin d'améliorer l'ordre de développement et de mise en œuvre
"Oui, vous serez également chef d'équipe."
Les exigences et les compétences souhaitables correspondent à une gamme de responsabilités ridiculement écrasante. Je doute fort qu'un développeur puisse se concentrer sur le développement JavaScript s'il doit également bricoler divers services AWS, files d'attente de messages, mécanismes de journalisation et analyse des journaux en parallèle.
Vers la fin, une liste franche des fonctionnalités DevOps commence. Pour ce travail, vous avez besoin d'un tarif distinct - enfin, à moins que vous n'obteniez un génie qui comprend tout ce qui se passe dans le monde et qui tient toujours exactement en une heure.
Les primes ne sont pas pires que la moyenne de l'industrie, mais elles ne sont pas payantes pour cela, selon toutes les indications, un sacré travail. Il y a d'autres entreprises qui n'ont pas d'offres moins compétitives et qui n'ont aucune idée qu'un candidat devrait avoir un million de rôles et s'occuper d'un million de tâches.
Mauvais exemple n ° 2: nous avons besoin de programmeurs BOLD pour les emplois BOLD
Transfert
, ,
. , .
: « »
job.Qualifications
[] /
. , , , , , , , .
[], . . , . . . .
, [] , , , . [] , .
:
. , .
: « »
job.Qualifications
[] /
. , , , , , , , .
[], . . , . . . .
, [] , , , . [] , .
:
Exigences de base: emploi.
Hehe, le script automatique de quelqu'un a pris du retard.
Rejoignez l'équipe [cut] qui prend les missions des autres sur leurs épaules. Nos clients choisissent eux-mêmes les missions les plus difficiles. Leur mise en œuvre demande un courage, une endurance et une précision incroyables. Ils sont pleins de dangers et sont d'une grande importance. Parfois, ils nous donnent même la possibilité de changer le monde et de sauver des vies. Ce sont les missions qui nous interpellent .
On dirait un film d'un magasin de télévision. Je peux voir ces clichés directement: les forces spéciales saluent, marchent, subissent des exercices sous une pluie battante, prennent d'assaut le bâtiment ... Stop, c'est comme une description de poste pour un programmeur? Oups. Pour une publicité - juste comme il faut, pour un poste vacant - ne comprenez pas. Il n'y a pas un seul détail dans tout le texte. Ce que vous allez faire n'est pas clair. Qui saurait quelles compétences de base sont nécessaires pour cela.
Avez-vous déjà entendu parler de postes vacants d'appâts? Parfois, cela se produit dans le domaine informatique: vous venez pour un entretien pour un poste, et après l'appareil, vous vous retrouvez en fait sur un poste complètement différent. Ce travail est très facile à faire avec ce travail car vous ne vous inscrivez essentiellement à rien de particulier. Méfiez-vous de ce genre de texte.
On a l'impression que la personne qui a écrit ceci croit sincèrement à la mission de l'entreprise (ou qu'elle a un service marketing commercial). Cependant, avec cette approche, il ne peut compter que sur des personnes qui partagent ses sentiments. Ou ils sont prêts à accepter n'importe quel travail.
Remarque: il est juste de dire que l'entreprise qui a publié le poste est bien connue et s'est fait un nom dans l'industrie. Mais même si cela peut expliquer l'absence de description de ses activités, les exigences de la candidate doivent encore être sérieusement prises en compte.
Mauvais exemple n ° 3: à la recherche des représentants parfaits de l'humanité
Transfert
, -. , , , . - ( , ). , ! – ! – .
:
, :
:
- ;
- ;
- ;
- ;
- ;
- ;
- , …
, :
- , ;
- 0 3 ;
- ;
- ;
- ;
- ;
- ;
- ;
- , «, » ;
- / ;
- HTML;
- C/C++, C# Java;
- Javascript;
- ;
- TCP/IP;
- ;
- ;
- , , .
Cette vacance m'a terminé - j'écris, et cela me frappe de rire.
Les candidats retenus doivent avoir développé une pensée analytique, une soif de connaissances, une volonté d'accepter tout défi, un désir de reconstituer leur base de connaissances et un grand sens de l'humour.
Grand sens de l'humour? Pourquoi donc? Le manuel de l'interviewé s'intitule The Programmer's Career, pas The Funny Manners. Un bon sens de l'humour est un trait que nous apprécions toujours chez ceux qui nous entourent, que ce soit des amis, de la famille, des collègues ou ceux que nous invitons à un rendez-vous. Mais cela n'a pas de sens de demander de telles choses dans un poste vacant.
Les tâches spécifiques peuvent inclure: le développement de logiciels, l'administration du système, la documentation, l'assistance aux utilisateurs, le contrôle de la qualité, l'assistance avant-vente
Maintenant, expliquez-moi, s'il vous plaît, à quel endroit ce travail vous amène-t-il au niveau initial? Vous recherchez une personne qui sera votre développeur, administrateur système, équipe de rédaction technique, équipe de support technique, équipe de test et ingénieur commercial. Je travaille dans l'industrie depuis de nombreuses années et je ne sais pas si je gérerais même la moitié de ces postes.
Et ainsi de suite, à mesure qu'ils deviennent disponibles ...
... par exemple? Nous semblons avoir un poste vacant ici pour un poste de développeur, pas un garçon de courses dans un bar sportif. Des lignes vagues et ambiguës de ce genre sont un mauvais signe. Les gens doivent toujours savoir quels types de travail ils acceptent
L'esprit d'entreprise
Donc, j'ai rencontré cette expression plus d'une fois et ... qu'est-ce que cela signifie du tout? Si vous en posez une - il dira, c'est à ce moment-là qu'ils enfreignent les normes et expérimentent. Un autre fera référence à des qualités telles que la persévérance et la détermination. Ou peut-être s'agit-il du fait que vous devez être inventif et penser de manière flexible?
Le problème avec ces caractéristiques est qu'elles sont vagues, ambiguës et dénuées de sens. Ils ne transmettent aucune information, car ils peuvent signifier tout ce que vous voulez. Chaque premier se console en pensant qu'il a un entrepôt «entrepreneurial» - il suffit de regarder combien de personnes se définissent comme «entrepreneur» sur LinkedIn.
Qu'est-ce que cela signifie pour vous, la personne qui souhaite trouver un emploi dans l'entreprise? Le fait que l'employeur ait sa propre idée bien précise de qui il veut voir dans ce poste, mais il n'est pas en mesure de donner une description claire.
;
;
;
, «, » ;
/ ;
;
;
, ,
Seigneur Jésus. Encore une fois: toutes ces qualités doivent être évaluées par le candidat lors de l'entretien, et non décrites dans le poste vacant. Le fou comprend que tout le monde veut embaucher des travailleurs honnêtes, actifs et enthousiastes. Il y a au moins quelqu'un qui lit tout ça et qui pense: "Oh, eh bien, je suis un salaud et je suis fou, je ne leur enverrai pas de CV?" Vous feriez peut-être mieux de nous dire quelque chose sur le poste?
«Tout ce qui est nécessaire», et même entre guillemets, suscite l'inquiétude. Jusqu'où vont ces exigences? Devez-vous donner votre premier-né? Ou abattre une chèvre sacrificielle? Eh bien, les deux derniers points sont également bons. Il faut être optimiste, mais pas trop optimiste, allons-y sans ça ici.
Laissez-moi vous dire ceci: pour un certain type de personnes, une telle description paraîtra amusante et attrayante. Mais pour moi, à la lumière de mon expérience, tout le texte est un appel après l'autre.
Bonnes descriptions de poste
Pour aérer un peu la pièce après toutes les critiques et la négativité, étudions maintenant quelques textes écrits très, très raisonnablement.
Bon exemple n ° 1: il a tout
Transfert
[] – , . , . : , , , . , , . , – .
: [] , – . : , , . , , , , , . . , . .
:
:
[] , , , , , , , , . [].
: [] , – . : , , . , , , , , . . , . .
:
- , ;
- , , ;
- , ;
- ;
- , .
:
- full-stack ;
- -, : Python/Django, Javascript/React, Scala/Play ;
- (MySQL, PostgreSQL, NoSQL ). ;
- . ;
- .
[] , , , , , , , , . [].
Beauté. La description de l'entreprise et de l'équipe, d'une part, est intrigante, d'autre part, elle donne suffisamment de détails.
Nous créons des systèmes qui prennent des quantités massives de données génomiques, les combinons avec la littérature scientifique du monde entier, ajoutons des résultats qui ont été soigneusement calibrés au fil des ans et emballons soigneusement tout pour que nos chercheurs puissent les utiliser.
À partir de cette seule proposition, il est déjà possible de tirer un certain nombre de conclusions sur les domaines dans lesquels l'entreprise est susceptible d'opérer:
- Big Data
- Traitement et analyse des données
- Développement logiciel (bien sûr)
- Recherche scientifique ou R&D
- Peut-être l'apprentissage automatique pour extraire de nouvelles informations à partir des données
Les listes des paragraphes «Que ferez-vous» et «Qu'apporterez-vous à l'équipe» sont spécifiques, transparentes et raisonnables. Dix sur dix, j'aurais proposé ma propre candidature si le domaine me convenait mieux.
Bon exemple n ° 2: court et précis
Transfert
[] , . , .
. , , .
, : , , .
:
– , , -:
. , , .
, : , , .
:
- , ;
- API, ;
- ;
- ;
- ;
- , API .
– , , -:
- NodeJs, Go, Kubernetes, Docker;
- Linux (Ubuntu), , Python.
Les responsabilités sont claires. Les compétences nécessaires ne sont pas écrites, mais elles peuvent être facilement pensées en fonction des informations fournies sur la pile et des tâches:
- Microservices
- Node.js, Python et Go
- Kubernetes + Docker, Linux
- Accent sur la construction commerciale et commerciale
Et personne ne se renverse dans un rossignol sur la façon dont ils ont besoin de personnes exceptionnellement parfaites et comment ils recherchent ceux qui sont capables de bouleverser le monde entier !!!
Bon exemple n ° 3: simple mais solide
Divulgacher
, , . , , , . , , – .
[]; .
:
: Golang, AWS (DynamoDB, Lambda, EC2, Kinesis, SQS, S3), ReactJS, Snowflake, Terraform, Redis, SolarCloud, Kafka, Riac, Docker/Kubernetes Linux
:
[]; .
:
- ;
- , API-, , ;
- Jira, Github ;
- .
: Golang, AWS (DynamoDB, Lambda, EC2, Kinesis, SQS, S3), ReactJS, Snowflake, Terraform, Redis, SolarCloud, Kafka, Riac, Docker/Kubernetes Linux
:
- : 2-4 ;
- ;
- Go Python;
- HTML, CSS Javascript;
- ;
- - Javascript;
- , ;
- AWS ();
- .
Une description claire et substantielle des activités de l'entreprise, un aperçu des compétences attendues du candidat et de ses futures responsabilités. Comme dans l'exemple précédent, il s'agit de la pile technologique de l'entreprise. La liste des besoins correspond à la fois au poste et au niveau du programmeur souhaité. C'est un bon travail.
Ne vous contentez pas des mauvais emplois
Vous essayez d'obtenir un emploi dans un domaine qui connaît actuellement une croissance explosive, ce qui signifie que vous avez des options. Il existe de nombreuses grandes entreprises dans le monde qui offrent non seulement des tâches intéressantes et des primes généreuses, mais également d'excellentes opportunités de croissance, y compris de carrière. Continuez à perfectionner vos compétences tout en recherchant un emploi et lisez attentivement les descriptions de poste pour éliminer les employeurs douteux et ne pas perdre de temps avec eux. Merci d'avoir lu!