Que doivent attendre les développeurs débutants de leur chef d'équipe senior? [Fermé]

44

Déni de responsabilité: Les opinions exprimées sont uniquement les miennes et n'expriment pas les vues ou les opinions de mon employeur.

Je travaille pour une petite entreprise dans laquelle peu de personnes sont des développeurs, d'autres du contrôle qualité et des tests et 1 est un manager. J'ai rejoint cette entreprise il y a 1,5 ans. 3 développeurs seniors ont plus de 8 ans d'expérience.

Ce sont les observations que j'ai faites sur le chef d'équipe. (me considérant plus fraîche avec moins d'expérience que tous les autres)

  1. Ils ne discutent jamais 1: 1 ou ne prennent jamais en compte la suggestion junior (je conviens que cela leur appartient, qu’ils l’acceptent ou non, au moins ils devraient prendre en compte une opinion).
  2. En tant que chef d'équipe senior, ils peuvent essayer de reformuler la base de code avec de nouvelles technologies (y compris le facteur de déploiement de nouvelles technologies et d'autres développeurs et infrastructures également prêts), mais ces chefs d'équipe se sentent moins en sécurité pour travailler avec de nouvelles technologies, comme ils ne sont pas à jour. (raison pour laquelle je dis, ils ne savent pas quelle est la tendance actuelle en matière de programmation * (tels que les projets open source populaires tels que modernizr, bootstrap et bien d’autres).
  3. Dans notre base de code, plus de 10000+ lignes sont répétées, alors je leur en ai parlé DRY: Don't Repeat yourself. Leur réponse était: "C'est un article fascinant, mais ne fonctionne jamais dans la pratique". Je leur ai juste dit que si nous ne le rendions pas complètement sec, nous pourrions au moins utiliser des interfaces, mais cela n’a pas été pris en compte. * (des interfaces peuvent être ajoutées pour les nouvelles fonctionnalités, sans toucher à la base de code précédente, si elles ne sont pas prêtes à être refactorées)
  4. Tous les développeurs expérimentés effectuent la maintenance et la réparation à chaud des correctifs. Le reste du temps, ils ne font que passer à des sites de divertissement. Ils sont juste contents de finir la tâche.
  5. L'introduction de nouvelles technologies est mauvaise? * (y compris facteur de faisabilité peut être fait).
  6. Le gestionnaire est également moins préoccupé par les choses dont je parle.
  7. Junior s'attend à ce qu'ils puissent apprendre beaucoup de choses du chef d'équipe. * (pas en demandant de l'aide ou un codage supérieur pour eux).

Mes questions sont:

  1. Suis-je trop agressif face aux changements que je propose?
  2. À quoi dois-je m'attendre des responsables de développement seniors ayant plus de 8 ans d'expérience?
  3. Ai-je tort de m'attendre à apprendre et à acquérir l'expérience d'une entreprise?

Mise à jour :

Pourquoi ils se sentent DRY n'est pas pratique: parce qu'ils ne veulent pas s'impliquer dans les concepts de POO. Ils sont contents de répéter des tâches.

Nouvelles technologies que je propose:

  1. Utilisation de la Minification des images CSS, JS, SPrite
  2. Utilisation des interfaces et du .net framework 4, des génériques et de bien d’autres.
  3. Les bibliothèques côté client telles que modernizr, knockout js, bootstrap for responsive,
Ravi Gadag
la source
40
Juste une remarque: des années d'expérience ne veulent rien dire. Il y a l'adage "certaines personnes ont 10 ans d'expérience, d'autres 1 fois 10 ans" (paraphrasé). Basez vos attentes sur leurs compétences et leurs connaissances, et non pas sur combien de temps ils sont là.
Anthony Pegram
6
Ravi, vous aimeriez croire qu'ils ont appris et grandi. Ce qui est beaucoup trop commun, c'est qu'ils ont atteint un plateau. Que cela soit dû à la complaisance, à l'absence totale de contestation ou au fait qu'ils aient réellement atteint leur limite, cela varie d'une personne à l'autre et d'une situation à l'autre.
Anthony Pegram
5
@Ravi, votre perception est qu’ils sont un chef d’équipe qui vous guide, mais il est tout à fait possible que leur perception soit qu’ils soient un chef d’équipe qui gagne leur vie bien et ne demande pas aux gens de leur dire quoi faire pour pouvoir faire ce qu’ils veulent. Tout le monde ne cherche pas à vous aider simplement parce qu'il le devrait, et beaucoup de gens ne se soucient pas de s'améliorer s'ils peuvent l'éviter en devenant un chef d'équipe sans amélioration personnelle en cours de route.
Jimmy Hoffa
14
Vous êtes déjà bien en avance sur eux et ils ne sont pas intéressés à se placer dans une position où ils sont prêts à travailler avec vous. Virer votre entreprise.
user16764
5
D'habitude, je suis tout à fait en faveur d'une nouvelle technologie qui apporte une manière plus propre de faire quelque chose. Cependant, il faut faire attention à ne pas introduire beaucoup de nouvelles technologies simplement parce qu'elles sont nouvelles et brillantes. Si un projet ne fait que commencer ou s'il nécessite une nouvelle fonctionnalité ou une refactorisation, cela pourrait être une bonne occasion d'introduire quelque chose de nouveau. Si le projet est stable (ne nécessitant que des corrections mineures) ou s'il est en retard, il serait préférable d'éviter d'introduire de nouvelles choses.
Marc

