123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225 |
- <!doctype html><!-- This is a valid HTML5 document. -->
- <!-- Screen readers, SEO, extensions and so on. -->
- <html lang="fr">
- <!-- Has to be within the first 1024 bytes, hence before the `title` element
- See: https://www.w3.org/TR/2012/CR-html5-20121217/document-metadata.html#charset -->
- <meta charset="utf-8">
- <!-- Why no `X-UA-Compatible` meta: https://stackoverflow.com/a/6771584 -->
- <!-- The viewport meta is quite crowded and we are responsible for that.
- See: https://codepen.io/tigt/post/meta-viewport-for-2015 -->
- <meta name="viewport" content="width=device-width,initial-scale=1">
- <!-- Required to make a valid HTML5 document. -->
- <title>Recrutement — David Larlet</title>
- <meta name="description" content="À chaque étape la question est essentiellement « Est-ce qu’on veut travailler ensemble ? pourquoi ? qu’est-ce qui pourrait coincer ? ». À l’entretien technique on peut éventuellement ajouter « Où positionner le candidat par rapport aux salariés actuels au niveau compétences et rémunération ? ». Le reste c’est de la littérature.">
- <!-- That good ol' feed, subscribe :). -->
- <link rel="alternate" type="application/atom+xml" title="Feed" href="/david/log/">
- <!-- Generated from https://realfavicongenerator.net/ such a mess. -->
- <link rel="apple-touch-icon" sizes="180x180" href="/static/david/icons2/apple-touch-icon.png">
- <link rel="icon" type="image/png" sizes="32x32" href="/static/david/icons2/favicon-32x32.png">
- <link rel="icon" type="image/png" sizes="16x16" href="/static/david/icons2/favicon-16x16.png">
- <link rel="manifest" href="/static/david/icons2/site.webmanifest">
- <link rel="mask-icon" href="/static/david/icons2/safari-pinned-tab.svg" color="#07486c">
- <link rel="shortcut icon" href="/static/david/icons2/favicon.ico">
- <meta name="msapplication-TileColor" content="#f7f7f7">
- <meta name="msapplication-config" content="/static/david/icons2/browserconfig.xml">
- <meta name="theme-color" content="#f7f7f7" media="(prefers-color-scheme: light)">
- <meta name="theme-color" content="#272727" media="(prefers-color-scheme: dark)">
- <!-- Documented, feel free to shoot an email. -->
- <link rel="stylesheet" href="/static/david/css/style_2021-01-20.css">
- <!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. -->
- <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
- <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
- <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
- <link rel="preload" href="/static/david/css/fonts/triplicate_t3_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
- <link rel="preload" href="/static/david/css/fonts/triplicate_t3_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
- <link rel="preload" href="/static/david/css/fonts/triplicate_t3_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
- <script>
- function toggleTheme(themeName) {
- document.documentElement.classList.toggle(
- 'forced-dark',
- themeName === 'dark'
- )
- document.documentElement.classList.toggle(
- 'forced-light',
- themeName === 'light'
- )
- }
- const selectedTheme = localStorage.getItem('theme')
- if (selectedTheme !== 'undefined') {
- toggleTheme(selectedTheme)
- }
- </script>
-
- <body class="remarkdown h1-underline h2-underline h3-underline em-underscore hr-center ul-star pre-tick" data-instant-intensity="viewport-all">
-
-
- <article>
- <header>
- <h1>Recrutement</h1>
- </header>
- <nav>
- <p class="center">
- <a rel="prev" href="/david/2021/03/22/" title="Publication précédente : JavaScript-less">← Précédent</a> •
- <a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use>
- </svg> Accueil</a>
- • <a rel="next" href="/david/2021/03/24/" title="Publication suivante : Rareté">Suivant →</a>
- </p>
- </nav>
- <hr>
-
-
- <blockquote>
- <p>À chaque étape la question est essentiellement « <mark>Est-ce qu’on veut travailler ensemble  ?</mark> pourquoi  ? qu’est-ce qui pourrait coincer  ? ». À l’entretien technique on peut éventuellement ajouter « Où positionner le candidat par rapport aux salariés actuels au niveau compétences et rémunération  ? ». Le reste c’est de la littérature.</p>
- <p><cite><em><a href="https://n.survol.fr/n/longueur-du-processus-de-recrutement">Longueur du processus de recrutement</a></em> (<a href="/david/cache/2021/b50e973ef4e131098b91c9d99cb69a5a/">cache</a>)</cite></p>
- </blockquote>
- <p>Ma ligne de temps pour une candidature au <abbr title="Canadian Digital Service">CDS</abbr>-<abbr title="Service Numérique Canadien">SNC</abbr> :</p>
- <ul>
- <li><a href="/david/2021/01/22/" title="Tentation">22 janvier</a> : Yannick poste <a href="https://numerique.canada.ca/join-our-team/positions/d%C3%A9veloppeur-de-logiciel-senior-principal-e-python/">un lien</a> (<a href="/david/cache/2021/b7829aa5073173cca4ed3f4ea23e767f/">cache</a>) sur le chat interne de <a href="http://scopyleft.fr/">Scopyleft</a> ;</li>
- <li>25 janvier : j’applique (en bon québécois) après 5 années d’hésitations pour de nombreuses raisons — je suis rappelé dès le lendemain ;</li>
- <li>27 janvier : rencontre avec la personne dédiée à mon recrutement (30 min), on échange un peu sur mon parcours et sur ce que je pourrais faire au <a href="https://digital.canada.ca/">CDS</a>-<a href="https://numerique.canada.ca/">SNC</a>, je me rends compte que je n’ai jamais passé d’entretien de recrutement à proprement parler — je suis rappelé le 2 février ;</li>
- <li><a href="/david/2021/02/04/" title="Chance">4 février</a> : rencontre en anglais (1 h) avec deux personnes sur les <em>Core Values</em>, j’apprécie beaucoup que ces sujets soient abordés avant même de parler de technique, on parle d’humanité, d’empathie, d’inclusion — je suis rappelé le 16 février ;</li>
- <li>17 février : rencontre en anglais (1 h 30 min) avec deux personnes sur les <em>Technical Skills</em>, je raconte certaines expériences, on évoque des scénarios, c’est relativement équilibré comme discussion et je ne peux m’empêcher de voir des parallèles avec ce qui se fait (ou pas) chez <a href="https://beta.gouv.fr/">betagouv</a> — je suis rappelé le 1<sup>er</sup> mars ;</li>
- <li>10 mars : rencontre en français (1 h 30 min) avec deux personnes sur les <em>Technical Skills</em> encore une fois, j’apprécie le fait que ce ne soit <a href="https://medium.com/swlh/why-senior-engineers-hate-coding-interviews-d583d2855757">pas un test technique</a> (<a href="/david/cache/2021/cfe6353c663f062eb2e6ccfcace889ef/">cache</a>) mais un échange horizontal sur des situations plus ou moins fictives et les pistes de résolution associées ;</li>
- <li>23 mars : courriel m’indiquant que je ne suis finalement pas retenu.</li>
- </ul>
- <p>Ce qui n’est pas explicite avec ces dates, c’est le stress diffus avec de gros <em>gros</em> pics sur une période de plusieurs mois. C’est l’incapacité à travailler lorsque j’ai un entretien dans la journée. Ce sont les doutes entre chaque session avant d’attendre un retour qui arrive plusieurs jours après. Ce sont les questionnements au moment de la préparation, les remises en question de mes capacités.</p>
- <p>Je comprends l’intérêt de tester la motivation dans la durée mais je me demande aussi si un tel processus ne ferme pas la porte à des personnes moins privilégiées, moins en confiance, dans une situation moins stable.</p>
- <p>Au cours de ce processus, la <a href="https://jacobian.org/series/unpacking-interview-questions/">série de billets</a> de Jacob m’a été d’une grande aide. Le <a href="https://eng-hiring.18f.gov/">guide de 18F</a> m’a beaucoup rassuré aussi pour avoir une idée du potentiel enchainement au complet. Et bien sûr, le <a href="https://cds-snc.github.io/technical-playbook-manuel-technique/">Technical Playbook</a> (<a href="https://cds-snc.github.io/technical-playbook-manuel-technique/fr/">version française</a>) du CDS-SNC lui-même.</p>
- <p>Sur une note positive, j’aurais beaucoup appris au cours de ce parcours, surtout sur moi. La relation au stress, à la confiance en moi mais aussi des réflexions sur le plus long terme. <strong>Ce que je suis prêt à changer dans ma vie</strong>, la dose de liberté que je peux/veux réduire, les libérations et les contraintes que cela m’apporterait. Au fil du temps, j’ai pu affiner mes questions/attentes aussi, afin de mieux connaître la structure et les façons de fonctionner. Je suis reconnaissant des personnes qui ont pris le temps de s’intéresser à ma candidature et qui ont été vraiment bienveillantes durant ce parcours.</p>
- <p>En bonus, je crois que ça me permet de travailler mon acceptation de l’échec… et du contentement. J’espère néanmoins que ce sera le premier <em>et</em> le dernier parcours de recrutement de ce type que j’aurais à faire dans ma vie. Sans aigreur, ce n’est pas un processus qui me semble être adapté à ma façon de rejoindre une structure/équipe. Je crois que j’ai besoin de <em>faire</em> et d’<em>être</em> avec les personnes car l’hypothétique résiste rarement à l’épreuve du réel. Mais peut-être que cette démarche prend trop de temps ?</p>
-
- <blockquote lang="en">
- <p>How many hours does it take to hire someone, from approval of the open position to their first day? It takes <strong>about 100 person-hours</strong>, and that’s about a best-case scenario.</p>
- <p><cite><em><a href="https://jacobian.org/2021/mar/11/hours-to-hire/">How Long Does It Take to Hire Someone?</a></em> (<a href="/david/cache/2021/e7dd6d41e04bcbf69d3bf09bce827e4c/">cache</a>)</cite></p>
- </blockquote>
-
-
- <nav>
- <p>
-
- <a href="/david/2021/incompetence/"
- title="Liste de tous les articles associés à cette étiquette"
- >#incompétence</a>
-
- <a href="/david/2021/transformation/"
- title="Liste de tous les articles associés à cette étiquette"
- >#transformation</a>
-
- <a href="/david/2021/travail/"
- title="Liste de tous les articles associés à cette étiquette"
- >#travail</a>
-
- <a href="/david/#tags"
- title="Liste de toutes les étiquettes existantes"
- ><svg class="icon icon-tags">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-tags"></use>
- </svg> tous ?</a>
- </p>
- </nav>
-
- <nav>
- <p class="center">
- <a rel="prev" href="/david/2021/03/22/" title="Publication précédente : JavaScript-less">← Précédent</a> •
- <a href="/david/2021/" title="Liste des publications récentes">↑ En 2021</a>
- • <a rel="next" href="/david/2021/03/24/" title="Publication suivante : Rareté">Suivant →</a>
- </p>
- </nav>
- </article>
-
-
- <hr>
-
- <footer>
- <p>
- <a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use>
- </svg> Accueil</a> •
- <a href="/david/log/" title="Accès au flux RSS"><svg class="icon icon-rss2">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-rss2"></use>
- </svg> Suivre</a> •
- <a href="http://larlet.com" title="Go to my English profile" data-instant><svg class="icon icon-user-tie">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-user-tie"></use>
- </svg> Pro</a> •
- <a href="mailto:david%40larlet.fr" title="Envoyer un courriel"><svg class="icon icon-mail">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-mail"></use>
- </svg> Email</a> •
- <abbr class="nowrap" title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340"><svg class="icon icon-hammer2">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-hammer2"></use>
- </svg> Légal</abbr>
- </p>
- <template id="theme-selector">
- <form>
- <fieldset>
- <legend><svg class="icon icon-brightness-contrast">
- <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-brightness-contrast"></use>
- </svg> Thème</legend>
- <label>
- <input type="radio" value="auto" name="chosen-color-scheme" checked> Auto
- </label>
- <label>
- <input type="radio" value="dark" name="chosen-color-scheme"> Foncé
- </label>
- <label>
- <input type="radio" value="light" name="chosen-color-scheme"> Clair
- </label>
- </fieldset>
- </form>
- </template>
- </footer>
- <script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script>
- <script>
- function loadThemeForm(templateName) {
- const themeSelectorTemplate = document.querySelector(templateName)
- const form = themeSelectorTemplate.content.firstElementChild
- themeSelectorTemplate.replaceWith(form)
-
- form.addEventListener('change', (e) => {
- const chosenColorScheme = e.target.value
- localStorage.setItem('theme', chosenColorScheme)
- toggleTheme(chosenColorScheme)
- })
-
- const selectedTheme = localStorage.getItem('theme')
- if (selectedTheme && selectedTheme !== 'undefined') {
- form.querySelector(`[value="${selectedTheme}"]`).checked = true
- }
- }
-
- const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
- window.addEventListener('load', () => {
- let hasDarkRules = false
- for (const styleSheet of Array.from(document.styleSheets)) {
- let mediaRules = []
- for (const cssRule of styleSheet.cssRules) {
- if (cssRule.type !== CSSRule.MEDIA_RULE) {
- continue
- }
- // WARNING: Safari does not have/supports `conditionText`.
- if (cssRule.conditionText) {
- if (cssRule.conditionText !== prefersColorSchemeDark) {
- continue
- }
- } else {
- if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
- continue
- }
- }
- mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
- }
-
- // WARNING: do not try to insert a Rule to a styleSheet you are
- // currently iterating on, otherwise the browser will be stuck
- // in a infinite loop…
- for (const mediaRule of mediaRules) {
- styleSheet.insertRule(mediaRule.cssText)
- hasDarkRules = true
- }
- }
- if (hasDarkRules) {
- loadThemeForm('#theme-selector')
- }
- })
- </script>
- </body>
- </html>
|