Article original : Python Project Ideas to Improve Your Résumé
Chaque projet est une opportunité d'apprendre – de résoudre des problèmes et des défis, et d'inventer et de réinventer.
Et en tant que développeur, travailler sur des projets peut améliorer non seulement vos compétences, mais aussi votre CV – ce qui peut augmenter vos chances d'obtenir cet emploi de rêve.
Avez-vous déjà rencontré une description de poste qui exige des candidats qu'ils aient un certain nombre d'années d'expérience ? Moi oui – en fait, presque toutes les annonces d'emploi que je rencontre. Ces descriptions de poste peuvent diminuer votre estime de soi et vous faire sentir sous-qualifié, surtout si vous êtes un jeune diplômé ou si vous commencez tout juste à apprendre à coder.
Alors, que se passe-t-il lorsque vous n'avez aucune expérience de travail dans l'industrie technologique et que vous souhaitez postuler pour un emploi ? Eh bien, la réponse est simple – votre portfolio est tout. Vous devez simplement utiliser vos projets passés (et peut-être en construire de nouveaux) pour vous aider à vous démarquer.
Dans ce guide, nous allons voir comment utiliser l'expérience de vos projets pour vous aider dans vos candidatures d'emploi. Notre focus sera sur certains des principaux projets Python qui peuvent aider à booster votre CV dans un environnement professionnel.
Pourquoi construire des projets en Python ?
Vous pouvez utiliser Python de nombreuses façons, y compris le développement de logiciels et de sites web, le machine learning, l'analyse de données, et plus encore. Connaître Python est une compétence précieuse pour un codeur. Mais si vous êtes nouveau dans le codage, il peut être difficile de démontrer votre expertise sur un CV lorsque vous postulez pour des emplois.
Réaliser des projets Python que vous pouvez clairement décrire et qu'un responsable de recrutement peut examiner est un excellent moyen de mettre en valeur vos compétences.
Si vous n'êtes pas sûr de savoir comment rédiger un CV ou si votre CV a besoin d'une refonte complète, il existe de nombreuses ressources en ligne pour vous aider :
- Voici un modèle de CV pratique modèle de CV où vous pouvez facilement saisir vos détails et ajouter vos projets Python au fur et à mesure que vous les terminez.
- Voici un guide sur Comment rédiger un CV – Guide pratique avec exemple de CV.
Maintenant, voici quelques idées pour des projets Python que vous pouvez présenter sur votre CV.
Idées de projets Python
1. Vérificateur de statut de serveur
Un vérificateur de statut de serveur est un script qui vous permettra de surveiller si votre serveur est actif et en cours d'exécution. Il peut vous montrer combien de temps d'arrêt votre serveur a eu et vous donner des mises à jour régulières de ses performances. Il enverra également des alertes immédiates lorsque le serveur est hors ligne.
Certains des outils qui sont utiles lors du développement d'un tel script incluent :
- Socket - aide à la connexion à différents serveurs.
- SSL - requis pour envelopper la connexion socket.
- Date & Heure - Vérifiez à quelle heure le serveur est actif ou est tombé en panne.
- smtplib - Envoyer des alertes par e-mail lorsque le serveur est hors ligne.
- Pickle - Sauvegarde l'historique des performances du serveur.
Pour vous donner une idée de la façon de commencer un tel projet, voici quelques informations pour vous aider à démarrer.
2. Raccourcisseur d'URL
Un raccourcisseur d'URL est un programme qui prend des URL longues et les convertit en URL plus courtes que les utilisateurs peuvent facilement retenir. Certains des sites les plus courants offrant de tels services incluent Bit.ly et Cuttly.
C'est un outil fonctionnel et utile qu'un responsable de recrutement peut facilement tester pour vérifier vos compétences Python telles que l'utilisation des API.
Bien qu'il existe déjà de nombreux outils de ce type, vous pouvez en créer un qui offre une fonctionnalité spécifique comme des URL courtes personnalisables.
Presque tout le monde a déjà rencontré une URL longue et encombrante qui n'est pas conviviale ou facile à retenir, donc créer un raccourcisseur d'URL montre que vous pouvez identifier des problèmes courants et concevoir une solution.
Pour vous aider à démarrer avec l'idée et le concept, consultez ce dépôt ici.
3. Agrégateur de contenu
C'est un outil qui rassemble des informations telles que des articles, des publications sur les réseaux sociaux, des vidéos, des images, etc. Ensuite, il affiche toutes ces informations sur une seule page. Cela signifie que les utilisateurs n'ont pas à rechercher manuellement chaque site web pour ce qu'ils cherchent.
En créer un est une autre bonne façon de montrer comment vous pouvez utiliser votre expertise Python pour créer un outil utile. Les agrégateurs de contenu peuvent être utilisés à de nombreuses fins, mais ils recherchent essentiellement de grandes parties de l'internet pour trouver des morceaux spécifiques d'information.
Vous pourriez développer un agrégateur de contenu général ou un plus spécialisé. Par exemple, vous pourriez créer un agrégateur météo qui récupère les données météo de plusieurs des principales sources de votre région pour présenter un rapport météo complet.
En travaillant sur un projet comme celui-ci, vous devriez être à l'aise avec des concepts comme :
- Les bases de Python
- Comment utiliser les environnements virtuels
- Les fondamentaux de Django
- Les bases de HTML, CSS et JS
4. Assistant de bureau
Lorsque l'on parle d'un assistant, pensez à Alexa, Siri et l'assistant virtuel de Google. Récemment, il y a eu une augmentation du développement des assistants intelligents, regardez votre site web préféré, les chances sont très élevées qu'il ait un bot qui répond aux questions courantes posées régulièrement.
Certaines tâches courantes qui peuvent être gérées sur votre machine locale avec l'aide d'un assistant incluent :
- Ouvrir et fermer n'importe quelle application sur votre système.
- Rechercher n'importe quoi sur Google, Youtube, Wikipedia et ainsi de suite
- Obtenir des mises à jour météo pour n'importe quel lieu demandé.
- Dire l'heure et la date actuelles
- Donner des rappels de calendrier sur les événements à venir.
- Envoyer un e-mail par commandes vocales.
- Jouer ou arrêter de la musique dans notre système.
- Résoudre tout problème algébrique et mathématique.
- Redémarrer, mettre en veille ou éteindre le système.
Pour construire un assistant de bureau, vous pourriez avoir besoin de certains modules pour vous aider. Certains des principaux incluent : Pyttsx3, Speech Recognition, Twilio, Subprocesses, Wikipedia, et un navigateur web.
Un assistant de bureau peut effectuer une seule tâche ou une variété de tâches, selon la complexité de votre codage. Plus votre assistant est avancé, plus il sera impressionnant pour les employeurs potentiels.
Parlant d'expérience, cela peut être un projet vraiment amazing sur lequel travailler. Bien que je n'aie pas pu explorer plus de fonctionnalités, consultez mon idée pour un Assistant de bureau et implémentez plus en ajoutant vos propres idées de fonctionnalités.
5. Automateur de tâches
Un automateur de tâches peut être similaire à un assistant de bureau. Mais il peut aussi être plus spécialisé pour des tâches spécifiques. Pour donner une idée de la façon dont les développeurs utilisent Python, voici quelques-unes des automatisations les plus courantes :
- Effectuer des tâches de marché automatisées
- Envoyer, répondre et trier des e-mails
- Remplir des PDF et des fichiers Excel
- Convertir des images, renommer des fichiers
- Effectuer des équations mathématiques
- Calculer des taux de change
Vous pouvez utiliser Python pour faire beaucoup plus de tâches – pensez simplement aux tâches que vous faites au quotidien, non seulement sur votre ordinateur mais aussi à la maison. Vous devez simplement trouver les bons outils dont vous aurez besoin, et comment écrire et exécuter le script.
Lorsque nous parlons d'outils, puisque Python est un langage open-source, cela signifie que nous avons une tonne d'outils à notre disposition, ainsi que de nombreuses bibliothèques et frameworks pour nous aider à démarrer. Certains outils qui peuvent vous aider incluent :
- Selenium
- Beautiful Soup
- SMTPlib
Une bonne ressource pour vous aider dans le voyage de l'automatisation est le livre amazing sur la façon d'Automatiser les tâches ennuyeuses avec Python. C'est un guide pratique sur la façon d'utiliser divers outils de programmation.
Encore une fois, plus votre automateur de tâches est unique et avancé, plus il sera impressionnant.
6. Jeux ou Applications
Python dispose de nombreuses bibliothèques pour vous aider à construire des jeux, ainsi que des bibliothèques multiplateformes pour créer des applications Android et iOS. Certaines des bibliothèques de jeux courantes incluent Pygame, Pyglet, Panda3D, Pykyra, Ursina Engine, et bien d'autres.
Les jeux et les applications peuvent aller de très simples à très sophistiqués, et créer l'un ou l'autre peut être un excellent moyen d'afficher votre personnalité, votre créativité et vos compétences Python.
Si vous souhaitez pouvoir développer des projets de cette envergure, vous devrez utiliser certains modules et bibliothèques Python. Les plus courants incluent :
- Kivy - C'est le module le plus évalué pour développer des applications mobiles en utilisant Python.
- Modules de développement de jeux comme Pygame, PyKyra, Pyglet, PyOpenGL et autres.
Certaines compétences que vous serez en mesure de démontrer après avoir construit ce projet incluent : la programmation et le développement d'applications mobiles, l'UI/UX, et l'API.
Pour vous aider à démarrer avec cette idée, voici un lien vers certains des jeux les plus courants développés avec Python : Jeux Python.
7. Trader algorithmique
Les traders algorithmiques ou Algo traders peuvent non seulement mettre en valeur vos compétences Python, mais ils peuvent aussi vous faire gagner de l'argent - si vous écrivez un bon script, bien sûr.
C'est un projet plus avancé qui ne conviendra probablement pas aux codeurs débutants. Vous devrez écrire un script qui analyse les valeurs passées et présentes des actions, et utilise le machine learning pour prédire les valeurs futures.
Ensuite, votre trader achètera ou vendra automatiquement des actions en fonction de ces prédictions.
Pour travailler sur un tel projet, il sera nécessaire de se familiariser avec Python et certains de ses principaux sujets comme les structures de données et la programmation orientée objet. Connaître également l'utilisation de bibliothèques externes comme Pandas, NumPy et SciPy sera utile.
Pour vous aider à démarrer avec ces connaissances, consultez ce cours, Trading algorithmique avec Python (et il inclut également quelques dépôts d'exemples).
8. Résolveur de Sudoku
Un résolveur de Sudoku est un autre projet facile à voir et à tester pour un responsable de recrutement. Bien que l'intention des puzzles de Sudoku soit que les utilisateurs les résolvent avec leur puissance cérébrale, un résolveur de Sudoku automatisé démontre votre maîtrise approfondie de Python.
Pour travailler sur ce type de projet particulier, il est vraiment essentiel d'être à l'aise avec les algorithmes Python. Ceux-ci incluent :
- la compréhension de liste
- la récursion
- l'indexation et comment utiliser les boucles.
9. Gestionnaire de fichiers
Une autre bonne idée de projet est de coder un gestionnaire de fichiers qui renomme ou organise des fichiers, archive les fichiers inutilisés, ou automatise d'autres tâches fastidieuses de gestion de fichiers.
Ce type de projet est assez facile, et il peut être un bon moyen de commencer avec Python.
Travailler avec des fichiers et des documents peut varier avec différents projets, donc vous pouvez construire différents scripts, comme :
- Un script pour Déplacer automatiquement les fichiers,
- Un script qui vous permettra d'obtenir les tailles de dossiers/fichiers,
- Un script pour Supprimer les fichiers en double
Pour développer ce type de projet, voici quelques-uns des modules que vous devriez connaître et garder à l'esprit :
- Tkinter
- Shutil
- Os
- easygui
- Filedialog
- Imageio
Voici donc quelques idées pour vous lancer.
Ci-dessous se trouve un fil Twitter avec plus d'idées de projets sur lesquels vous pouvez travailler pour aider à booster votre CV :
Comment lister les projets Python sur votre CV
Maintenant que vous avez quelques idées pour des projets Python à ajouter à votre CV, voici comment les lister efficacement.
Si vous êtes un développeur freelance ou si vous commencez tout juste dans l'industrie, vous pouvez trouver qu'il est plus efficace d'utiliser un CV fonctionnel plutôt qu'un format chronologique.
Les CV fonctionnels sont plus axés sur vos compétences et projets spécifiques plutôt que sur votre historique d'emploi.
Pour utiliser un CV fonctionnel, remplacez la section expérience professionnelle par une section projets. Vous pouvez la diviser davantage en sous-sections si vous avez certains projets professionnels ainsi que certains projets personnels.
Donnez un nom à chaque projet, listez la durée, et incluez les technologies que vous avez utilisées pour le compléter. Sous chaque entrée, utilisez des puces pour décrire le projet plus en détail, décrire vos contributions spécifiques, et résumer le but du projet.
Si vous avez une certaine expérience professionnelle en tant que codeur mais que vous souhaitez également lister vos projets personnels, vous pouvez opter pour un format de CV chronologique qui liste votre expérience professionnelle en haut, suivi de votre éducation, compétences et certifications.
Ensuite, vous pouvez inclure une section projets plus tard dans votre CV pour mettre en avant les projets Python que vous avez réalisés en dehors du travail.
Vous pouvez également renforcer votre expertise Python en le mentionnant dans votre résumé ou objectif de CV ainsi que dans votre section compétences.
Voici un exemple pour vous montrer comment présenter un CV si vous êtes un jeune diplômé de l'école :

Conclusion
Il est important de se rappeler qu'un projet sera plus réussi s'il communique ce qu'il est censé communiquer.
Chaque fois que vous travaillez sur un projet, donnez-lui toute votre dédication. Si vous avez trouvé l'une de ces idées de projet intéressante, n'hésitez pas à l'essayer et vous aurez une belle nouvelle addition à votre CV.
J'apprécie le temps que vous avez pris pour lire.
Bonne programmation ❤.