Réponses:

30

Suis-je trop agressif face aux changements que je propose?

Sans précision (quelles sont les nouvelles technologies que vous proposez, pourquoi elles les rejettent, lorsqu'elles estiment que DRY n'est pas pratique et pourquoi, etc.), il est difficile d'évaluer le mérite de vos propositions et c'est important pour votre agressivité. Si vous voulez qu’ils utilisent un nouveau cadre parce que vous pensez qu’il est nouveau et cool, il est alors trop agressif de pousser plus loin. S'ils claquent des milliers de lignes de copier / coller dans la base de code (c'est-à-dire qu'ils écrivent de la merde), je dirais que plus d'agressivité est justifiée.

Mais cela dépend aussi de la dynamique interpersonnelle entre vous et eux. Mon conseil serait de vous demander "pourrais-je démontrer que mes suggestions profiteraient à l'entreprise?" Si la réponse est oui, alors je dirais que vous avez une licence pour essayer de pousser.

À quoi dois-je m'attendre des responsables principaux des développeurs qui ont plus de 8 ans?

Cela va couvrir toute la gamme. Vous obtiendrez parfois des personnes très affûtées, dont vous pourrez apprendre beaucoup de choses, à la fois en termes de navigation politique et de considérations techniques. Malheureusement, vous obtenez également beaucoup de cette . Vous ne manquerez pas de personnes dont les plus de 8 ans d'expérience équivaut à faire le strict minimum pour ne pas se faire virer. Si vous trouvez un mentor ou quelqu'un qui est vraiment fort, gardez-le autant que vous le pouvez car il est moins courant que cela ne devrait être.

Ai-je tort de m'attendre à un bon apprentissage d'une entreprise?

Les gens à qui apprendre sont là-bas et ils sont dans certaines entreprises. Vous semblez être confronté à un dilemme commun et, pour paraphraser les gars de .NET Rocks, cela vaut la peine de réfléchir: "Changez de société ... ou changez de société."

En d'autres termes, si vous croyez en certaines approches et principes fondamentaux et que vous vous trouvez constamment incapable de les vendre et que vous gagnez la liberté de faire et d'apprendre des choses que vous voulez faire et apprendre, il vaut la peine d'envisager une recherche d'une entreprise qui soit meilleure digne de vous.

Erik Dietrich
la source
1
J'ai montré une démo de toutes les nouveautés. ils sont encore mal à l'aise. voir ma réponse mise à jour
Ravi Gadag
1
Il me semble que vos idées seraient probablement une amélioration de ce qui existe. La prochaine étape consiste à comprendre pourquoi ils se font rejeter. Vous n'avez pas construit assez de représentants avec les seniors? Ils sont paresseux? Miscommunication? Pourriez-vous faire un meilleur cas ou pourriez-vous obtenir votre chemin après avoir fait vos preuves? Si c'est le cas, le vider de son contenu pourrait être une bonne expérience. S'ils sont simplement paresseux et désintéressés, il se peut que non.
Erik Dietrich
1
Ils sont désintéressés.
Ravi Gadag
6
@RaviG: Bien sûr, ils sont désintéressés. Vous êtes un nouveau développeur, désireux de plaire, avec des yeux bien plus gros que votre estomac ... et vous essayez de dire à vos développeurs quoi faire. C’est déjà assez grave que la direction ait chaque jour une nouvelle idée sur la façon de changer l’ensemble du produit ... un nouveau type? pfft. Va faire quelque chose.
Steven Evers
19

J'écrirai cela de mon point de vue en tant que développeur senior (ou insérerai tout autre titre sophistiqué que vous aimez ici) qui fonctionne fréquemment avec des développeurs juniors.

C'est probablement une pénurie à la fois chez vous et chez les développeurs seniors.

