Senior Software Developers/Engineers with Python, Terraform and Go Our Client is looking to recruit brilliant Software Developers/Engineers with upwards of 7 to 10 years solid proven track record of developing complex applications with Python coupled with Machine Learning and ideally Go. We're looking to recruit initially 2 excellent Software Engineers to work with an existing team of 4 software developers on a very large strategic consulting engagement. Must be 100% trustworthy with real integrity – this is a highly sensitive project. Key skills Python Machine Learning ideally Terraform Go programming language If you are excellent with developing software with C++ and/or C# etc… then you can easily learn Go. Excellence is vital. Ideally have security clearance. Duration for this assignment will be 3 to 6 months initially with possibility of the role becoming permanent at some point in the future. The Client has offices in Central London and the project is based in Oxford - and are happy with remote working for the foreseeable future. They are absolutely committed to family-friendly operations with diversity & work-life balance. Daily rate for this assignment will be dependent on your expertise – but will be in the range £500 to £2000 per day. Please note we really are looking for the best software developers – the cream of the crop – or crème de la crème. Do send your CV to us in Word format along with your daily rate and availability.
Le contexteNous recherchons pour l'un de nos clients, acteur majeur du secteur média, un Référent Technique / Coach .NET rattaché directement au Responsable Technique. Il ne s'agit pas d'un poste de management d'équipe, mais d'un rôle de référent technique de proximité : vous accompagnez les développeurs au quotidien sur leurs problématiques techniques, les incidents de production et l'amélioration continue des pratiques de développement. Vous êtes le point d'appui technique des équipes et contribuez activement à leur montée en compétence ainsi qu'à la résolution durable des problèmes. Vos missionsCoaching technique Accompagner les développeurs dans la résolution de leurs problématiques techniques quotidiennes Adopter une posture de coach opérationnel : aider les équipes à trouver les solutions plutôt que réaliser les développements à leur place Favoriser le partage des bonnes pratiques et la montée en compétence des équipes Être un référent technique reconnu et légitime auprès des développeurs Résolution d'incidents Intervenir sur les incidents complexes et accompagner les équipes jusqu'à leur résolution complète Réaliser les analyses post-mortem afin d'identifier les causes racines et éviter la réapparition des incidents Participer aux actions correctives à court terme et à l'amélioration continue des processus Accompagner les équipes lors des mises en production et de la gestion des incidents associés Expertise technique Apporter un regard technique transverse sur les problématiques applicatives et DevOps Analyser les situations complexes et proposer des solutions pragmatiques, adaptées au contexte Participer à la transformation des pratiques de développement en instaurant des méthodes de travail plus robustes Intervenir sur des environnements techniques variés et s'adapter rapidement aux technologies en place Le profil recherchéSolide expérience en développement .NET Expérience significative en tant que Lead Developer, Tech Lead, Staff Engineer ou Référent Technique Forte capacité d'analyse et de résolution de problèmes complexes Bonne compréhension des problématiques de développement logiciel et des environnements DevOps Capacité à proposer des solutions concrètes et à accompagner leur mise en œuvre Excellentes qualités relationnelles, pédagogiques et diplomatiques Leadership naturel permettant de fédérer les équipes sans lien hiérarchique Curiosité technique et capacité à intervenir sur plusieurs technologies, sans dogmatisme Ce qui fera la différenceUn profil pragmatique, orienté résolution de problèmes, alliant une forte légitimité technique à une véritable posture de coach. Une personne capable d'accompagner durablement les équipes pour éviter la récurrence des incidents, et non simplement les corriger ponctuellement. Environnement techniqueSocle applicatif (maîtrise attendue) C# / .NET : .NET Framework et .NET 6/8, avec une réelle capacité à intervenir sur du legacy comme sur des applications modernes Core, développement d'API REST / Web API Entity Framework / EF Core, accès aux données et optimisation des requêtes Bases de données relationnelles : SQL Server, T-SQL (lecture de plans d'exécution, diagnostic de performance) Architectures applicatives : microservices, architecture en couches, patterns de conception, [messaging type RabbitMQ / Kafka / Azure Service Bus] Écosystème DevOps & production Git et workflows de branches, revue de code CI/CD : [Azure DevOps / GitLab CI / Jenkins] Conteneurisation : Docker, [orchestration Kubernetes] Cloud : [Azure / AWS] Observabilité et diagnostic d'incidents : logs, métriques, APM [Application Insights / Datadog / ELK] Qualité & pratiques de développement Tests unitaires et d'intégration (xUnit, NUnit, Moq), approche TDD appréciée Analyse statique et dette technique [SonarQube] Pratiques de refactoring, clean code, revue d'architecture Méthodologies agiles (Scrum / Kanban) Environnements complémentaires appréciés Front-end : [Angular / React / TypeScript] Scripting et automatisation : PowerShell, Bash Toute autre technologie présente dans l'écosystème du client : la capacité à s'adapter rapidement prime sur la maîtrise exhaustive d'une stack donnée
ANALYSE Participe à l'analyse fonctionnelle détaillée des besoins utilisateurs et peut être sollicité pour des ateliers de définition des spécifications générales Étudie les opportunités et la faisabilité technologique de l'application, réalise l'analyse technique, l'étude détaillée et contribue à l'estimation des charges CONCEPTION ET DÉVELOPPEMENT Contribue au design du logiciel et des frameworks utilisés dans le cadre du projet Adapte et applique les paramètres techniques des progiciels ou des middlewares Réalise le prototypage Analyse et développe les composants en utilisant les langages appropriés Participe à la structuration des Bases de Données Participe à la revue croisée des développements de ses pairs Initialise le dossier d'exploitation Assemble les composants unitaires dans un package applicatif cohérent destiné au déploiement de la solution et l'intègre à la gestion de configuration Documente les applications pour les développements ultérieurs et la Mise en Production (MEP) Harmonise et industrialise l'ensemble des composants et applications Utilise les composants logiciels réutilisables et met à jour la nomenclature RECETTE UNITAIRE ET TESTS D'INTÉGRATION Responsable des tests unitaires : élaboration des jeux d'essais et réalisation Teste, identifie et traite les dysfonctionnements éventuels du logiciel développé Vérifie la conformité de l'ouvrage avec la demande formulée Contribue à la préparation et à la réalisation des tests d'intégration Analyse les résultats et rédige le rapport de tests MAINTENANCE Réalise les développements nécessaires à la maintenance corrective et évolutive Participe à l'analyse et à la résolution des incidents de production Expertise .NET (C#, EF Core, .NET 8/9/Core) - Expert T-SQL - Confirmé DDD, SOLID, Clean Code - Expert Message (Kafka, RabbitMQ, Solace) - Expert