0:00 On vous a menti. L’informatique n’est pas de l’ingénierie logicielle. En fait, vous pouvez être excellent en informatique et être un très mauvais ingénieur logiciel ou avoir des difficultés en informatique et être un excellent ingénieur logiciel. Mais pour une raison quelconque, la société continue d'agir comme si c'était exactement la même chose. Imaginez dire : « Ouais, ce footballeur, Messi, Ronaldo, la même personne. » Ou LeBron, Michael Jordan, le même basketteur. C'est un blasphème. Et dans cette vidéo, je vais révéler la vérité. Les véritables différences entre l’informatique et l’ ingénierie logicielle. Pourquoi même certains des meilleurs étudiants en informatique ne parviennent pas à décrocher des emplois dans le domaine des logiciels. Comment vous pouvez réellement percer dans l’ingénierie logicielle. Et quel domaine, de l’informatique ou de l’ ingénierie logicielle, l’IA remplacera réellement ? Alors asseyez-vous, prenez des notes et commençons. Il y a longtemps, je suis
0:46 tombé dans le piège de ce mensonge. Donc, pour l'université, j'ai été admis à Georgia Tech pour l' informatique. Mais avant de m’engager, j’ai décidé de visiter le campus pour voir à quoi ressemblait vraiment la vie là-bas. Je me suis promené, j'ai parlé à certains étudiants, nous avons eu des conversations et ils m'ont parlé de leurs grands stages dans le domaine des technologies, dans des entreprises comme Amazon et Google. Et un gars a mentionné qu’il créait des fonctionnalités pour Amazon Music. Un autre faisait partie d’une équipe d’apprentissage automatique chez Google. Et entendre des noms comme Amazon et Google évoqués avec désinvolture comme des endroits où les étudiants pourraient travailler était insensé pour moi. Et étant ce petit lycéen naïf, je me disais : « Wo, l'informatique de Georgia Tech est la voie d'accès à l'ingénierie logicielle des grandes technologies . » Donc dans ma tête, le chemin était clair. J'ai étudié l'informatique ici et dans quelques années, je travaillerai dans l'une
1:33 de ces entreprises pour faire du travail d'ingénierie logicielle. Alors je me suis engagé. J'ai choisi Georgia Tech et je me suis présenté à mon tout premier semestre en tant qu'étudiant de première année en informatique, prêt à coder et à commencer à créer des logiciels. Mais au lieu de Java ou de Python, mon premier cours était l' algèbre linéaire puis les mathématiques discrètes. Et donc je regarde ces tables de vérité PQ , ces preuves logiques et cette théorie des ensembles, un cours lourd de mathématiques et de théorie après l'autre. Et je détestais ça. Je voulais construire des applications, pas des preuves mathématiques abstraites. Et ces mathématiques n’étaient pas que des mathématiques. C'était des mathématiques difficiles. Le genre avec plus de lettres que de chiffres. Le genre où vous passez une heure à prouver pourquoi un est égal à un. le genre où vous calculez le nombre de permutations uniques du mot Mississippi et vous vous demandez littéralement pourquoi quelqu'un s'en soucie.
2:18 Et je me souviens d’être assis là à me demander : est-ce à cela que ressemble l’ingénierie logicielle ? Est-ce que j'ai fait une erreur ? Ai-je choisi la mauvaise spécialisation ? Mais ensuite, environ un mois plus tard, c'était la saison des embauches, et je postulais pour des stages en ingénierie logicielle, je parlais aux recruteurs et je me préparais pour les entretiens. Et ce n’est qu’à ce moment-là que la déconnexion est devenue vraiment évidente. Les intervieweurs ne se souciaient pas du tout des cours que je suivais. Ils ne se souciaient pas de ma moyenne. Ils ne se souciaient pas des tables de vérité PQ ou des preuves mathématiques. Ils se souciaient des langues dans lesquelles je pouvais coder. Puis-je inverser une chaîne ? Ils se souciaient de ma capacité à déboguer un algorithme et à résoudre des problèmes comme un ingénieur. Et cela correspondait davantage à ce que j’attendais de l’ ingénierie logicielle. Et c’est exactement ce que comprenaient les étudiants des classes supérieures qui travaillaient auparavant chez Google et Amazon . Ils ont compris
3:04 comment jouer au jeu de l’ingénierie logicielle , et non à celui de l’informatique. Et une fois que j’ai finalement compris cela, mon état d’esprit a complètement changé. Mes notes en cours d'informatique ont commencé à baisser, mais je ne m'en souciais plus vraiment. Mon objectif n’était pas d’être excellent en informatique. C'était pour percer dans l'ingénierie logicielle. Et une fois que j'ai optimisé cela, j'ai moi-même décroché un stage d'ingénierie logicielle chez Amazon en tant qu'étudiant de première année à l'université cette année-là. Maintenant, vous vous demandez probablement : qu’avez- vous découvert exactement ? Alors, mettons les choses au clair . Informatique versus ingénierie logicielle. L'informatique est l' étude du calcul. C'est en quelque sorte les coulisses de ce qui se passe à l'intérieur d'un ordinateur. Il couvre les algorithmes, les structures de données, les systèmes d'exploitation, les langages de programmation et, oui, beaucoup de mathématiques. Si vous vous spécialisez en informatique, vous pouvez vous attendre à des cours tels que les mathématiques discrètes, l'algèbre linéaire, l'architecture, la
3:50 programmation orientée objet et la théorie informatique, car le diplôme est conçu pour vous donner une compréhension approfondie du fonctionnement des ordinateurs et de l'information à un niveau fondamental. L' ingénierie logicielle, en revanche, est une branche de l'informatique et il s'agit plutôt d'un cheminement de carrière défini. Vous pouvez vous spécialiser en ingénierie logicielle, mais cela est généralement considéré comme un titre de poste et ici, vous utilisez des principes de l' informatique et les appliquez réellement pour créer des produits ou des applications. Cela signifie réellement écrire du code, créer des sites Web, créer des applications. Par exemple, mon ami qui travaillait chez Amazon Music a peut-être travaillé sur la création d'un système de recommandation musicale ou d'une interface utilisateur conviviale puisqu'il est ingénieur logiciel. L'informatique et l' ingénierie logicielle font la différence entre la théorie et l'application. Ainsi, l’ informatique est comme étudier la médecine dans une salle de classe, tandis que l’ingénierie logicielle est
4:37 comme être médecin à l’hôpital. Et c'est là que réside réellement la différence en termes de perspectives de carrière. Un diplôme en informatique peut donc mener à de nombreux chemins différents. Recherche, milieu universitaire, intelligence artificielle, cybersécurité, science des données, conception matérielle et, avec une légère réserve, même l’ ingénierie logicielle. C'est parce que l' informatique est vaste en termes de science et de théorie et peut être appliquée dans de nombreux domaines différents. L’ingénierie logicielle, en revanche, est beaucoup plus restreinte. Vous êtes en formation pour devenir ingénieur logiciel. Rien d'autre. Et c’est là que le problème commence pour beaucoup d’ étudiants en informatique. L’informatique à elle seule ne suffit pas à faire de vous un ingénieur logiciel. De nombreuses choses comme ReactJS, les frameworks backend, les bases de données et l'expédition de code à l'aide de CI/CD, vous n'en avez pratiquement aucune connaissance à l'université dans un programme d'informatique traditionnel.
5:23 Et cet écart déconcerte vraiment de nombreux étudiants, en particulier sur ce marché. Et c’est en fait la raison pour laquelle de nombreux diplômés en informatique sur ce marché se retrouvent sans emploi. Ils obtiennent leur diplôme en sachant analyser un algorithme, mais ils n'ont jamais construit une véritable application Web à partir de zéro. Ils n'ont jamais construit avec des frameworks modernes, traité des bugs de production ou collaboré sur une véritable base de code. De plus, en termes de timing, c'est tout simplement terrible en ce moment. À l’époque où j’ai obtenu mon diplôme, les employeurs n’hésitaient pas à me donner une chance . La mentalité était la suivante : vous avez un diplôme en informatique, donc vous savez coder. Vous pouvez probablement comprendre comment coder dans l’environnement d’ingénierie logicielle . Sinon, nous vous apprendrons ou nous tenterons votre chance. Mais aujourd’hui, le marché est bien trop compétitif pour cela. Les entreprises ne cherchent pas à vous former à partir de zéro. L’IA est en compétition avec vous. D’autres diplômés possèdent déjà ces compétences et les employeurs recherchent des
6:09 personnes capables de commencer à contribuer dès le premier jour. Les employeurs recherchent des ingénieurs juniors qui ont les compétences d’un ingénieur senior tout en leur payant le salaire d’un stagiaire. Vous ne pouvez donc pas vous permettre d’être simplement un étudiant en informatique. Vous devez être un ingénieur logiciel. La question se pose donc : que faites-vous réellement pour percer dans l’ingénierie logicielle ? Bon, parlons-en. Premièrement, maîtriser les fondamentaux de la création d’applications. Parce que l' informatique est axée sur les mathématiques, la théorie et les algorithmes, tandis que l' ingénierie logicielle est davantage axée sur les projets d'application , vous devez apprendre à créer à l'aide de frameworks front-end et back-end. Je recommande d'apprendre un framework comme ReactJS via des ressources comme Free Code Camp ou le projet Odin et de l'associer à des compétences backend comme Django ou Flask. Créez ensuite un projet full stack comme une application Pomodoro par exemple, qui est un simple minuteur qui vous aide
6:56 dans la gestion de projet. Vous apprendrez beaucoup. Et la beauté de ce projet en particulier est que vous devenez réellement plus productif en utilisant le travail de projet que vous avez réalisé. De plus, si vous pouvez créer des projets et les déployer, par exemple, chez Verscell, les recruteurs pourront voir votre travail en direct et peut-être même être enclins à vous embaucher. Mais si vous recherchez des idées de projets, consultez absolument ce référentiel GitHub ici. Cela s'appelle l'apprentissage par projet et cela vous aide à apprendre à coder tout en créant un projet. Mais si vous êtes un peu plus avancé, consultez la création de votre propre référentiel X, qui vous donnera des projets plus ambitieux qui sont en fait plus dignes d'un portfolio. Deuxièmement, familiarisez-vous avec les outils de développement du monde réel . À l’école, on apprend surtout à coder, mais c’est comme apprendre à conduire dans un parking vide. Ce qui importe réellement aux entreprises, c’est de savoir si vous êtes capable de gérer l’autoroute. Des éléments comme
7:41 Git, GitHub pour le contrôle de version, l'écriture de tests unitaires et la compréhension du fonctionnement réel des pipelines CI/CD. Et un excellent point de départ est le guide gratuit Git et GitHub de Code Camp et le cours d'introduction gratuit CI/CD de Code Academyy. Trois, apprenez à parler. C'est vraiment triste, mais beaucoup de gens dans le domaine de l'informatique et de la technologie ne savent pas parler correctement. Ils peuvent coder en Java, Python, ces langages de codage, mais quand il s'agit du langage humain, c'est là qu'ils sont nuls. Apprendre à parler, les compétences générales, la communication, utiliser ses mains, créer un pitch d'ascenseur. Ce sont des compétences fondamentales que l’université ne vous enseigne franchement pas, surtout en informatique. En fait, je connais tellement de gens qui sont bien plus intelligents que moi à l’université et qui savent coder depuis l’ âge de 6 ans. Mais ils
8:27 ne pouvaient pas parler correctement. Ils ne pouvaient pas parler aux recruteurs. Ils n'ont pas réussi un entretien comportemental parce qu'ils n'étaient tout simplement pas agréables. Donc, pour devenir ingénieur logiciel, ce que vous devez vraiment faire est de créer un pitch d'ascenseur. Il s'agit d'un discours de 30 à 40 secondes sur vous-même où vous établissez qui vous êtes, quelles sont vos compétences et votre expérience et quelles opportunités vous recherchez. Une fois que vous avez appris l'art de vous présenter et de parler aux gens normalement, vient alors l'étape où vous le faites à grande échelle où vous participez à des événements de réseautage, des hackathons, des DM LinkedIn avec des anciens et vous construisez des relations. Et au fil du temps, lentement mais sûrement, vous construirez un vaste réseau et des opportunités se présenteront à vous . Et si vous cherchez un endroit pour élargir votre réseau, rejoignez ma communauté, SUI Launchpad. Ici, vous avez la possibilité de vous connecter directement avec moi, d'autres pairs et professionnels du secteur
9:12 . Chaque semaine, vous avez la possibilité de participer à nos discussions au cours desquelles nous examinons les CV, les opportunités d'entretien et créons des feuilles de route pour vous faire embaucher. Au fil du temps, cette communauté devient votre réseau, les personnes qui partagent des opportunités, font des recommandations et soutiennent votre croissance de carrière à long terme. Alors, si vous êtes vraiment sérieux au sujet de votre carrière, consultez le lien dans la description, et je vous verrai de l' autre côté. Quatre, apprenez la conception du système. L' informatique à l'université n'aborde pratiquement jamais la manière de construire des systèmes évolutifs dans le monde réel, mais en génie logiciel, l'entretien de conception de système est l'un des entretiens les plus populaires et les plus célèbres. Si vous deviez concevoir Spotify, quelle architecture utiliseriez-vous ? Ou si vous travaillez dans un environnement à haut débit comme Netflix, utiliseriez-vous un réseau de diffusion de contenu ? Ou comment utiliseriez-vous un équilibreur de charge pour permettre au système d'être performant ? En fait, étant donné que l’IA peut
9:58 écrire beaucoup de code à l’heure actuelle, la véritable valeur d’un ingénieur logiciel réside dans la conception et l’architecture des systèmes. Donc, si vous pouvez apprendre cela tôt, même si vous êtes étudiant, cela vous placera devant beaucoup de gens, et même potentiellement devant certains ingénieurs seniors. Et pour cela, je vous recommande de consulter l'entretien sur la conception du système et la conception d'applications peu gourmandes en données pour en savoir plus. Cinq est une expérience avec des outils d’IA. Et c’est un domaine sur lequel de nombreux programmes d’informatique sont en réalité très en retard. C'est presque comme s'ils avaient peur de l'IA parce qu'ils n'expérimentent pas assez. En fait, ils vous enseignent la théorie de l'IA, comme son fonctionnement, mais ils ne veulent pas que vous utilisiez parfois des outils comme GBT, Claude ou Cursor parce que c'est de la triche. Mais le problème que j’ai avec ça, c’est que dans le monde réel, par exemple dans des entreprises comme Amazon ou Google, vous
10:44 utilisez des outils d’IA au quotidien pour créer des choses et grâce à cela, vous apprenez et vous développez encore plus. Mais si les universités vous empêchent de l'utiliser, bien sûr, elles peuvent vous aider à apprendre d'une certaine manière, mais elles vous empêchent en réalité d' apprendre d'une toute autre manière. Et pour être honnête, il faudrait tout simplement repenser de nombreux programmes d’études pour soutenir l’apprentissage de l’IA plutôt que de l’éviter. Mais entre moi et vous, s'il vous plaît, utilisez l'IA. Des outils comme Copilot constituent un excellent point de départ en tant que programmeur en binôme d’IA. J'aime vraiment utiliser des outils comme Cursor, car ils vous aident à parcourir votre base de code et à développer des projets sympas en quelques secondes. Warp est comme un terminal IA, vous n'avez donc pas à gérer de commandes de terminal compliquées . Et en tant qu’ingénieur logiciel, je peux faire bien plus avec l’IA que sans. Et aussi sur ce point, en parlant d’IA, je sais qu’il y a beaucoup d’ anxiété en ce moment. L’IA remplacera-t-elle les
11:30 ingénieurs logiciels ? L’informatique vaut-elle encore la peine si l’IA doit prendre le dessus ? La réalité est que l’IA remplacera l’ ingénierie logicielle avant l’ informatique. Je veux dire, évidemment, l’ ingénierie logicielle est étroite, ce qui facilite le ciblage de l’IA. Nous avons déjà vu des entreprises réduire leurs embauches, comme Salesforce, en raison du codage de l'IA. J'ai utilisé le curseur au travail et croyez-moi, les choses qui prenaient des heures sont désormais réalisées en quelques minutes. C'est pourquoi l'ingénierie logicielle est plus à risque, surtout si vous ne développez pas vos compétences. L’informatique, en revanche, est l’épine dorsale de tout. Ce n’est pas seulement du codage. C'est le fondement de l'informatique, du cyberespace, des données, des réseaux, des systèmes d'exploitation, et même de l'IA et de l'apprentissage automatique. Les algorithmes qui alimentent l’IA sont de l’informatique. Les systèmes de sécurité qui protègent notre monde numérique sont de l’informatique. Vous ne pouvez pas remplacer l’informatique par l’IA,
12:16 car l’informatique crée l’IA. Et c'est pourquoi, même si cela ne correspond pas directement à un seul emploi, sa profondeur et son ampleur en font une excellente spécialisation à poursuivre à long terme. Eh bien, c'est à peu près tout ce que j'ai dans cette vidéo. J'espère vraiment que vous avez apprécié. Et si vous l'avez fait, assurez-vous d'appuyer sur le bouton J'aime, de vous abonner si vous ne l'avez pas déjà fait, et si vous êtes intéressé par ma newsletter technologique absolument gratuite , le lien sera ci-dessous dans la description. Et si vous êtes intéressé par ce que font les ingénieurs logiciels au quotidien, vous aimerez peut-être cette vidéo ici.