Une chose que beaucoup de développeurs juniors ne comprennent pas, c’est que si vous (les juniors) insistez pour utiliser les nouvelles technologies, de nouvelles façons de faire les choses, dire à l’équipe qu’ils ne le font pas correctement , etc. L’équipe rend compte à la direction de la livraison et est invitée par la direction à fournir de nouvelles choses aussi rapidement que possible pour que l’entreprise gagne le plus d’argent possible (ou offre les meilleurs résultats pour le client / client).

Parfois, les méthodes éprouvées de diffusion dépassent tout juste le risque de mettre en œuvre [insérer une technologie géniale ici] . Des délais serrés, trop de travail et une lourde charge de travail signifient que nous le faisons depuis plus de 8 ans. Nous le faisons également cette fois-ci.

Vous devez être en mesure de démontrer à l'équipe que ce que vous proposez aura des avantages pour elle et pour l'entreprise à long terme. Sinon, vos collègues n'accepteront pas l'adhésion de leurs collègues et ils ne pourront pas le vendre à l'équipe de direction pour obtenir l'autorisation de le faire fonctionner.

Suis-je trop agressif face aux changements que je propose?

Sans connaître toutes les circonstances, vous pourriez être. Simplement dire aux gens que A est meilleur que B alors nous devrions utiliser A ne tient pas grand-chose. Vous devez aller faire quelque chose pour montrer pourquoi c'est mieux. Il n’est pas nécessaire que ce soit grand, même un petit composant ou une application qui montre que la façon de le faire que vous proposez devrait être plus que suffisante. Vous devez ensuite le présenter et être prêt à tenir tête aux critiques de votre équipe.

Même en tant que développeur senior, je dois le faire avant de pouvoir convaincre mes collègues que la nouvelle façon de faire les choses est meilleure.

À quoi dois-je m'attendre des responsables de développement seniors ayant plus de 8 ans d'expérience?

Comme d'autres l'ont dit, plus de 8 ans d'expérience ne signifie pas nécessairement que vous êtes fantastique. Mais en général, vous devriez être en mesure d’apprendre beaucoup de choses de la part de quelqu'un qui a été dans les pièges pendant un certain temps; vous pourrez peut-être aussi leur apprendre quelque chose.

Les gens sont des gens et tout le monde a un ego (certains plus gros que d’autres) et il n’ya rien de pire que le nouveau qui arrive et vous dit que vous avez mal fait votre travail depuis plus de 8 ans. Dans le même temps, un développeur senior (un bon développeur) devrait être en mesure de prendre des critiques constructives et de pouvoir expliquer les raisons de ses décisions.

Ai-je tort de m'attendre à apprendre et à acquérir l'expérience d'une entreprise?

Ne pas utiliser les dernières technologies et fonctionnalités ne signifie pas que vous n’apprenez et n’acquérez pas d’expérience au sein de votre entreprise. L'expérience est l'expérience. Parfois, connaître l'ancienne façon de faire peut vous aider à mieux comprendre pourquoi la nouvelle méthode est meilleure. Cela vous aide également à démontrer pourquoi la nouvelle méthode est meilleure, car vous comprenez les deux et pouvez articuler un argument plus convaincant lorsque vous essayez de le vendre. Personnellement, je n'utilise pas les choses les plus récentes et les plus réussies sur lesquelles je travaille en ce moment - mais j'apprends toujours de nouvelles choses tous les jours et cela a toujours belle apparence sur mon CV.

Cela dit, si l'entreprise ne convient pas vraiment et que tout le reste échoue, vous voudrez peut-être chercher un nouvel endroit où travailler.

Déco
la source
En abordant votre premier point, je pense que cela constitue un écart par rapport aux développeurs principaux. Comment un développeur junior peut-il comprendre toutes les implications de ses efforts pour les nouvelles technologies s'il ne le lui explique pas? il faut aussi trouver un juste équilibre entre s'en tenir à la technologie fiable et laisser les développeurs juniors apprendre de nouvelles choses (pour être sûr qu'il peut y avoir beaucoup d'apprentissage qui peut se produire dans la sphère de la technologie fiable)
Rudolf Olah
12

Pensez à cela comme une énorme opportunité.

Souvent, les promotions ne proviennent pas (et ne devraient pas) du nombre d'années que vous avez investies dans une entreprise. Vous pensez avoir de très bonnes idées et vos supérieurs / pairs ne veulent pas écouter.

Voici une stratégie:

  1. Faire quelque chose de génial
  2. Rassemblez des statistiques fiables sur la qualité de votre travail (cette étape est essentielle)
  3. Faites-en la démonstration, avec vos mesures, à tous les membres de votre entreprise (propriétaire / responsable / seniors / représentants des ventes - tous ceux que vous pouvez mettre la main sur)
  4. Profit

