Au sein d’une organisation fédérale belge de sécurité publique, la division des systèmes modernise les plateformes qui soutiennent les services opérationnels et le travail fondé sur les données. Ce poste senior d’administrateur et d’ingénieur de bases de données PostgreSQL est axé sur une administration sécurisée et fiable des bases PostgreSQL. Vous contribuerez également au développement backend en Python, aux REST APIs et à l’automatisation de la livraison au sein d’une équipe pluridisciplinaire basée à Bruxelles, en Belgique.
La mission
L’organisation renforce ses fondations numériques tout en modernisant les systèmes existants qui soutiennent les services sur le terrain. Les environnements PostgreSQL doivent rester sécurisés, disponibles et performants, grâce à des procédures maîtrisées de sauvegarde et de restauration, ainsi qu’à une supervision et une optimisation des performances. L’environnement technique comprend des serveurs Linux, Docker, Kubernetes et OpenShift. Ansible est utilisé pour l’automatisation et l’Elastic Stack est disponible pour la supervision et la journalisation. La démarche de livraison est Agile et s’appuie sur GitLab CI/CD afin de rendre les changements techniques reproductibles et traçables.
Vous serez responsable de l’administration et de l’ingénierie des bases de données PostgreSQL sur l’ensemble du cycle de vie des projets. Votre périmètre comprend la conception de schémas de bases de données, les mécanismes de synchronisation des données, le développement backend en Python et l’intégration des REST APIs avec PostgreSQL. Vous soutiendrez également les équipes de développement en leur proposant des solutions de bases de données adaptées, contribuerez, lorsque cela est pertinent, à des implémentations basées sur des microservices et documenterez les décisions techniques afin que les configurations et les procédures d’exploitation puissent être reprises par d’autres équipes.
Vos responsabilités
- Concevoir et maintenir des structures de bases de données PostgreSQL sécurisées pour les applications opérationnelles et les services fondés sur les données.
- Améliorer la fiabilité des bases de données grâce à des procédures de sauvegarde et de restauration, à la supervision, au diagnostic et à la résolution des problèmes, ainsi qu’à l’optimisation des performances.
- Développer des mécanismes de synchronisation des données et intégrer PostgreSQL à des services backend en Python et à des REST APIs.
- Mettre en place et gérer des pipelines GitLab CI/CD qui automatisent les activités de test, de livraison et de déploiement.
- Assurer la prise en charge d’environnements conteneurisés et orchestrés à l’aide de Docker, Kubernetes, OpenShift, Ansible et de pratiques d’administration Linux.
- Documenter les analyses, les configurations, les conceptions de bases de données et les décisions techniques, tout en coordonnant les solutions avec les développeurs, les spécialistes et les représentants des utilisateurs.
Votre profil
Compétences essentielles
- Vous justifiez d’au moins 5 ans d’expérience pertinente dans l’administration de bases de données PostgreSQL, ainsi que d’une connaissance pratique approfondie de la conception de bases de données, de la sauvegarde et de la restauration, de la supervision et de l’optimisation des performances.
- Développer des solutions backend en Python, notamment des REST APIs et des intégrations fiables avec des bases de données PostgreSQL.
- Assurer l’exploitation et le dépannage de serveurs Linux, et travailler efficacement avec Docker, Kubernetes, OpenShift et Ansible.
- Appliquer des pratiques de supervision et de journalisation avec l’Elastic Stack, et savoir quand des technologies NoSQL telles que les bases de données clé-valeur, documentaires et vectorielles sont appropriées.
- Travailler selon une démarche Agile et gérer des pipelines CI/CD dans GitLab.
- Analyser les problèmes de manière méthodique, travailler de façon autonome, proposer des solutions pragmatiques et documenter clairement les travaux techniques.
- Communiquer efficacement avec les spécialistes techniques et les représentants des utilisateurs, et contribuer de manière constructive au sein d’une équipe pluridisciplinaire.