Backend Go Developer

Karnott — France · Posted ~2 days ago

Skills

Go PostgreSQL Backend development Geospatial data Time-series data Large-scale data processing

🔓 Log in to save this job, tailor your resume & track your apply process — 7 days free, no card needed.

Log in to add to target list

Summary ✨ AI‑Generated

Join a backend engineering team working on a connected-device platform that processes massive volumes of geospatial and telemetry data. You will build scalable services in Go and PostgreSQL, handle continuously growing time-series datasets, and solve complex spatial calculations involving large numbers of field devices and real-world operational data.

Highlights

Opportunity to work on challenging large-scale geospatial and time-series data problems, with substantial real-world datasets and technically demanding backend infrastructure.

Description

Karnott en quelques mots Karnott développe un boîtier connecté qui se fixe sur n'importe quelle machine agricole pour enregistrer automatiquement les interventions terrain : hectares travaillés, kilomètres parcourus, temps de travail, trajets GPS, ou télémétrie machine. Fini les carnets papier. Aujourd'hui, ce sont des dizaines de milliers de matériels équipés et des milliards de points GPS collectés. Notre plateforme web et notre app mobile permettent aux agriculteurs, ETA et CUMA, et aux viticulteurs de piloter leur activité en temps réel. On traite de la donnée géospatiale à grande échelle, on la transforme en données utiles, et on construit les outils qui permettent à nos utilisateurs de prendre de meilleures décisions au quotidien. Le Défi technique Des dizaines de milliers de boîtiers qui remontent en continu. Des milliards de points GPS en base. Des calculs de surfaces et d'intersections sur des parcelles agricoles. Des séries temporelles qui grossissent tous les jours. À cette échelle, une requête mal pensée ne ralentit pas : elle tombe. On travaille au quotidien sur l'indexation spatiale, le partitionnement des séries temporelles, les plans d'exécution et le tuning de la base. Chez nous, la base de données n'est pas une couche de persistance qu'on oublie derrière un ORM : c'est là que se joue la performance du produit. Si ce type de problème t'intéresse plus que d'empiler des endpoints CRUD, on devrait bien s'entendre. Le Poste Tu rejoins l'équipe produit pour concevoir et faire évoluer les services backend qui alimentent notre plateforme. Concrètement : Modéliser et optimiser notre base PostgreSQL pour des volumes de données terrain qui grossissent en continu : schémas, index, requêtes, plans d'exécutionConcevoir et développer des APIs performantes qui servent notre plateforme web, l'app mobile et nos intégrations partenairesTraiter et valoriser de la donnée géospatiale en temps réel et en batchOpérer sur Google Cloud Platform : déployer, monitorer, scaler les servicesParticiper aux choix produit : chez Karnott, nous sommes au contact du terrain et des utilisateurs. Tu t'intéresses à la finalité du produit, tu as ton mot à dire sur ce qu'on construit et comment. Ce qu'on recherche, les deux incontournables : => Go (Golang) Ton langage principal. Tu sais écrire du code idiomatique, testable et maintenable. => PostgreSQL, au-delà de l'ORM Tu es à l'aise avec la donnée elle-même, pas seulement avec la couche qui la masque. Concrètement, tu sais : lire un plan d'exécution (EXPLAIN ANALYZE) et comprendre pourquoi une requête est lenteexpliquer pourquoi un index existant n'est pas utiliséraisonner sur les transactions, les niveaux d'isolation et les verrousmodéliser un schéma et assumer tes arbitrages : normalisation, contraintes, dénormalisation quand c'est justifiétu as déjà optimisé une requête lente en production. Mais aussi : API REST / gRPC : tu as conçu et maintenu des APIs en production, tu connais les enjeux de versioning, de performance et de documentationGoogle Cloud Platform : Cloud Run, Pub/Sub, BigQuery, Cloud Storage... tu es à l'aise dans un environnement cloud managéDonnées géospatiales : tu as manipulé du GPS, du GeoJSON, des projections ou des calculs de surfaces Ce qui pourra s'apprendre : Pas besoin de les maîtriser en arrivant, l'envie de monter en compétence suffit : PostGIS : les extensions spatiales de PostgreSQL, au cœur de nos calculs de parcellesTimescaleDB : nos séries temporelles, hypertables et politiques de rétentionKotlin : une partie de l'algorithme de valorisation de la donnée est en Kotlin. Tu n'as pas besoin d'être expert·e, mais tu es à l'aise pour lire et contribuer à du code dans ce langageClaude : tu sais tirer parti de l'IA pour accélérer ton développement, que ce soit pour générer du code, faire du refactoring ou documenter tes APIs Profil : Appétence produit forte : tu ne codes pas juste des specs, tu comprends le problème utilisateur et tu proposes des solutions. Tu es curieux·se de savoir comment ce que tu construis est utilisé sur le terrainAutonomie : l'équipe est resserrée, chaque personne a un impact direct. Tu sais prendre des initiatives et porter un sujet de bout en bout. Nous sommes une équipe produit de moins de 10 personnes, avec une Product Manager, une UI designer, et des développeuses et développeurs avec des compétences Front, Mobile, Backend et Hardware.Esprit d'équipe : tu es à l'aise pour collaborer avec des profils variés, partager tes connaissances et apprendre des autres. La communication est fluide, directe et bienveillante. Nous effectuons des revues de code quotidiennes, nous partageons nos avancées en daily, et nous organisons des rétrospectives pour améliorer notre fonctionnement.Pragmatisme : tu privilégies les solutions simples et efficaces. Over-engineering n'est pas dans ton vocabulaire Processus de recrutement : Échange téléphonique (30 min)Entretien sur le fit humain et produit (1h) : discussion avec l'équipe Care, et la Product Manager. On voit si nos valeurs et notre vision du produit sont alignées, et si tu te sens à l'aise dans notre équipe.Entretien technique (1h) : discussion d'architecture, exercice de code, et une partie modélisation de données et SQL. On regardera ensemble un schéma, on parlera d'index, de plans d'exécution et de requêtes lentes.