Comment puis-je trouver du travail après avoir obtenu mon diplôme si tout le monde exige de l'expérience ?
Quelle expérience professionnelle dois-je avoir à la fin de mes études pour travailler dans une entreprise technologique ?
Devenir développeur de logiciels peut être à la fois excitant et effrayant, et nous le comprenons tout à fait. Certains d'entre nous sont passés par là et comprennent le défi initial et le besoin de sagesse de la part de quelqu'un qui a déjà vécu cette expérience. Dans cet article, nos XWikiers racontent comment ils ont développé leurs compétences et comment ils se sont préparés à démarrer leur carrière dans des entreprises technologiques.
Mais tout d'abord, comprenons un peu ce que signifie aujourd'hui l'expérience dans le domaine de la technologie.
Que signifie avoir de l'expérience dans le domaine de la technologie ?
Le but de l'expérience est de développer des compétences et de rencontrer des situations où ces compétences sont mises en pratique de manière cohérente afin qu'elles deviennent le modus operandi de la manière dont vous abordez les projets, les tâches et les défis. Les types d'expériences et de compétences varient souvent en fonction de l'entreprise dans laquelle vous souhaitez travailler. Mais il existe une base de référence par rapport à laquelle vous pouvez vous évaluer :
- Compétences spécialisées - Il s'agit des connaissances techniques ou des compétences pratiques. Les diplômes, les certificats ou les licences sont autant de preuves qui certifient vos compétences et indiquent à l'entreprise que vous avez la capacité d'accomplir la tâche demandée.
- Compétences comportementales - Il s'agit de compétences transversales, telles que la capacité à travailler en équipe, à s'organiser ou à résoudre des problèmes et à faire des compromis. Savoir communiquer, par exemple, fait partie des compétences comportementales les plus appréciées, au même titre que l'éthique du travail et l'esprit d'initiative.
Avec plus de 18 ans d'expérience dans le développement de logiciels open-source et 44 employés, nous avons compris qu'il est plus important d'avoir les bonnes compétences comportementales pour le rôle et que n'avoir que des compétences techniques ne sera pas viable à long terme pour vous, votre équipe ou l'entreprise dans laquelle vous voulez travailler. Des études montrent également que les employeurs recrutent en général à la fois pour les compétences comportementales et les compétences spécialisées.
Conseils de notre équipe RH
Il existe également une autre façon de considérer la question de l'expérience. Notre collègue des RH, Ioana, nous a donné un aperçu de la théorie des compétences et de ce qui est le plus souhaitable du point de vue d'une entreprise technologique.
Ioana Însurățelu, Spécialiste en RH et administration
Il existe généralement 2 types d'employés : les employés en forme de « T » et les employés en forme de « V ».
Le concept de l'employé en forme de « T » représente une personne qui est à la fois spécialiste et généraliste. Elle possède des connaissances approfondies dans un domaine (la barre verticale du T) et des connaissances superficielles dans un large éventail d'autres domaines (la barre horizontale). La première est nécessaire pour faire son propre travail, la seconde pour collaborer et communiquer avec les autres. Leur capacité à contribuer, à remplacer et à résoudre les problèmes fait d'eux des personnes très performantes qui peuvent stimuler la productivité globale d'une organisation.
Bien que cela semble intuitif et contribue au travail pluridisciplinaire et interdisciplinaire, il existe un type d'employé encore plus performant, appelé « employé en forme de V ». Comme l'employé en forme de T, celui en forme de V possède des connaissances approfondies dans un domaine. Dans le même ordre d'idées, il possède également des connaissances superficielles dans un large éventail d'autres domaines.
La différence essentielle réside dans la partie intermédiaire. Je pense que ce qui est nécessaire pour travailler efficacement dans les organisations aujourd'hui, ce sont les « connaissances adjacentes », c'est-à-dire les connaissances qui sont liées à l'expertise principale de l'employé. Elles ne sont ni profondes, ni superficielles, mais intermédiaires – d'où la forme en V.
Être un spécialiste, c'est super, mais tant du point de vue individuel que du point de vue de l'organisation, on a besoin de personnes polyvalentes et adaptables.
Bianca Mantu, Assistante RH et administration
De nos jours, les entreprises tech recherchent des candidats qui appliquent un raisonnement analytique et qui peuvent rester concentrés pendant de nombreuses heures ou effectuer des tâches répétitives sans perdre l'intérêt pour ce qu'ils font. L'engagement des employés, une culture d'entreprise forte et la transparence qui favorise un environnement de travail dans lequel les employés peuvent communiquer librement sont aussi importants pour les entreprises technologiques.
Conseils de nos développeurs
En tenant compte de leurs expériences personnelles, nous avons également recueilli l'avis de nos développeurs sur les aspects auxquels les entreprises attachent de l'importance lorsqu'elles recrutent pour des postes techniques :
- Avoir un compte GitHub/GitLab avec quelques projets que vous pouvez montrer ou au moins d'autres projets personnels sur lesquels vous avez travaillé ;
- Une mentalité orientée vers l'apprentissage tout au long de la vie ;
- Une bonne compréhension de la « culture » des technologies de l'information en général et du fonctionnement d'une entreprise ;
- Être gentil et serviable avec les gens. Montrez que vous êtes à l'écoute. Si vous n'êtes pas gentil, beaucoup de gens ne travailleront pas avec vous. Parce que vous devez...
- ...être capable de travailler en équipe, avec d'autres personnes ;
- Montrer aux autres que vous savez négocier et raisonner dans une discussion ;
- Il est utile d'avoir le savoir-faire
Mais n'essayez pas de faire croire que vous savez quelque chose si vous ne le savez pas. Cela se voit et peut constituer un signal d'alarme pour certaines entreprises. Il est toujours possible d'apprendre au fur et à mesure des besoins, mais il est très utile d'avoir déjà des connaissances dans les domaines d'activité de l'entreprise. Si vous voulez être embauché par un (grand) projet open-source, la meilleure façon de procéder est d'être un membre reconnu de ce projet parce qu'ils essaieront d'embaucher des membres de leur communauté.
Comment acquérir de l'expérience dans le domaine de la technologie
Entrons dans le vif du sujet de la myriade de façons dont vous pouvez acquérir de l'expérience technique :
Contribuer à des projets open-source
Acquérir de l'expérience en informatique peut simplement commencer par une contribution à des projets open-source, car vous avez accès au code de plusieurs projets et à la documentation, vous apprenez à rédiger vous-même de la documentation, vous pouvez voir comment d'autres ont résolu une erreur, un bogue ou d'autres problèmes, vous vous habituez aux pratiques et aux normes de développement de diverses communautés de logiciels open-source. C'est aussi un excellent moyen de se familiariser avec différentes technologies, outils et compétences. Vous pouvez faire partie d'une communauté globale, créer des logiciels qui ont un impact sur des millions de personnes et gagner de la confiance en vos capacités. Vous pouvez prendre l'exemple de XWiki et des différentes façons de vous impliquer dans la communauté open-source XWiki.
Travailler sur des projets personnels qui vous tiennent à cœur
Vous pensez peut-être à la manière de gagner votre vie, mais trouver la passion, le sens de l'accomplissement et le sens de la vie sera le carburant et le soutien de votre carrière à long terme. C'est en faisant les choses que vous vous découvrirez une passion, et non l'inverse. Par conséquent, prenez des sujets qui vous passionnent, voyez ce qui manque et commencez à réfléchir à la manière dont vous pourriez améliorer quelque chose d'existant ou apporter une toute nouvelle solution au monde !
Cela peut être très bien combiné avec la mise en réseau dans diverses communautés de développeurs où vous pouvez montrer et même enseigner à vos pairs et inspirer les autres avec votre histoire.
Participer au programme Google Summer of Code
Ou, d'ailleurs, à n'importe quel programme ou concours basé sur un tuteur et lié à votre domaine. Tout en essayant de trouver des solutions, de vous documenter, de trouver des idées et d'expérimenter avec le code, vous apprendrez également à travailler en équipe (de nombreux concours sont basés sur le travail en équipe), à présenter vos idées, à vous faire des amis, à apprendre comment d'autres abordent les défis techniques et à les relever. Vous pourrez alors ajouter ce type de participation proactive à votre CV. De plus, vous ne saurez jamais qui vous remarquera et vous proposera un stage. Améliorez votre niveau dans tous les domaines !
D'ailleurs, XWiki proposera également un mentorat lors de la GSoC 2023 et nous serions heureux que vous rejoigniez notre communauté open-source pour apprendre et contribuer en même temps. Vous pouvez lire sur xwiki.org les expériences que nos stagiaires ont eues lors des éditions précédentes.
Participer à des hackathons
Comme l'idée précédente, les hackathons sont des compétitions d'équipe plus condensées, basées sur des défis. En plus d'être très populaires dans le domaine de la technologie et certains d'entre eux étant même organisés par des entreprises technologiques, vous pouvez relever le défi d'un cran et tester votre réaction à l'élaboration d'une solution sous la pression du temps.
Stages
C'est une évidence, mais c'est aussi un moyen de commencer à vous faire connaître dans le secteur (si vous postulez localement, dans votre ville) et de mettre en pratique ce que vous avez appris à l'université si vous étudiez dans un domaine lié à la technologie. Voici un conseil de notre part : approchez vous-même les entreprises et demandez-leur si elles proposent des programmes de stage. La proactivité permet d'aller très loin dans la vie en général.
Réexaminer vos expériences
Si vous êtes du genre à avoir vécu des expériences très différentes, une chose à faire est de voir quelles leçons et quelles compétences vous avez acquises en cours de route. Ces expériences peuvent sembler sans rapport entre elles, mais il est possible qu'en y regardant de plus près, vous ayez acquis des compétences précieuses applicables à la technologie. Regardez cette vidéo sur la façon de transformer des « emplois sans rapport » en une carrière. Il est parfois nécessaire de changer de point de vue pour faire de la place aux connaissances et aux compétences qui existaient déjà. Même si vous n'avez pas d'expérience directe dans le domaine de la technologie, il existe de nombreux types d'emplois qui recoupent plusieurs domaines. C'est pourquoi le fait de comprendre le fonctionnement des entreprises vous aide à repérer des opportunités que d'autres ne voient pas.
Développer votre portfolio
Si vous n'avez pas de compte sur GitHub/GitLab pour présenter votre engagement à long terme en matière d'apprentissage, de compétences et de qualifications, ayez au moins un portfolio séparé.
Le pouvoir du networking
Il s'agit moins d'expérience que de rencontres avec des personnes déjà engagées dans la voie professionnelle qui vous intéresse et qui peuvent devenir vos futurs mentors, collègues de travail et managers. Vous pouvez également trouver des personnes qui suivent un parcours professionnel similaire et vous aider, vous soutenir et vous encourager mutuellement tout au long de votre parcours. Nous vous recommandons d'assister à des événements locaux et à des réunions sur l'informatique et de commencer à « sentir » la culture de l'informatique, plutôt que de vous contenter de lire des articles à ce sujet. Cela ne se fera pas du jour au lendemain, alors soyez-en conscient.
Des conseils précieux des développeurs
Ludovic Dubost, PDG
Il y a plusieurs choses que vous pouvez faire pour acquérir de l'expérience dans le domaine de la technologie. Faites en sorte que vos projets scolaires et personnels soient visibles sur GitHub/GitLab. Par exemple, choisissez un projet dans un domaine que vous aimez au début de vos études et améliorez-le avec ce que vous avez appris à l'école et au-delà (faites des spécifications, développez-en une version améliorée, créez un site web, rendez-le open-source, faites-en une version mobile, etc.) Créez votre propre site web avec votre CV. Formez-vous aux outils utilisés par les entreprises (GitHub/GitLab, suivi des tickets). Une bonne façon de commencer est de contribuer à un projet open-source comme XWiki.
Réfléchissez à qui et à ce pour quoi vous travaillerez. Les informaticiens sont des personnes demandées et donc privilégiées. Vous pouvez choisir la facilité et travailler pour les grandes entreprises qui ont la capacité marketing de proposer de nombreux emplois bien rémunérés dans les technologies en vogue, ou vous pouvez décider de ce qui vous intéresse, de son utilité pour la société, et rechercher les entreprises qui le font. Il s'agit rarement de grandes entreprises. Les petites entreprises peuvent également vous offrir de grandes opportunités d'être une personne clé dans un projet de grande valeur.
Raphaël Jakse, Ingénieur R\&D
Un grand sourire et des courriels enthousiastes lors de la candidature peuvent s'avérer très utiles pour entrer dans une entreprise. Ne racontez pas de conneries aux gens. Il n'y a pas de mal à ne pas savoir quelque chose. Le fait d'être passionné aide vraiment parce que vous apprenez beaucoup d'informations utiles simplement parce que vous êtes curieux et que cela se voit. Mais ce n'est pas nécessaire, ne vous forcez pas à construire des choses par vous-même si vous n'en avez pas envie. Montrer que vous êtes capable d'apprendre et de raisonner sur les choses peut aussi vous mener loin.
En plus, je veux souligner comment le fait de contribuer à des projets de logiciels open-source vous aide sur beaucoup de sujets :
- Lire du code que vous n'avez pas écrit ;
- Repérer et corriger un bogue dans une base de code inconnue ;
- Interagir avec les mainteneurs
Qui sont un peu comme des collègues dans la façon dont vous travaillez avec eux, mais qui ne sont pas payés pour accepter votre contribution Vous apprenez à être poli et modeste
\\ Vous apprenez à vendre votre solution
Ayez vos propres projets. Si vous pouvez avoir des collaborateurs, c'est très bien parce que vous pouvez savoir ce que l'on ressent de l'autre côté, mais vous ne pouvez pas compter là-dessus. C'est bien de « finir » quelques projets et c'est bien de ne pas en finir beaucoup. Expérimentez différentes technologies et différents langages de programmation.
La technologie peut faire beaucoup de mal, vous avez la responsabilité de choisir une carrière dans laquelle vous travaillez sur des choses qui sont au moins quelque peu alignées avec vos valeurs. Réfléchissez à ce que vous choisissez de construire. Si c'est fait correctement, cela peut aussi apporter de bonnes choses et avoir un impact positif sur l'écologie et sur les gens.
Il faut se rendre compte que la technologie est utile aux gens : il s'agit avant tout des gens et de leurs besoins. Il est rare que l'on fasse des choses techniques pour le plaisir de les faire. C'est aussi une question d'argent si vous n'êtes pas assez prudent.
Vous devez être en mesure de communiquer clairement vos idées et vos préoccupations. Ne vous laissez pas abattre par les problèmes avant qu'il ne soit trop tard ! Soyez prêt à recevoir des commentaires négatifs de la meilleure façon possible.
Prenez le temps d'apprendre votre métier. Si vous ne prenez pas ce temps, vous créerez des logiciels gonflés et bogués. Les utilisateurs ne seront pas satisfaits. La Terre ne sera pas contente. Les « black hats » seront heureux. Vous ne serez pas content de vous.
Si possible, quittez les endroits où vous ne vous entendez pas très bien avec les gens ou où vous n'êtes pas satisfait de la façon dont les choses sont faites. D'autres lieux/équipes pourraient mieux vous convenir.
Arnaud Laprévote, Recherche, CryptPad et XWiki Cloud Business
Essayer, échouer, trouver, réessayer, échouer, trouver, allez-y. Un jour, les choses deviendront naturelles. Votre éditeur de code sera au bout de votre doigt. Vous le manipulerez comme un acrobate ou un pilote, et ce sera pareil pour un langage, puis pour un autre.
Soyez curieux ! Demandez, montrez, et ne vous inquiétez pas si vous \pouvez parfois paraître \ridicule ou stupide. La seule question stupide est celle qui n'a pas été posée. Enfin, voyagez, car il est important et fructueux de voir comment les autres font, apprennent et se développent.
Je pense que la curiosité est la clé du travail dans la technologie. Il y a longtemps, sans Internet (vous pouvez le croire ?), je lisais des journaux et des livres techniques. Ma famille est, dans l'ensemble, composée de personnes aimant les livres, l'histoire, la littérature, les journaux et les voyages. Je n'ai jamais vu mon père avec un outil (peut-être une fois avec un tournevis). J'étais donc à l'opposé, très réticent à tout ce qui se rapprochait de la littérature.
Un club de radioamateurs se trouvait au bout de ma rue, et j'ai commencé à 14 ans à écouter leurs conférences très intéressantes sur l'électronique et la modulation. Heureusement, au bout d'un an, un professeur de l'école d'ingénieurs est venu et a commencé à enseigner l'électronique numérique. C'est à partir de là que tout a commencé. Soudure, compréhension de la logique booléenne, programmation d'un processeur Motorola 6800. J'ai eu mon premier ordinateur de poche programmable en basic, puis un Apple 2 à 18 ans. Je me sentais très chanceux. J'ai commencé à programmer de vraies choses, comme un programme permettant à mon père d'imprimer des adresses sur l'étiquette des bâtons. Je vendais l'étiquette à mon père qui avait des centaines de lettres à envoyer régulièrement. Et j'ai continué à apprendre de nouveaux trucs et astuces pendant 30 ans.
C'est peut-être là l'essentiel : accepter que l'on ne sait pas et que l'on doit apprendre encore et encore.
Nikita Petrenko, Développeur support client
Soyez intéressé par le domaine de la technologie. Lisez la documentation officielle et essayez de mettre en œuvre, d'émuler et d'obtenir un résultat similaire. Si vous étudiez déjà, ne craignez rien de ce que vous allez mettre en pratique. J'ai également remarqué que les entreprises technologiques accordent beaucoup d'importance aux capacités de communication, en plus des compétences techniques.
Michael Hamann, Ingénieur R\&D
Apprenez les meilleures pratiques et utilisez ces connaissances pour apporter des contributions de grande qualité aux projets open-source qui vous tiennent à cœur (il doit s'agir de projets que vous utilisez personnellement, sinon il est difficile de rester motivé).
Rencontrez des gens dans le domaine qui vous intéresse et, si possible, assistez à des conférences (comme FOSDEM, mais il y en a aussi beaucoup d'autres plus petites), à des BarCamps ou à d'autres types de rencontres où vous pourrez parler avec ces personnes avant même de chercher activement un emploi.
Pendant mes études, j'ai découvert les logiciels libres et j'ai appris à programmer en lisant des livres et des tutoriels en ligne. J'ai également commencé à contribuer à des projets open-source, ce qui a eu pour effet secondaire d'améliorer mon anglais à l'école. Je me rendais aussi régulièrement aux réunions d'un groupe local d'utilisateurs de Linux. J'ai créé mon propre site web avec un blog. Lors d'une rencontre locale de blogueurs, j'ai rencontré quelqu'un qui (entre autres choses) conseille les entreprises sur l'utilisation des médias sociaux et la rédaction d'un blog, et qui m'a demandé, après avoir terminé mes études, de l'aider sur le plan technique à mettre en place des blogs et à réaliser d'autres projets. Grâce aux BarCamps, j'ai rencontré d'autres personnes pour lesquelles j'ai réalisé des projets par la suite. Je me suis aussi impliqué dans le projet open-source DokuWiki, ce qui m'a permis de développer des fonctionnalités payantes dans certaines extensions DokuWiki pour des clients.
Pour conclure
Comme vous pouvez le voir, il n'y a pas de solution unique, mais c'est plutôt en essayant que vous apprenez ce que vous aimez et que vous commencez à développer les compétences dont vous avez besoin pour votre future carrière. Si vous aimez contribuer à des projets open-source, nous serions ravis de vous rencontrer et de travailler ensemble !