Les missions du développeur Python s'orientent sur l'exploitation du langage Python dans le domaine du développement web. Il peut participer à la migration vers le langage Python 3. Le développeur Python est en charge du maintien et de l'amélioration de la solution d'analyse de données réseau. Il peut également assurer la mise en oeuvre des tests unitaires et l'élaboration du design et de l'intégration de nouvelles fonctionnalités des sites web.
Le développeur Python doit avoir des connaissances solides dans le développement web. Il doit maîtriser toutes les versions du langage Python. Le développeur Python doit également être capable d'exploiter Git dans un environnement professionnel et être familier avec l'environnement Linux. D'autre part, une connaissance du Big Data peut aussi être un atout important pour le développeur Python.
Les développeurs Python sont très demandés. Cela est non seulement dû à la popularité et à l'utilisation très large du langage, mais aussi au fait que Python soit devenu une solution dans plusieurs domaines différents. Des applications web à la science des données et à l'apprentissage automatique, Python est utilisé partout.
Il ne suffit cependant pas d'avoir une bonne maîtrise du langage lui-même. Il s'agit étonnamment de l'étape la plus facile pour devenir un développeur Python freelance. Voici d'autres éléments à prendre en compte si vous voulez faire de cela votre métier.
Bien que Python ne soit pas le langage programmation le plus utilisé sur le web, il est en constante progression, surtout dans un environnement de start-up où le temps et le budget sont parfois limités. C'est un langage de programmation orientée aspect.
Il existe de ce fait des modules avec diverses fonctionnalités. Le développeur full stack doit donc d'abord créer les modules. Il s'occupe en général des composants backend, de la connexion des applications avec des services web tiers et de l'assistance aux développeurs frontaux dans les applications web.
Il va sans dire que Python est le principal langage que vous utiliserez. Heureusement, si vous avez une maîtrise d'autres langages, le changement de langage peut facilement se faire. Python est un langage polyvalent, et la demande ne cesse de croître.
Grâce à son apprentissage relativement aisé, il est adapté aux novices et aux développeurs expérimentés. La maîtrise de chaque module n'est pas requise. Il convient toutefois de connaître, indépendamment de la syntaxe et de la sémantique de base, les différences entre Python 2 et 3.
Un bon développeur freelance peut s'y adapter en douceur, mais ce n'est pas un problème, car la distinction est rarement nécessaire. Il est aussi recommandé de connaître les structures de données de Python. Savoir ce qui se cache sous le capot d'un ensemble sera utile aussi bien pour les petits que pour les grands projets.
Il est crucial de connaître les frameworks Python, mais cela ne signifie pas qu'un développeur Python freelance doive tous les connaître. En fonction du projet, l'on peut vous demander de connaître l'un ou l'autre, mais les plus utilisés sont Python Django, CherryPy et Flask.
Il va sans dire que si vous connaissez déjà Python, vous avez eu l'occasion de travailler avec au moins d'un des frameworks les plus populaires. La structure de base et bien définie offerte par les frameworks est en général appréciée des développeurs quand ils cherchent à définir la logique basique de l'application.
Vos compétences sont tout d'abord votre arme. Elles vous permettront de décrocher un meilleur projet, un meilleur poste et naturellement un meilleur salaire. De plus, en programmation, vous pouvez toujours en apprendre plus.
L'acquisition de compétences additionnelles n'est donc pas seulement bénéfique, mais rend aussi le parcours professionnel d'un développeur Python freelance stimulant et intéressant. Qu'il s'agisse d'apprendre de nouvelles bibliothèques ou de participer à des conférences Python, il existe diverses façons de s'améliorer.
Expérience professionnelle
Depuis Avril 2019 OpenClassroom
Mentor
Accompagner les étudiant sur leur parcours (DA Java ou DA Python) et les aider
- à comprendre certains concepts de développement (POO, MVC, ...),
- s'organiser sur la création d'un projet,
- s'adapter aux exigences techniques et métiers,
- présenter un projet,
- chiffrer une feature,
- élaborer un plan d'action,
- gérer le versionning de code
Point clé : - Connaitre les projets et les technologies utilisées - Faire preuve de pédagogie
Fév 2025 - mai 2025 OfficeIn
Développeur Python Django
Objectif de l'application :
Permettre de faire le rapprochement financier d'une pharmacie avec les factures laboratoires afin de
s'assurer que les remises annuelles sont bien appliquées.
Mission :
- Mettre en place un tableau de KPI adminstratif afin de connaitre :
- Qui utilise l'application ?
- Quels paramètres sont mis en place (login/mdp laboratoire) ?
- Fréquence d'utilisation ?
- Centraliser par pharmacie ou par groupe de pharmacie.
Pour réaliser ce tableau, je me suis appuyé sur l'existant et j'ai ajouter des fonctionnalités
d'enregistrement et de calcules. Certains calculs, trop longs et complexes, on du être désynchronisés
et enregistrés en BDD chaque jour (décalage temporel mais acceptable).
Ces KPI sont utiles pour savoir qui utilise l'application, de quelle manière et si finalement le client à
besoin d'une démonstration, d'un conseil ou des idées d'amélioration. -
- Mettre en place une GED pour les pharmaciens afin de facilité l'accès des documents à la
comptabilité :
- Sécuriser l'accès
- CRUD des accès comptable
- Vérification des documents (taille, type, format)
Cette fonctionnalité permet de faire gagner du temps au pharmacien et au comptable de la
pharmacie. Un petit plus qui fidélise le client.
- Corriger et ajouter la lecture de factures sur certains laboratoires :
Expériences professionnelles
- Récupérer les libéllés de produits
- Récupérer les différents montants associés
- Récupérer les montant globaux de la factures
Pour réaliser cette mission, je me suis appuyé sur l'existant et adapté pour créer ou corriger de façon
incrémental
- Prendre part aux décisions d'organisation des évolutions et objectifs de l'application J'ai apporter
mon expertises sur l'organisation du projet (techniquement), valider certains point existant et
apporter des conseils sur l'organisation de la mise en place d'une audit de l'application.
Mai 2024 - Oct 2024 Elum-energy
Développeur Python Django
Afin d'améliorer le déploiement des stations à destination de leurs clients, j'ai développer deux
fonctionnalités, intégrées à leur SI :
- Partage d'un bootstrap d'installation et gestion du statut via API-KEY :
Pour réaliser cet objectif, je me suis appuyé sur l'application existante, à la quelle j'ai ajouté
plusieurs routes :
- Une route permettant de faire la première connexion entre la station et le SI. Cette première
connexion, sécurisé par la reconnaissance de la l'adresse MAC et l'utilisation d'un VPN connus
tous les deux. Cette route retourne une API-KEY (associé à la station) pour sécuriser toutes les
autres communications, ainsi qu'un fichier exécutable pour paramétrer la station.
- Une route pour gérer les retour de la station (statut de la station, erreurs éventuels) sécurisé par
l'API-KEY.
- Gestion des VPN, Génération des Keys VPN et gestion de l'attribution des IPs associés aux VPN
- Mise en place de la partie administration de la création des VPNs, avec gestion des plages IPs
- Génération, lors de la création, des Keys SALT des VPNs
- Gestion dynamique de l'attribution des adresse IPs aux stations, avec suivis et éviter les
doublons.
J'ai également apporté mon expertise pour une gestion plus simple de la partie administration,
notamment en mettent en place des filtres adaptés et un affichage en corrélation avec les besoins
métiers.
Pour chacun de ces objectifs, je me suis conformé aux exigences de tests et de clean code imposé
par la client, notamment avec le mise en place d'un check pré-commit avec les lib Ruff, mypy,
pylint, prettier et une couverture de code de 94% obligatoire avant la livraison.
Contexte Technique :
- Django Rest Framework
- GitLab avec CI/CD
- Qualité de code (Ruff, mypy, pylint, prettier)
- Couverture de test maintenue à 94%
L'objectif est de gagner du temps par la suite et de pouvoir déléguer le paramétrage des stations à
déployer chez le client.
Juin 2023 - Mai 2024 BlookUp
Développeur Python Django
BlookUp est un site, présent depuis plus de 20 ans, qui propose l'impression papier de ses réseaux
sociaux.
Le problème, aujourd'hui, un code legacy et des contraintes imposées par les réseaux sociaux
difficiles à mettre en place.
Mes missions :
- Apporter une solution immédiate au demande de sécurité de la donnée demandé par Meta, en
appliquant l'enregistrement des jeton de connexion dans une Vault.
- - Patcher, en python 2 et Django legacy,...