Et je ne veux profitpas être un vague "je gagne". L'étape 4 correspond à l'un des éléments suivants, ou à tous:

  1. Promu
  2. Une augmentation
  3. Un bonus

Soit avec votre entreprise, soit avec une nouvelle qui peut apprécier vos talents et les métriques étonnantes que vous avez sur votre CV.

Je l'appelle "être génial" - et ça marche .

Anecdote: Je ne suis pas toujours génial, mais j'essaie de l'être et j'ai exécuté les étapes cinq fois (2 promotions, 3 nouveaux emplois; tous avec des augmentations de salaire substantielles).

Dans cet esprit, je devrais probablement répondre directement à vos questions:

Suis-je trop agressif face aux changements que je propose?

Avez-vous déjà réalisé quelque chose de génial, avec des métriques et des exemples montrant à quel point c'est génial? Il y a un vieil adage (crass, comme il peut être) ...

Ideas are like assholes; everyone's got one, and they all stink

Va faire quelque chose.

À quoi dois-je m'attendre des responsables de développement seniors ayant plus de 8 ans d'expérience?

Sérieusement? Vous devriez vous attendre à rien. Mais essayez d'apprendre tout ce qu'ils savent. Posez des questions, examinez leur travail en privé, écoutez quand ils parlent et réfléchissez de manière critique à ce qu'ils disent. Ils sont l'expérience dans une boîte ... euh ... le corps. Essayez de les ouvrir et d'apprendre. Mon meilleur ami est un développeur brillant, et je lui dis activement que j'essaie toujours d'apprendre le plus possible avec lui.

Ai-je tort de m'attendre à apprendre et à acquérir l'expérience d'une entreprise?

Absolument pas. Cela ne signifie pas que vous ne pouvez pas apprendre à ne pas faire. Les gens vont faire des erreurs, tirer des leçons des erreurs de votre entreprise et des vôtres.

Steven Evers
la source
3
Cela peut se retourner si le reste de l'équipe n'est pas à un niveau capable de reconnaître votre génialité ou de se sentir menacé par celle-ci.
user16764
@ user16764: Pourriez-vous être un peu plus précis sur ce à quoi ressemble ce scénario? J'ai eu les deux réponses, et toutes mes solutions impressionnantes n'ont pas été reprises par l'équipe, mais elles n'ont jamais été un retour en arrière.
Steven Evers
J'ai essayé cela quand j'étais dans une situation similaire à celle du PO. Ensuite, j'ai été soumis à: a) que vérifie-t-on toutes les 15 minutes, "que fais-tu exactement à cette seconde", b) des coups de gueule de 5 minutes consistant à crier: "Vous n'êtes pas avec nous!" encore et encore, c) se faire dire de se taire (ou plus précisément, que je "me faisais détourner") chaque fois que je disais une phrase, et d) me faire virer pour la raison que "la direction prise par la compagnie dans a changé ". Le fait que ce que j'ai fait était nécessaire à la livraison n'a pas été contesté, mais n'a pas non plus été reconnu.
user16764
1
@ user16764: Avez-vous rassemblé des données fiables sur l'efficacité de votre solution et obtenu un emploi correspondant à celui-ci sur votre CV? (edit: btw, c'est totalement f'd que les gens l'ont fait)
Steven Evers
1
@ user16764: Si vous pouvez montrer de manière objective, avec des faits concrets, que dans ce cas particulier, ce que vous avez fait est génial, puis que les gens essaient de vous mettre en ligne pour faire ce que tout le monde fait, trouver un nouvel emploi, sérieusement. Vous ne pouvez pas entraîner tout le monde vers l’excellence et l’apprentissage tout au long de la vie, mais il est certain qu’ils peuvent vous entraîner à l’inverse.
Christopher Creutzig
4

Je pense que vous devez faire preuve de créativité. Commencez par demander des demandes de projets parallèles que vos aînés ont repoussés. En travaillant sur quelque chose de façon indépendante (ou mieux, faites appel à un autre développeur junior) et vous pouvez dès le début appliquer beaucoup de nouveaux éléments. Ne soyez pas surpris si vous découvrez que tout n'est pas pour le mieux.

Une autre approche consiste à créer votre propre branche de code et à suivre un processus de refactorisation. Je ne me lancerai peut-être jamais dans la production en fonction de ce que vous avez dit, mais au moins, vous améliorerez vos compétences.

Qui sait, ils verront peut-être comment vous rendre le travail de chacun plus facile et ils comprendront la véritable utilisation de la «paresse» dans la programmation.

