Catégorie : Management

  • [Lecture] Good Mana­ger, Bad Mana­ger: The Process Czar

    Extraits de The Mana­ger’s Path

    Process czars may be obses­sed with agile, Kanban, scrum, lean, or even water­fall methods. They may have a very precise idea of how on-call should work, how code reviews must be done, or how the release process has to operate.

    On m’a appris assez tôt que les livres et les méthodes servaient de cadre de réfé­rence mais que si on fait exac­te­ment comme dans le livre c’est qu’on a loupé quelque chose.

    If you are honest and make it clear that it’s safe to fail and to be imper­fect, that’s often enough to get your process czar to relax a little bit and let some ambi­guity in.

    Je ne l’en­vi­sa­geais pas ainsi avant ma lecture mais c’est assez vrai.

    Je préfère l’ini­tia­tive au mode singe savant. L’ini­tia­tive implique l’échec. Si je veux de l’ini­tia­tive l’échec est forcé­ment accep­table.

    Un process qui rend l’échec inac­cep­table c’est souvent un process qui coupe l’ini­tia­tive ou l’adap­ta­tion locale.

    Indi­vi­duals and inter­ac­tions over processes and tools

    Working soft­ware over compre­hen­sive docu­men­ta­tion

    Custo­mer colla­bo­ra­tion over contract nego­tia­tion

    Respon­ding to change over follo­wing a plan

  • [Lecture] Deci­sion Point: Stay on the Tech­ni­cal Track or Become a Mana­ger

    Extrait de The Mana­ger’s Path

    The deci­sion of whether to be a mana­ger or stay on the tech­ni­cal track is […] incre­di­bly context-speci­fic »

    Je me balance encore entre le CTO très tech­nique et le VP Engi­nee­ring qui parlent essen­tiel­le­ment d’or­ga­ni­sa­tion et d’hu­main. J’ai tenu les deux rôles et je risque de conti­nuer à l’ave­nir.

    Ne croyez pas ceux qui vous disent qu’un mana­ger est forcé­ment un mauvais expert, ou qu’un expert est forcé­ment une bille dans le savoir-être. Ce sont des cari­ca­tures qui entrainent les personnes vers le bas voire incitent les tiers à accep­ter des compor­te­ments inadé­quats.

    On parle de voies mais ce ne sont pas des direc­tions défi­ni­tives. On peut mixer les deux, on peut passer de l’un à l’autre, puis reve­nir.


    La suite du chapitre montre l’ima­gi­naire de ce qu’est un contri­bu­teur indi­vi­duel et la réalité, l’ima­gi­naire de ce qu’est un mana­ger et la réalité.

    Je n’ai rien à citer mais j’aime bien ces deux visions parce que dans les deux j’ai eu des personnes se plaindre d’être dans le scéna­rio « réel ». Oui les tiers ne vous suivront pas. Oui la marge d’ac­tion sera mangée par plein de contraintes. Si vous voulez faire sauter quelques écueils, c’est à vous de le faire, ça sera une part de votre rôle.

  • [Lecture] Mana­ging a Project

    Extraits de The Mana­ger’s Path

    Work through the unknowns until you really feel that there is no more value to be gained in spen­ding time on them.

    La phrase est juste et le diable est dans le « jusqu’où » ainsi que le « quand ».

    Je vois plus souvent de l’ex­cès que l’in­verse, et je le ressens aussi dans ce livre même si je n’ai aucune phrase que sur laquelle je saurais poin­ter un désac­cord si on me le deman­dait.

    On explore les grands sché­mas, voir si quelque chose est simple ou complexe, mais ensuite « there is no more value to be gained in spen­ding time on them ». Le doigt mouillé est large­ment suffi­sant.

    Lais­sez l’in­connu, vous le lève­rez au cours du projet. L’enjeu c’est de prio­ri­ser ce qu’il faut dérisquer en premier. Le plan bougera mais il bougera tôt. Je préfère 1000 fois un plan qui bouge qu’un plan soit disant parfait qui nous aura coûté 20% du projet… et qui ne se révè­lera pas parfait pour autant.

    As things slip (and they always do), keep everyone appri­sed of the status. »

    Pour faire ça il faut cepen­dant fixer des objec­tifs, courts, fréquents. Impos­sible de savoir où on en est si on ne s’est pas d’abord fixé un jalon à atteindre.

  • [Lecture] Mana­ging Projects

    Extraits de The Mana­ger’s Path

    Ce sous-chapitre m’a laissé mal à l’aise au début.

    C’est une expé­rience person­nelle, un vécu raconté à la première personne. Il n’y a donc aucune argu­men­ta­tion possible. Il reste que j’y lis une façon de voir le projet à base de décou­page et d’es­ti­ma­tions qui n’est plus la mienne aujourd’­hui.

    You’ll need to esti­mate project length for your mana­ge­ment team, and give some detail on why you believe things will take that long.

    I had to take this incre­di­bly compli­ca­ted set of tasks and try to figure out which ones depen­ded on other ones. I had to think of all kinds of depen­den­cies. How would we make it work in the complex testing frame­work we depen­ded on? How would we deploy it? When did we need to order hard­ware to test it? How long would inte­gra­tion testing take?

    I’m afraid that I will be held accoun­table and that I could miss some­thing impor­tant in the process that will make the project fail.

    L’au­teure parle de peur, de crainte, de juge­ment du mana­ger, de moments pas fun, pour en tirer que c’est quand même néces­saire mais sans pour autant éclai­rer sur pourquoi.

    Je mets ça sur ma liste à relire. Peut-être que je passe à côté du sujet prin­ci­pal.

    Je retiens toute­fois ce qui suit, avec lequel je suis par contre en plein accord :

    Ulti­ma­tely, the value of plan­ning isn’t that you execute the plan perfectly, that you catch every detail befo­re­hand, or that you predict the future; it’s that you enforce the self-disci­pline to think about the project in some depth before diving in and seeing what happens. […] The plan itself, howe­ver accu­rate it turns out, is less impor­tant than spen­ding time on the act of plan­ning. »

  • [Lecture] Being a Tech Leader 101

    Extraits de The Mana­ger’s Path

    This role requires you to have a good sense of the overall archi­tec­ture of your systems and a solid unders­tan­ding of how to design complex soft­ware. It proba­bly also requires you to be able to unders­tand busi­ness requi­re­ments and trans­late them into soft­ware. »

    J’ai beau­coup parlé commu­ni­ca­tion et un peu prise de respon­sa­bi­lité, proba­ble­ment en me lais­sant guider par les cita­tions. Ici sort le troi­sième aspect qui me semble indis­pen­sable pour celui qui veut passer au-delà du rôle de déve­lop­peur senior : La prise en compte des besoins de l’en­tre­prise.

    Oui il va falloir parler sens commer­cial, stra­té­gie de déve­lop­pe­ment, parte­na­riat, vélo­cité, coûts, et plein d’autres choses que notre qualité tech­nique ou que la fameuse dette tech­nique. Ces deux derniers items ne sont que des outils et pas des fina­li­tés.

    Le senior s’ar­rê­tera à « il faut faire comme ça » alors que j’at­tends des rôles de lead et de staff la reflexion de « oui mais ce dont nous avons besoin aujourd’­hui c’est … ».

    In a heal­thy orga­ni­za­tion, there is no shame or harm in raising issues early.

    Cette petite phrase aurait à mon avis plus de place dans les premiers chapitres mais ça ne fait pas de mal de la rappe­ler.

    Commu­niquer au plus tôt de la façon la plus trans­pa­rente possible. Non seule­ment ça permet­tra de répondre au problème plus tôt, mais ça dimi­nuera le stress de tout le monde.

    La règle : On ne blâmera jamais quelqu’un pour lever de façon construc­tive une alerte, y compris très tôt. On pourra par contre repro­cher de ne pas l’avoir fait.

    As projects move forward, unex­pec­ted obstacles arise. Some­times tech leads are temp­ted to go to heroics and push through these obstacles them­selves, working exces­sive over­time to get it all done.

    J’ai envie de dire « ne le faites pas » mais la raison me pousse à être plus modéré. Ne le faites pas souvent. Faites le unique­ment de façon concer­tée après avoir levé le sujet à l’en­semble de l’équipe. Ne restez pas dans un rôle où vous seriez indis­pen­sable.

    Passé la douzaine je ne veux plus de héros mais des membres d’une équipe qui colla­bore. L’im­pact indi­vi­duel devient moins impor­tant que l’im­pact collec­tif.

  • [Lecture] All Great Tech Leads Know This One Weird Trick

    Extraits de The Mana­ger’s Path

    Having the tech­ni­cal chops and matu­rity is nothing, howe­ver, if you can’t figure out the biggest trick of being a good tech lead: the willin­gness to step away from the code and figure out how to balance your tech­ni­cal commit­ments with the work the whole team needs. You have to stop relying enti­rely on your old skills and start to learn some new skills. You’re going to learn the art of balance. »

    Je pensais trou­ver un passage sur la commu­ni­ca­tion, la moti­va­tion des équipes, le fait de donner du sens.

    Je finis surpris mais assez en accord. La première diffi­culté du lead est de savoir arbi­trer son temps, et c’est bien la compé­tence fonda­men­tale pour réus­sir à chan­ger de rôle.

    Sauter la partie tech­nique c’est ne plus être dedans et ne plus savoir correc­te­ment pilo­ter le projet. Trop s’ar­rê­ter sur la tech­nique est tentant puisque c’est ce qu’on sait faire, mais ça veut dire oublier son propre rôle.

    L’ar­bi­trage n’est pas simple et, parce qu’il varie en fonc­tion des besoins, je doute qu’on arrive un jour à un équi­libre parfait. Si cet équi­libre existe je ne l’ai pas trouvé.

    What’s worse, you’ll often need to balance doing things you know how to do and enjoy doing, such as writing code, with things you don’t know how to do

    Je ne me souviens pas avoir vu de déve­lop­peur senior me disant vouloir être lead. En géné­ral c’est une aspi­ra­tion de junior qui voir le rôle comme une étape de plus sur sa progres­sion. Ces envies dispa­raissent quand on montre une voie de progres­sion en contri­bu­tion indi­vi­duelle.

    La plupart des leads que j’ai vu passer sont des personnes qui y sont allés par besoin. Ce peut être de façon passive, parce qu’on a eu besoin d’un lead et qu’elles étaient le meilleur choix. Ce peut aussi être plus actif, en voulant résoudre les problèmes, et consi­dé­rer que si personne ne le fait ça n’évo­luera pas. Ce peut être enfin juste parce que c’est là qu’elles ont eu l’im­pres­sion d’être le plus effi­cace. Dans les trois cas c’est diffé­rent de « je veux faire ça parce que ça me plait ».

    Il faut que ça plaise mais ce n’est, de mon expé­rience, par le moteur premier et je trouve ça parti­cu­liè­re­ment inté­res­sant. Ça fait sortir une carac­té­ris­tique commune : Le senti­ment de devoir agir et prendre la respon­sa­bi­lité qu’il faut pour ça. Les anglo­phones ont un mot pour ça : owner­ship.

    Part of your leader­ship is helping the other stake­hol­ders, such as your boss and the product mana­ger, respect the team’s focus and set up meeting calen­dars that are not overw­hel­ming for indi­vi­dual contri­bu­tors. »

  • [Lecture] Tech Lead

    Extraits de The Mana­ger’s Path, début du troi­sième chapitre

    Dire qu’on peut progres­ser en carrière sans passer mana­ger devient quasi­ment un lieu commun dans notre métier et tant mieux. Il y a de l’es­pace à prendre au-delà du déve­lop­peur senior.

    The idea that the tech lead role should auto­ma­ti­cally be given to the most expe­rien­ced engi­neer, the one who can handle the most complex features or who writes the best code, is a common miscon­cep­tion

    This is a senior engi­nee­ring role, but it’s a mistake to tie the notion of tech lead to one that boils down to the best or most expe­rien­ced engi­neer on the team. You can’t lead without enga­ging other people, and people skills are what we’re asking the new tech lead to stretch, much more than pure tech­ni­cal exper­tise. Howe­ver, tech leads will be working on one major new tech­ni­cal skill: project mana­ge­ment.

    J’ai parfois l’im­pres­sion d’en­fon­cer les portes ouvertes en disant que le lead n’a pas forcé­ment à être le déve­lop­peur le plus expé­ri­menté, celui avec les compé­tences tech­niques les plus poin­tues, ou celui avec la plus grande exper­tise tech­nique.

    Présenté comme je l’ai fait, j’ai géné­ra­le­ment un accord assez facile mais le revers de la médaille est plus complexe : Mon para­graphe précé­dent n’im­plique pas que le rôle de lead est un rôle moins expert ou de moins haut niveau. Ça sous-entends qu’il faut remettre en cause la hiérar­chie mentale basée sur l’ex­per­tise tech­nique ou la somme des connais­sance tech­niques.

    C’est vrai quand on parle de lead ou de mana­ge­ment mais c’est aussi vrai sur les grilles de progres­sion de contri­bu­tion indi­vi­duelle dès qu’on dépasse le niveau de déve­lop­peur senior.

    I could be the tech lead, despite not being the most senior person, because I was willing and able to take on the respon­si­bi­li­ties of the role, while the rest of my team were more inter­es­ted in staying purely focu­sed on the soft­ware they were writing.

    I had a few advan­tages. For one, I was more than just a good engi­neer. I was a good commu­ni­ca­tor. I could write clear docu­ments, I could give presen­ta­tions without melting down, and I could talk to people in different teams and different roles and explain what was going on. I was also good at prio­ri­ti­zing. I was eager to push work forward and decide what needed to be done next. Finally, I was willing to pick up the pieces and do what needed to be done to make progress

    L’im­por­tant n’est pas de poin­ter l’ex­per­tise, de savoir que vous décou­pez mieux le code ou que vous faites moins d’er­reur d’ar­chi­tec­ture. L’im­por­tant est de savoir quel est l’im­pact que vous avez dans l’équipe.

    Being a tech lead is an exer­cise in influen­cing without autho­rity.

    Je parle habi­tuel­le­ment de rayon­ne­ment. Le terme est parfois compris comme « se rendre plus visible ». Ça compte mais il n’y a pas que ça.

    Vous pouvez avoir un fort impact par votre seule exper­tise tech­nique. C’est possible mais diffi­cile, parce qu’il faudra une sacré exper­tise tech­nique pour justi­fier qu’elle vous fasse passer au niveau suivant. Il est probable que, même avec une exper­tise de pointe, les compé­tences humaines comme la commu­ni­ca­tion avec les autres, votre volonté à prendre des respon­sa­bi­li­tés ou la façon dont vous les gérez, ou encore votre propen­sion à faire gran­dir les personnes autour de vous, vous retienne d’avoir l’im­pact auquel vous préten­dez. Ce sont ces compé­tences là qui vont jouer le plus.

    Howe­ver, this was not an easy sell to the other deve­lo­pers, who wanted to write fun new features

    Tech lead is not the job for the person who wants the free­dom to focus deeply on the details of her own code. A tech lead who does this is not doing her job.

    Il n’y a aucun mal à vouloir être juste un très bon déve­lop­peur, d’ac­cu­mu­ler de l’ex­pé­rience et de l’ex­per­tise. C’est bien­venu. C’est juste que ce qu’on demande à ceux qui veulent aller plus loin est plus que ça.

  • [Lecture] Key Takea­ways for the Mentor

    Extraits de The Mana­­­­­­­ger’s Path

    Senior engi­neers can deve­lop bad habits, and one of the worst is the tendency to lecture and debate with anyone who does not unders­tand them or who disa­grees with what they are saying. To work success­fully with a newco­mer or a more junior team­mate, you must be able to listen and commu­ni­cate in a way that person can unders­tand, even if you have to try seve­ral times to get it right. Soft­ware deve­lop­ment is a team sport in most compa­nies, and teams have to commu­ni­cate effec­ti­vely to get anything done.

    Nous nous préva­lons de culture scien­ti­fique et de favo­ri­ser le débat. En réalité j’ai beau­coup vu de culture d’af­fron­te­ment et de conflit dans notre métier. Le débat est vu comme une oppo­si­tion, avec un gagnant et un perdant, et l’idée que l’objec­tif est de déter­mi­ner qui a raison.

    Je pense qu’on a fait fausse route quelque part et ce para­graphe le met en lumière. Nous devrions mettre en avant l’écoute et la compré­hen­sion plutôt que l’ar­gu­men­ta­tion et l’op­po­si­tion.

    Ce n’est pas qu’une idéo­lo­gique de Bisou­nours. C’est l’idée que la colla­bo­ra­tion prime sur le reste. Avoir raison ne suffit pas. Il faut aussi commu­niquer entre nous, et créer une équipe qui colla­bore effi­ca­ce­ment.

    Souvent il n’y a pas qu’une solu­tion, pas qu’une vérité. Toutes les alter­na­tives ne sont pas fonda­men­ta­le­ment erro­nées. Notre objec­tif ne devrait pas être de prendre le meilleur choix comme s’il était unique, mais de prendre un des bons choix ensemble en favo­ri­sant l’unité et la colla­bo­ra­tion. Est-ce le meilleur ? Peut-être, peut-être pas, mais cette ques­tion est d’une impor­tance telle­ment moindre que les enjeux humains…

    Your career ulti­ma­tely succeeds or fails on the strength of your network. Mento­ring is a great way to build this network. You never know — the person you mentor could provide the intro­duc­tion to your next job, or even come work for you in the future.

    J’ai l’im­pres­sion d’avoir créé la surprise il y a deux mois en ajou­tant « créer un réseau de pairs hors de la société » dans la grille d’at­tentes et de progres­sion de carrière pour mes leads.

    C’est utile pour l’en­tre­prise, parce que ça permet de voir ce qui se fait ailleurs, de progres­ser en se confron­tant aux autres idées, de prendre des bonnes idées et les repro­duire ou au contraire éviter de repro­duire les mauvaises.

    C’est surtout utile pour la progres­sion indi­vi­duelles. J’ai beau­coup souf­fert par le passé de l’iso­le­ment que je me construi­sais moi-même. Je suis mauvais pour prendre l’ini­tia­tive des inter­ac­tions sociales et je n’osais pas poser des ques­tions sur des évidences. Et puis… à qui ?

    Faites-vous votre réseau. Inves­tis­sez du temps pour ça. Faites en sorte de pouvoir poser des ques­tions à des personnes qui travaillent diffé­rem­ment, et à d’autres qui ont déjà parcouru le chemin que vous tentez.

  • [Lecture] Tips for the Mana­ger of a Mentor

    Extraits de The Mana­­­­­­­ger’s Path

    As a mana­ger you help your team succeed by crea­ting clear, focu­sed, measu­rable goals.

    C’est répété un peu partout, expli­ci­te­ment ou impli­ci­te­ment, mais je pense que j’au­rais bien eu besoin de cette lourde répé­ti­tion il y a quelques années donc autant la repro­duire dans mes cita­tions.

    Deve­lo­ping patience and empa­thy is an impor­tant part of the career path of anyone working in a team-based envi­ron­ment. Brilliant, intro­ver­ted deve­lo­pers may not ever want to formally manage, but encou­ra­ging them to mentor 1–1 helps them deve­lop stron­ger exter­nal pers­pec­tives, not to mention their own networks. Conver­sely, an impa­tient young engi­neer may find a degree of humi­lity when tasked with helping an intern succeed

  • [Lecture] Good Mana­ger, Bad Mana­ger: The Alpha Geek

    Extraits de The Mana­­­­­­ger’s Path

    Je n’aime pas trop ce sous-chapitre qui tend à créer une cari­ca­ture du pire sans au final donner des pistes construc­tives à part « atten­tion ».

    Deux points tout de même :

    She believes herself to be the best, and responds only to messages that support that view. The alpha geek tries to create a culture of excel­lence, but ends up crea­ting a culture of fear. »

    C’est mon constant à chaque fois que j’ai croisé ce type de profil. Souvent très tech­nique, parfois excep­tion­nel, mais qui créé la peur et le conflit au lieu de tirer les autres vers le haut.

    Le piédes­tal sur lequel on se place ou sur lequel on est mis malgré nous nous place dans une situa­tion qui ne sera jamais aussi effi­cace que celle de l’hu­mi­lité et de la coopé­ra­tion.

    He has all the answers. She worked on

    C’est inté­res­sant comme l’au­teure fait atten­tion à alter­ner le genre mascu­lin et fémi­nin pour chaque rôle, y compris dans le même para­graphe pour parler de la même personne.

    On n’y porte rapi­de­ment plus atten­tion, et ça se lit faci­le­ment, mais ça permet de décons­truire les stéréo­types.

    J’ai­me­rais voir ça plus souvent.