{"data":{"id":196538,"slug":"senior-full-stack-engineer-ml-data-stockholm-hybrid","type":"job","title":"Senior Full-Stack Engineer (ML & Data) Stockholm - Hybrid","description":"Senior Full-Stack Engineer (ML & Data)\nOwn our prediction models from training pipeline to customer-facing feature. Strong applied ML \u2014 calibration, evals, leakage \u2014 plus full-stack TypeScript to ship it.\nWe build AI agents that audit and optimize e-commerce advertising. Our platform syncs live data from Google Ads, Meta, Merchant Center, and Google Analytics, runs it through a rule engine, LLM-powered audit agents, and our own prediction models, and turns findings into concrete actions marketers can apply with one click.\nWhat sets us apart is measurement: we connect real profit data from our customers' e-commerce platforms to their ad accounts and build models that tell them what their marketing actually returns \u2014 not what ad platforms self-report. The ML in our product isn't decoration. Prediction models, calibration, and evaluation pipelines are core to what customers pay for.\nWe're a small team shipping fast on a modern, strictly-typed stack. You'd report directly to the CTO, with real ownership: features you design end-to-end, and models you own from training data to the number a customer sees on screen.\nThe role\nThis is a hybrid role \u2014 roughly 60% product engineering, 40% ML & data science. You'll ship full-stack features in our TypeScript monorepo and own prediction models as production software: framing the problem, building training and evaluation pipelines, monitoring calibration drift, and wiring outputs into the product.\nWe're not looking for a research scientist, or a pure web engineer. We want someone who treats a model the way a good engineer treats a service: tested, monitored, versioned, and honest about its failure modes.\nWhat you'll do\nOwn prediction models end-to-end \u2014 models that predict product returns and net profit per order \u2014 training data pipelines, feature engineering, evaluation (ranking quality and calibration), recalibration strategies, and serving model output into the product.\nBuild and maintain data pipelines \u2014 SQL feature builders on PostgreSQL shared by training and serving, versioned dataset exports, backfills, and data quality checks that keep training data honest (no leakage, no silent schema drift).\nDesign and build features across our TypeScript monorepo \u2014 tRPC procedures and NestJS services on the backend, React on the frontend \u2014 so model insights become actions marketers can apply with one click.\nWork on the AI audit agent \u2014 prompt design, rule evaluation, structured-output evals, and plumbing that turns LLM output into reliable, deduplicated actions across multiple model providers.\nExtend integration workers \u2014 sync campaign, product, and analytics data from Google and Meta APIs via Cloud Pub\/Sub pipelines.\nEvolve the data model in PostgreSQL\/Prisma \u2014 keep migrations, multi-tenancy, and role-based access clean as the product grows.\nOwn quality \u2014 write tests (Jest on TypeScript, pytest on Python), review PRs, and keep our CI\/CD pipeline to Cloud Run fast and boring.\n\nOur stack\nBackend \u2014 TypeScript, Node.js, NestJS + Fastify, tRPC, Zod, Prisma, PostgreSQL, ML & data \u2014 Python, pandas, scikit-learn, XGBoost, PyTorch, ONNX, SQL on PostgreSQL, BigQuery, Calibration pipelines, Bayesian MMM (Google Meridian)\nModel serving \u2014 FastAPI on Cloud Run \u00b7 Cloud Run Jobs \u00b7 GPU training on GCP Batch\nFrontend \u2014 React \u00b7 Vite \u00b7 Tailwind \u00b7 End-to-end types via tRPC\nInfrastructure \u2014 Google Cloud Run \u00b7 Pub\/Sub \u00b7 Docker \u00b7 Terraform \u00b7 GitHub Actions \u00b7 pnpm workspaces\nAI & integrations \u2014 Multiple LLM providers \u00b7 Google Ads \u00b7 Meta \u00b7 Merchant Center \u00b7 GA4\nWhat we're looking for\n5+ years building production software, with strong TypeScript on both server and client \u2014 or strong TypeScript on one side plus deep Python, with the willingness to close the gap fast.\nHands-on applied ML: you've trained, evaluated, and shipped prediction models that real users depended on. You can explain the difference between good ranking and good calibration, know what data leakage looks like, and have debugged a model that was confidently wrong.\nFluent Python for data work (pandas, scikit-learn or similar) and strong SQL \u2014 comfortable with large datasets in PostgreSQL or BigQuery.\nSolid relational database instincts \u2014 schema design, migrations, and query performance in PostgreSQL (Prisma is a plus).\nExperience with event-driven or queue-based architectures (Pub\/Sub, SQS, Kafka, or similar) and their failure modes.\nA habit of testing: you write tests because they let you move faster, not because someone told you to.\nPragmatic product sense \u2014 you ask why before how, and you'd rather ship a focused, well-measured model than a state-of-the-art one nobody can maintain.\n\n\n\nNice to have\nBayesian modeling or marketing mix modeling experience (priors, ROI calibration, health diagnostics).\nHands-on work with LLM APIs in production \u2014 prompting, evals, structured output, cost control, switching providers.\nExperience serving models on GCP (Cloud Run, GCP Batch, Vertex AI) and monitoring for drift.\nFamiliarity with Google Ads, Meta, or Merchant Center APIs, or ad-tech \/ e-commerce domain experience.\nNestJS, tRPC, or GCP (Cloud Run, Artifact Registry, Workload Identity) in a previous role.\n\n\n\nHow we work\nSmall team, short feedback loops, no ceremony for ceremony's sake. Strict TypeScript, code review on everything, CI that deploys to Cloud Run on merge. Models are held to the same standard as code: evaluated before they ship, monitored after. We optimize for shipping value weekly and keeping the codebase a place people enjoy working in.\nWe're a fast-growing team building AI agents that handle the repetitive work \u2014 so companies can focus on vision, strategy, and innovation. Here, you'll own ideas from first sketch to finished product, work closely with the founders, and see your impact immediately. We celebrate success, learn from challenges, and believe true magic happens through collaboration.\nWant to shape the future of AI-driven marketing?\nInterviews are conducted on an ongoing basis, so please submit your application as soon as possible.\nYou will be employed directly by the company. You will receive information about which company the advertisement refers to when you are in contact with the recruiter. Bumbli Group is therefore not the employer but the recruitment agency.\nWelcome to submit your application!\nBumbli Group is part of House of Recruitment \u2014 a personal, traditional and quality-driven recruitment agency in Gothenburg.","language":"sv","is_translated":true,"title_original":"Senior Full-Stack Engineer (ML & Data) Stockholm - Hybrid","description_original":"Senior Full-Stack Engineer (ML & Data)\nOwn our prediction models from training pipeline to customer-facing feature. Strong applied ML \u2014 calibration, evals, leakage \u2014 plus full-stack TypeScript to ship it.\nWe build AI agents that audit and optimize e-commerce advertising. Our platform syncs live data from Google Ads, Meta, Merchant Center, and Google Analytics, runs it through a rule engine, LLM-powered audit agents, and our own prediction models, and turns findings into concrete actions marketers can apply with one click.\nWhat sets us apart is measurement: we connect real profit data from our customers' e-commerce platforms to their ad accounts and build models that tell them what their marketing actually returns \u2014 not what ad platforms self-report. The ML in our product isn't decoration. Prediction models, calibration, and evaluation pipelines are core to what customers pay for.\nWe're a small team shipping fast on a modern, strictly-typed stack. You'd report directly to the CTO, with real ownership: features you design end-to-end, and models you own from training data to the number a customer sees on screen.\nThe role\nThis is a hybrid role \u2014 roughly 60% product engineering, 40% ML & data science. You'll ship full-stack features in our TypeScript monorepo and own prediction models as production software: framing the problem, building training and evaluation pipelines, monitoring calibration drift, and wiring outputs into the product.\nWe're not looking for a research scientist, or a pure web engineer. We want someone who treats a model the way a good engineer treats a service: tested, monitored, versioned, and honest about its failure modes.\nWhat you'll do\nOwn prediction models end-to-end \u2014 models that predict product returns and net profit per order \u2014 training data pipelines, feature engineering, evaluation (ranking quality and calibration), recalibration strategies, and serving model output into the product.\nBuild and maintain data pipelines \u2014 SQL feature builders on PostgreSQL shared by training and serving, versioned dataset exports, backfills, and data quality checks that keep training data honest (no leakage, no silent schema drift).\nDesign and build features across our TypeScript monorepo \u2014 tRPC procedures and NestJS services on the backend, React on the frontend \u2014 so model insights become actions marketers can apply with one click.\nWork on the AI audit agent \u2014 prompt design, rule evaluation, structured-output evals, and plumbing that turns LLM output into reliable, deduplicated actions across multiple model providers.\nExtend integration workers \u2014 sync campaign, product, and analytics data from Google and Meta APIs via Cloud Pub\/Sub pipelines.\nEvolve the data model in PostgreSQL\/Prisma \u2014 keep migrations, multi-tenancy, and role-based access clean as the product grows.\nOwn quality \u2014 write tests (Jest on TypeScript, pytest on Python), review PRs, and keep our CI\/CD pipeline to Cloud Run fast and boring.\n\nOur stack\nBackend \u2014 TypeScript, Node, js, NestJS + Fastify, tRPC, Zod, Prisma, PostgreSQL, ML & data \u2014 Python, pandas, scikit-learn, XGBoost, PyTorch, ONNX, SQL on PostgreSQL, BigQuery, Calibration pipelines, Bayesian MMM (Google Meridian)\nModel serving \u2014 FastAPI on Cloud Run \u00b7 Cloud Run Jobs \u00b7 GPU training on GCP Batch\nFrontend \u2014 React \u00b7 Vite \u00b7 Tailwind \u00b7 End-to-end types via tRPC\nInfrastructure \u2014 Google Cloud Run \u00b7 Pub\/Sub \u00b7 Docker \u00b7 Terraform \u00b7 GitHub Actions \u00b7 pnpm workspaces\nAI & integrations \u2014 Multiple LLM providers \u00b7 Google Ads \u00b7 Meta \u00b7 Merchant Center \u00b7 GA4\nWhat we're looking for\n5+ years building production software, with strong TypeScript on both server and client \u2014 or strong TypeScript on one side plus deep Python, with the willingness to close the gap fast.\nHands-on applied ML: you've trained, evaluated, and shipped prediction models that real users depended on. You can explain the difference between good ranking and good calibration, know what data leakage looks like, and have debugged a model that was confidently wrong.\nFluent Python for data work (pandas, scikit-learn or similar) and strong SQL \u2014 comfortable with large datasets in PostgreSQL or BigQuery.\nSolid relational database instincts \u2014 schema design, migrations, and query performance in PostgreSQL (Prisma is a plus).\nExperience with event-driven or queue-based architectures (Pub\/Sub, SQS, Kafka, or similar) and their failure modes.\nA habit of testing: you write tests because they let you move faster, not because someone told you to.\nPragmatic product sense \u2014 you ask why before how, and you'd rather ship a focused, well-measured model than a state-of-the-art one nobody can maintain.\n\n\n\nNice to have\nBayesian modeling or marketing mix modeling experience (priors, ROI calibration, health diagnostics).\nHands-on work with LLM APIs in production \u2014 prompting, evals, structured output, cost control, switching providers.\nExperience serving models on GCP (Cloud Run, GCP Batch, Vertex AI) and monitoring for drift.\nFamiliarity with Google Ads, Meta, or Merchant Center APIs, or ad-tech \/ e-commerce domain experience.\nNestJS, tRPC, or GCP (Cloud Run, Artifact Registry, Workload Identity) in a previous role.\n\n\n\nHow we work\nSmall team, short feedback loops, no ceremony for ceremony's sake. Strict TypeScript, code review on everything, CI that deploys to Cloud Run on merge. Models are held to the same standard as code: evaluated before they ship, monitored after. We optimize for shipping value weekly and keeping the codebase a place people enjoy working in.\nWe're a fast-growing team building AI agents that handle the repetitive work \u2014 so companies can focus on vision, strategy, and innovation. Here, you'll own ideas from first sketch to finished product, work closely with the founders, and see your impact immediately. We celebrate success, learn from challenges, and believe true magic happens through collaboration.\nWant to shape the future of AI-driven marketing?\nInterviews are conducted on an ongoing basis, so please submit your application as soon as possible. \nYou will be employed directly by the company. You will receive information about which company the advertisement refers to when you are in contact with the recruiter. Bumbli Group is therefore not the employer but the recruitment agency. \nWelcome to submit your application! \nBumbli Group is part of House of Recruitment \u2014 a personal, traditional and quality-driven recruitment agency in Gothenburg.","price":null,"currency":"SEK","status":"active","noindex":true,"location":{"address":null,"full_address":null,"city":"Stockholm","country":"SE","latitude":59.3251172,"longitude":18.0710935},"metadata":{"region":"Stockholms l\u00e4n","duration":"Tills vidare","employer":"Bumbli Group AB","positions":1,"profession":"Systemutvecklare\/Programmerare","salary_type":"Fast och r\u00f6rlig l\u00f6n","scope_of_work":"100\u2013100 %","working_hours":"Heltid","employment_type":"full_time","occupation_field":"Data\/IT","employer_workplace":"Konfidentiellt","translation_status":"done","experience_required":true,"employment_type_label":"Tillsvidareanst\u00e4llning (inkl. eventuell provanst\u00e4llning)"},"user_id":null,"is_sponsored":false,"views_count":0,"ai_views_count":1,"ai_vendor_counts":{"anthropic":1},"visibility":"public","submission_source":null,"submission_ai_name":null,"has_owner_email":true,"can_contact_owner":true,"phone":null,"owner_email":"nyttjobb@houseofrecruitment.se","images":[],"published_at":"2026-09-04T16:57:05+00:00","expires_at":"2026-09-20T23:59:59+00:00","created_at":"2026-09-05T03:38:45+00:00","updated_at":"2026-09-05T04:02:14+00:00"}}