Si tout le reste échoue, mettez le nouvel ensemble de compétences sur votre CV et commencez à chercher un autre emploi.

JeffO
la source
1

Si quelqu'un travaille comme programmeur depuis +8 ans, cela ne veut pas dire qu'il est un bon programmeur. Qu'est-ce qui fait un bon programmeur serior programmeur à mon avis? C'est la volonté de partager non seulement des expériences, mais aussi d'apprendre de nouvelles idées, techniques, technologies, etc. C'est une volonté de s'améliorer constamment. Beaucoup de programmeurs dits "seniors" sont empilés dans de vieux schémas de programmation fonctionnelle à partir de langages disparus. Quelque chose comme de nouveaux concepts et idées ne sont tout simplement pas pour eux, car ils n'en ont pas besoin. Ils ont eu leur "expérience".

La volonté de s'améliorer et d'apprendre est beaucoup plus importante que des années d'expérience. Un développeur junior qui veut apprendre est bien meilleur pour une entreprise qu'un vieux développeur "senior" qui "sait" déjà tout.

Adronius
la source
1

Travaillez-vous dans mon entreprise?

Non, mais sérieusement, cela semble être un fil conducteur dans de nombreuses grandes entreprises. Le changement est difficile et coûteux. Parfois, vous ne savez pas vraiment combien il vous en reste et il est trop tard pour revenir en arrière.

Par exemple, ma société est toujours en train de migrer des écrans centraux cobol vers java. Il est difficile de vendre quelqu'un sur Spring ou JSF alors qu'il tente encore de mettre ses technologies à jour avec les normes d'il y a dix ans. Donc, je vais vous dire ce que j’ai fait et qui a eu un succès limité (je suis un développeur junior aussi). Soyez l'exemple. Il ne suffit pas que vous connaissiez votre avantage, vous devez le prouver. Lorsque tous les autres sont en train de rigoler, apportez un livre à lire si vous avez du temps libre. Et faites-en une de ces technologies que vous souhaitez implémenter. S'ils vous voient le lire pendant qu'ils regardent youtube (honnêtement, votre unité des opérations n'est pas surpris et que des gens se font virer), ils seront plus enclins à croire que vous savez de quoi vous parlez, mais peuvent même vous demander de quoi vous parlez. en train de lire.

À titre d'exemple, je vais vous parler de mon expérience avec mon architecte principal. Gars intelligent, mais généralement pas intéressé par les nouvelles technologies. Je lui ai demandé comment faire quelque chose dans CVS (notre contrôle de version) et lui ai dit: "Oh, j'ai l'habitude d'utiliser la subversion, et ils le font ainsi. Merci pour votre aide." Cela a conduit à plusieurs conversations sur CVS et Ant vs. SVN et Maven, qui l'ont amené à emprunter quelques livres dans ma bibliothèque pour vérifier. Résultat final: nous allons passer aux nouveaux systèmes au cours de cette année. La clé est d’être ouvert et utile sans indiquer qu’ils agissent mal. Après tout, il y a peut-être beaucoup de meilleures façons de le faire, mais si cela fonctionne correctement, ils ne le font pas mal. Tout type de manque de respect vous conduira dans l’eau chaude dans la plupart des cas, alors faites attention à cela.

S'ils ne sont tout simplement pas réceptifs, sachez que vous êtes dans un domaine en pleine demande. Si votre curieux et un apprenant rapide, vous trouverez un autre emploi, vous en apprécierez probablement beaucoup plus. Ce qui est aussi important que l'argent pour moi. N'oubliez pas de mentionner dans toutes les interviews: "Oh, vous utilisez la technologie xxx? C'est génial, j'ai toujours voulu l'utiliser et essayer dans mon ancienne société." Aimez-les quand vous avez de l'enthousiasme pour ce qu'ils font.

Sedaition
la source
0

Je pense que vous avez raison dans votre agressivité. C’est un grand plaisir de travailler avec des passionnés et un châtiment de travailler avec des morts mentaux. 8 ans d'expérience ne signifie rien. Bien sûr, vous pourriez ne pas avoir raison. Les nouvelles technologies sont souvent étroitement liées au marketing et ne sont pas toujours meilleures. Mais si vous n’avez pas raison, les personnes âgées devraient vous expliquer où elles se trompent. Sinon, vous n'obtenez aucun avantage de votre travail. Peut-être que vous êtes jeune et chaud. Si c'est le cas, c'est votre avantage. Ne passez pas votre temps au travail où vous ne pouvez pas grandir. Préoccupation de trouver un nouvel emploi, où vous pourrez discuter de vos solutions et obtenir les réactions des autres.

éternité
la source