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.
Contexte : La société ALMA mais à la disposition des marchands un système de
paiement en plusieurs fois nommer en interne B2B. Un marchand ayant souscrit à ce service
pouvait donc à son tour, proposer à ses clients, le paiement ne plusieurs fois (B2C).
En vue de l’évolution de leurs services, ALMA souhaitait mettre sur place le B2B2C, afin de
pouvoir directement proposer le paiement en plusieurs fois aux particuliers, sans avoir besoin de
passer par un intermédiaire.
Une équipe constituée de 7 développeurs avait été mise sur pied afin de produire dans un délai de 3
mois, un PoC de cette solution de gestion des comptes clients.
Stack technique : Python 3.8, FastAPI, uvicorn, pydantic, SQLAlchemy, PostgreSQL, Alembic, JWT,
Pytest, Docker, CI/CD, Git, TDD
Contexte : La société SAFWEE disposait de la version 10.0 EE du logiciel Odoo,
avec une cinquantaine de modules personnalisés, développés par un ancien prestataire.
J’avais pour mission de migrer leur base de données vers la toute dernière version d’Odoo, tout en
remplaçant le maximum de modules personnalisés par des modules standard ou communautaires
(OCA).
Missions : Mise en place du progiciel de gestion intégré OpenERP (version 7.0)
• Paramétrage d'OpenERP
• Transfert de données du logiciel CIEL vers OpenERP ;
• Paramétrage du module « Point de Vente »
• Connecteur PrestaShop et OpenERP 7.0
• Développement de scripts et programmes en Python
• Data Scientist: Numpy, Pendas, SciPy, Matplotlib
• Intégration d’Odoo :
◦ Spécification des besoins
◦ Formation technique & fonctionnelle
◦ Développement de modules spécifiques
◦ Réintégration des données
◦ Déploiement, support et maintenance
• Formations en développement Python & Odoo
• Migration Odoo (7.0→14.0)
• Contribution au développement des modules communautaires (OCA).
Missions: - Concevoir et mettre en place un outil de génération des devis
- Maîtriser l’outil OpenERP (version 6.1)
• Recueil, analyse et modélisation de l’existant par la méthode 2-TUP (UML)
• Langage de programmation: JAVA (Swing)
• Système de Gestion de Base de Données (SGBC): MySQL
• Statistiques graphiques périodiques (paramétrable)
• Module d’authentification sécurisée, gestion des profils et sauvegarde
Mission : Conception et réalisation d’une application pour la gestion automatisée du parc
Informatique
Mission : Conception et réalisation d’une application intranet pour la gestion du support
Technique
QUELQUES PROJETS REALISES
● ********
******** est une société basée à Londres et qui vend des meubles. Elle disposait d'une version 6.1
d'Odoo, connecté sur leur site de vente en ligne (Magento) et d'une grosse équipe de développeur en
interne. Les échangent entre les deux systèmes étaient devenues très lent et ma mission était
d'auditer le système actuel et trouver des moyens pour l'optimiser. C'était un vrai challenge.
● SNESUP (Syndicat National de l’Enseignement Supérieur)
Avec près de 10 000 adhérents, cette association souhaitais gérer les cotisations de ses membres
avec Odoo. Nous avons mise en place plusieurs modules spécifiques permettant entre autre de
suivre les cotisations, d'effectuer les paiements en ligne, d'exporter des données au format SEPA et
d'envoyer des messages de masse aux adhérents grâce à un connecteur au logiciel mailman.
● Charles Viancin Group
Ce projet avait un double enjeu. Je devais mettre en place un système permettant d'exporter des
données d'Odoo sous des formats spécifiques, compatibles aux plateformes du logisticien Skipper.
Une fois ces fichiers générés (de manière automatique), elle devait être envoyés sur un serveur FTP.
Et réciproquement, dès qu'un fichier était placé sur le serveur FTP configuré, il était importé dans
Odoo.
• Tests de charge sur Odoo 8.0: Après la sortie du module e-commerce d'Odoo et leur
prétention de vouloir concurrencer le logiciel Magento, j'ai décidé d'effectuer les tests
comparatifs entre des ceux outils en utilisant Funkload.
• SYSCOHA...