Ingénieur Data - Spécialiste Python (Remote) (H/F)
- Mensuel de 3000.00 Euros à 3300.00 Euros sur 12.0 mois
- 13 - MARSEILLE 02
Lieu : Remote
Fablab Generation-5 une entreprise innovante dans le domaine de la technologie et de l'analyse de données, est à la recherche d'un Ingénieur Data expérimenté en Python pour un poste à télétravail complet. Si vous êtes un expert en Python, SQLAlchemy, FastAPI et Alembic, et que vous aimez travailler sur des défis complexes en matière de données, rejoignez-nous pour faire avancer notre mission.
Responsabilités :
- Concevoir et développer des architectures de données efficaces et évolutives.
- Programmer et maintenir des APIs avec FastAPI pour optimiser la disponibilité des données.
- Effectuer des migrations et des mises à jour de bases de données en utilisant Alembic.
- Travailler en étroite collaboration avec les équipes de développement pour intégrer des solutions analytiques et de business intelligence.
- Assurer la qualité et la performance des systèmes de données à grande échelle.
- Mettre en œuvre des tests automatisés en utilisant Pytest pour garantir l'intégrité et la performance de toutes les intégrations de données et APIs.
Qualifications requises :
- Diplôme en informatique, ingénierie logicielle, ou domaine connexe.
- Au moins 3 ans d'expérience professionnelle en programmation Python.
- Expertise confirmée en SQLAlchemy, FastAPI et Alembic.
- Expérience avec les bases de données SQL et NoSQL.
- Capacité prouvée à travailler de manière autonome et en équipe, avec un esprit critique et résolutif.
- Maîtrise parfaite de l'anglais technique.
Ce que nous offrons :
- La flexibilité du télétravail complet.
- Un package de rémunération attractif.
- Une culture d'entreprise dynamique avec une forte orientation vers l'innovation et la créativité.
Pour postuler, envoyez votre CV et lettre de motivation à (adresse email). Veuillez indiquer clairement vos réalisations antérieures pertinentes et comment vous pouvez contribuer à notre entreprise.
Exercice à rendre par mail avant Entretien pour Ingénieur Data
Objectif : Développer une petite application API avec FastAPI qui expose une base de données simple gérée par SQLAlchemy. L'application doit permettre de créer, lire, mettre à jour et supprimer des enregistrements de données utilisateur.
Instructions :
1. Configuration de l'Environnement :
o Installez FastAPI, SQLAlchemy, Alembic.
2. Développement de l'API :
o Créez une base de données SQLite ou Mysql ou PostgreSQL avec SQLAlchemy. La base de données doit contenir une table users
o Utilisez Alembic pour gérer les migrations de la base de données.
o Développez des routes FastAPI pour :
Ajouter un nouvel utilisateur
Récupérer les informations d'un utilisateur par son ID
Mettre à jour les données d'un utilisateur par son ID
Supprimer un utilisateur par son ID
o Assurez-vous que l'API renvoie des réponses appropriées pour chaque opération, y compris la gestion des erreurs (par exemple, utilisateur non trouvé).
3. Tests :
o Écrivez des tests unitaires avec Pytest pour chaque fonctionnalité de l'API.
o Assurez-vous que les tests couvrent les scénarios de succès et d'erreur.
4. Documentation :
o Documentez comment configurer et exécuter l'application, y compris la base de données et les migrations.
o Fournissez une documentation pour l'API avec des exemples de requêtes et de réponses.
Livraison :
- Soumettez le code source via un dépôt GitHub ou GitLab.
- Incluez un fichier README avec des instructions détaillées pour installer et exécuter l'application et les tests.
Évaluation :
- Qualité du code et respect des bonnes pratiques de développement en Python.
- Fonctionnalité complète de l'API selon les spécifications.
- Complétude et qualité des tests unitaires.
- Clarté et utilité de la documentation.
Points Bonus :
1. Utilisation de Docker Compose