Senior Backend Software Engineer - relocation Germany
Copenhagen, Capital Region of Denmark, Denmark
Oct 5, 2025
Arbejdsformidlingskontorers aktiviteter
Dette job er ikke blevet analyseret af vores AI-vurderingssystem. Klik på knappen nedenfor for at få en AI-drevet match score baseret på dine præferencer.
# Job Skill Enhancement System
## CORE INSTRUCTION:
You are an AI that extracts and identifies coding languages and frameworks from job descriptions. Your goal is to find ALL relevant technical skills mentioned in the job posting, even if they're mentioned in different ways or aliases.
## INPUT DATA:
{
"job": {"job_id":5045,"title":"Senior Backend Software Engineer - relocation Germany","company_name":"EUTALENTS","description":"About the job\n\nAre you a skilled backend engineer looking for an exciting opportunity in a dynamic and international environment?\n\nAbout the company:\n\nJoin a leading international developer of IT systems for the aviation industry. Our products are used by civil and military air navigation service providers, government agencies, civil aviation authorities, and airlines in over 55 countries worldwide. We are part of a globally recognized parent company, headquartered in Madrid, Spain, with operations in multiple locations.\n\nResponsibilities:\n\n\n Agile Scrum Team Member: Play a significant role in one of our agile Scrum teams to develop, enhance, and maintain our product solutions for the aviation industry.\n Full Development Lifecycle: Participate from inception through testing, implementation, and support using the Scaled Agile Framework (SAFe) methodology.\n API and Business Services Development: Create API interfaces and business services for aeronautical applications.\n Mentorship and Guidance: Provide guidance to Junior Developers, prepare development tasks\/tickets, conduct code reviews, and pair programming.\n Enterprise-Quality Code Development: Develop enterprise-quality, horizontally scalable code using best practices quickly and according to specifications.\n\n\nKey Requirements:\n\n\n Minimum 5 years experience as a self-motivated engineer with using Kafka, Java, \n\n\nSpring\/Quarkus and related technologies\n\n▪ Extensive experience with Microservices, Event-Sourcing, open-source data solutions and cloud native applications\n\n▪ Subject matter expertise in infrastructure \/ hardware \/ software \/ database middleware stack\n\n▪ Engineering experience in Kafka\/Confluent and knowledge of Kafka API‘s\n\n▪ Relevant knowledge of best practices related to security, performance and disaster\n\nrecovery\n\n▪ Strong problem solving and analytical skills\n\n\nGood English language skills (C1) \n\n\nPersonality Traits & Mindset:\n\n\nSolution-Oriented Thinking\nIndependent and Structured Working Style\nStrong Analytical Skills\n\n\nEmployment Details and Benefits:\n\n\n Contract: Open-ended.\n Working Hours: Full-time, 40 hours per week.\n Vacation Days: 30\n Probation Period: 6 months\n Flexitime: Flexible working hours without core working time.\n Work-Life Balance: Good work-life balance with 60% mobile working.\n Training and Development: Individual support with regular further training programs.\n International Teams: Opportunity to work in diverse, international teams.\n Additional Benefits: Job bike, Wellpass, corporate benefits.\n Location Perks: Situated in the four-country region on Lake Constance, offering attractive leisure opportunities.\n\n\nRelocation to Germany:\n\nFriedrichshafen is located in the beautiful four-country region on Lake Constance, bordering Germany, Austria, Switzerland, and Liechtenstein. This picturesque area is perfect for outdoor enthusiasts, offering activities such as skiing in the nearby Alps, hiking and cycling around the lake, and sailing or kayaking on the water. The region also boasts rich cultural attractions, including historical sites, museums, and festivals, making it a wonderful place to live and work.\n\nTeam Structure: \n\n\n Team Size: 7-8 members in the Scrum Team.\n Reporting:\n Daily Business: Reports to Scrum Master.\n Disciplinary: Reports to Team Leader Software Engineering.\n\nHiring Process:\n\n\n Application Review: Initial screening of submitted applications.\n First Interview: Assessment of technical skills and cultural fit.\n Second Interview: Further evaluation, possibly involving technical challenges or deep dives.\n Final Decision: Selection and job offer.\n\n\nIf you are a self-motivated engineer with a passion for backend development and meet the above requirements, we would love to hear from you. Join us and contribute to innovative solutions in the aviation industry!","brief_summary_of_job":null,"existing_skills_from_job":["On-site","Full-time","€70K\/month - €78K\/month","Java","English","Scrum","Back-End Web Development","Cloud Computing","Code Review","HTML","Mentoring","Programming","Microservices","Kafka"],"existing_skills_from_database":[]},
"coding_categories": {"languages":["Bash","C","C#","C++","CSS","Clojure","Dart","Elixir","Go","Groovy","Haskell","HTML","Java","JavaScript","Julia","Kotlin","Lua","MATLAB","Objective-C","Perl","PHP","PowerShell","Python","R","Ruby","Rust","Sass","Scala","Swift","TypeScript"],"frameworks":[".NET","Angular","Apache Spark","ASP.NET","Backbone.js","Bootstrap","CodeIgniter","Django","Ember.js","Express","FastAPI","Flask","Flutter","Hadoop","Ionic","jQuery","Laravel","Livewire","Meteor","NestJS","Next.js","Node.js","Nuxt.js","Phoenix","PHPUnit","PyTorch","React","React Native","Ruby on Rails","Spring Boot","Svelte","Symfony","Tailwind CSS","TensorFlow","Vue.js","Xamarin","Alpine.js","Filament","WordPress"],"databases":["MySQL","PostgreSQL","Redis","MongoDB","DynamoDB","MariaDB","NoSQL","Oracle","BigQuery","Elasticsearch","SQL","SQL Server","SQLite","Cassandra","CouchDB","Neo4j","InfluxDB","CockroachDB"],"tools":["Git","GitHub","GitLab","Bitbucket","Docker","Kubernetes","CI\/CD","Jenkins","Kafka","RabbitMQ","Amazon SQS","AMQP","PubSub","REST API","RESTful APIs","GraphQL","AWS","Azure","GCP","Terraform","Ansible","Puppet","Chef","Vagrant","Vault","Consul","Prometheus","Grafana","ELK Stack","Splunk"],"skills":["English","Danish","Communication","Full-stack development","Back-end development","Front-end development","Cloud computing","DevOps","Microsoft Excel","PowerBI","Power Platform","Agile","Scrum","Problem-solving","Team collaboration","Physical presence","Remote work","Hybrid work"],"colors":{"languages":"blue","frameworks":"purple","databases":"orange","tools":"indigo"}},
"skill_aliases": {"bash":"Bash","c":"C","c plus plus":"C++","C plus plus":"C++","c sharp":"C#","C sharp":"C#","c#":"C#","c++":"C++","clojure":"Clojure","cpp":"C++","dart":"Dart","elixir":"Elixir","go":"Go","golang":"Go","Golang":"Go","groovy":"Groovy","haskell":"Haskell","java":"Java","java script":"JavaScript","Java script":"JavaScript","javascript":"JavaScript","Javascript":"JavaScript","js":"JavaScript","JS":"JavaScript","es5":"JavaScript","ES5":"JavaScript","es6":"JavaScript","ES6":"JavaScript","julia":"Julia","kotlin":"Kotlin","lua":"Lua","matlab":"MATLAB","Matlab":"MATLAB","objective c":"Objective-C","Objective C":"Objective-C","objective-c":"Objective-C","objc":"Objective-C","ObjC":"Objective-C","obj-c":"Objective-C","Obj-C":"Objective-C","perl":"Perl","php":"PHP","Php":"PHP","powershell":"PowerShell","Power Shell":"PowerShell","python":"Python","py":"Python","Py":"Python","phyton":"Python","r":"R","ruby":"Ruby","rust":"Rust","scala":"Scala","swift":"Swift","typescript":"TypeScript","Typescript":"TypeScript","ts":"TypeScript","TS":"TypeScript","mysql":"MySQL","postgresql":"PostgreSQL","postgres":"PostgreSQL","mongodb":"MongoDB","mongo":"MongoDB","redis":"Redis","sqlite":"SQLite","oracle":"Oracle","mssql":"SQL Server","sql server":"SQL Server","dynamodb":"DynamoDB","dynamo db":"DynamoDB","mariadb":"MariaDB","maria db":"MariaDB","nosql":"NoSQL","no sql":"NoSQL","bigquery":"BigQuery","big query":"BigQuery","elasticsearch":"Elasticsearch","elastic search":"Elasticsearch","cassandra":"Cassandra","couchdb":"CouchDB","couch db":"CouchDB","neo4j":"Neo4j","neo 4j":"Neo4j","influxdb":"InfluxDB","influx db":"InfluxDB","cockroachdb":"CockroachDB","cockroach db":"CockroachDB","aws":"AWS","amazon web services":"AWS","azure":"Azure","microsoft azure":"Azure","gcp":"GCP","google cloud platform":"GCP","google cloud":"GCP",".Net":".NET","angular":"Angular","angular js":"Angular","Angular js":"Angular","angularjs":"Angular","AngularJS":"Angular","apache spark":"Apache Spark","asp net":".NET","ASP net":".NET","asp.net":"ASP.NET","ASP.NET":".NET","asp.net core":".NET","ASP.NET Core":".NET","backbone":"Backbone.js","BackboneJS":"Backbone.js","backbone js":"Backbone.js","backbonejs":"Backbone.js","bootstrap":"Bootstrap","Bootstrap framework":"Bootstrap","twitter bootstrap":"Bootstrap","Twitter Bootstrap":"Bootstrap","code igniter":"CodeIgniter","codeigniter":"CodeIgniter","django":"Django","ember":"Ember.js","ember js":"Ember.js","emberjs":"Ember.js","EmberJS":"Ember.js","express":"Express","express.js":"Express","Express.js":"Express","expressjs":"Express","ExpressJS":"Express","fast api":"FastAPI","Fast api":"FastAPI","fastapi":"FastAPI","flask":"Flask","flutter":"Flutter","hadoop":"Hadoop","Hadoop":"Hadoop","ionic":"Ionic","Ionic framework":"Ionic","ionic framework":"Ionic","jquery":"jQuery","JQuery":"jQuery","JQUERY":"jQuery","laravel":"Laravel","meteor":"Meteor","meteor js":"Meteor","meteorjs":"Meteor","MeteorJS":"Meteor","nestjs":"NestJS","nest js":"NestJS","Nest JS":"NestJS","Nestjs":"NestJS","next js":"Next.js","Next js":"Next.js","next.js":"Next.js","nextjs":"Next.js","NextJS":"Next.js","node":"Node.js","Node":"Node.js","node.js":"Node.js","nodejs":"Node.js","NodeJS":"Node.js","nuxt js":"Nuxt.js","Nuxt js":"Nuxt.js","nuxt.js":"Nuxt.js","nuxtjs":"Nuxt.js","NuxtJS":"Nuxt.js","phoenix":"Phoenix","Phoenix framework":"Phoenix","pytorch":"PyTorch","Pytorch":"PyTorch","torch":"PyTorch","Torch":"PyTorch","react":"React","react.js":"React","React.js":"React","reactjs":"React","ReactJS":"React","react native":"React Native","ReactNative":"React Native","reactnative":"React Native","rn":"React Native","RN":"React Native","rails":"Ruby on Rails","Rails":"Ruby on Rails","ror":"Ruby on Rails","ROR":"Ruby on Rails","ruby on rails":"Ruby on Rails","Ruby On Rails":"Ruby on Rails","spark":"Apache Spark","Spark":"Apache Spark","spring":"Spring Boot","Spring":"Spring Boot","spring boot":"Spring Boot","Spring Boot":"Spring Boot","spring framework":"Spring Boot","Spring Framework":"Spring Boot","SpringBoot":"Spring Boot","springboot":"Spring Boot","svelte":"Svelte","symfony":"Symfony","tailwind":"Tailwind CSS","Tailwind":"Tailwind CSS","tailwind css":"Tailwind CSS","Tailwind Css":"Tailwind CSS","tailwindcss":"Tailwind CSS","TailwindCSS":"Tailwind CSS","tensorflow":"TensorFlow","Tensorflow":"TensorFlow","tensor flow":"TensorFlow","Vue":"Vue.js","vue":"Vue.js","vue js":"Vue.js","vue.js":"Vue.js","vuejs":"Vue.js","VueJS":"Vue.js","xamarin":"Xamarin","Xamarin Forms":"Xamarin","Xamarin.forms":"Xamarin","livewire":"Livewire","phpunit":"PHPUnit","alpine":"Alpine.js","alpine js":"Alpine.js","alpinejs":"Alpine.js","filament":"Filament","docker":"Docker","kubernetes":"Kubernetes","k8s":"Kubernetes","github":"GitHub","gitlab":"GitLab","bitbucket":"Bitbucket","terraform":"Terraform","puppet":"Puppet","chef":"Chef","git":"Git","jenkins":"Jenkins","kafka":"Kafka","rabbitmq":"RabbitMQ","amazon sqs":"Amazon SQS","amqp":"AMQP","pubsub":"PubSub","rest api":"REST API","restful api":"RESTful APIs","restful apis":"RESTful APIs","graphql":"GraphQL","ansible":"Ansible","vagrant":"Vagrant","vault":"Vault","consul":"Consul","prometheus":"Prometheus","grafana":"Grafana","elk stack":"ELK Stack","splunk":"Splunk","scrum":"Scrum","agile":"Agile","kanban":"Kanban","devops":"DevOps","ci\/cd":"CI\/CD","tdd":"TDD","bdd":"BDD","linux":"Linux","windows":"Windows","macos":"macOS","ubuntu":"Ubuntu","centos":"CentOS","debian":"Debian","junit":"JUnit","pytest":"PyTest","jest":"Jest","mocha":"Mocha","cypress":"Cypress","selenium":"Selenium","html":"HTML","HTML":"HTML","html5":"HTML","HTML5":"HTML","css":"CSS","CSS":"CSS","css3":"CSS","CSS3":"CSS","sass":"Sass","scss":"Sass","SCSS":"Sass","less":"Less","LESS":"Less","webpack":"Webpack","gulp":"Gulp","npm":"npm","yarn":"Yarn","sql":"SQL","full time":"Fuldtid","full-time":"Fuldtid","fuldtid":"Fuldtid","part time":"Deltid","part-time":"Deltid","deltid":"Deltid","contract":"Kontrakt","kontrakt":"Kontrakt","remote":"Fjernarbejde","fjernarbejde":"Fjernarbejde","hybrid":"Hybridarbejde","hybridarbejde":"Hybridarbejde","on-site":"Fysisk tilstedeværelse","onsite":"Fysisk tilstedeværelse","fysisk tilstedeværelse":"Fysisk tilstedeværelse"}
}
## TASK:
1. **Extract ALL coding languages and frameworks** mentioned in the job description
2. **Use the skill_aliases mapping** to normalize skill names (e.g., "JS" → "JavaScript", "React.js" → "React")
3. **Only include skills from the coding_categories** (languages and frameworks)
4. **Avoid duplicates** - if "JavaScript" and "JS" are both mentioned, only include "JavaScript"
5. **Be thorough** - look for skills mentioned in:
- Job title
- Job description
- Brief summary
- Requirements sections
- Nice-to-have sections
## SKILL CATEGORIES TO EXTRACT:
- **Languages**: Programming languages (PHP, Python, JavaScript, Java, C#, Go, Rust, etc.)
- **Frameworks**: Web frameworks and libraries (Laravel, React, Vue.js, Angular, Django, Spring Boot, etc.)
- **Databases**: Database systems and data stores (MySQL, PostgreSQL, Redis, MongoDB, DynamoDB, etc.)
- **Tools**: Development tools and infrastructure (Git, Docker, AWS, CI/CD, Jenkins, Kafka, etc.)
## EXCLUSION RULES:
- Do NOT extract general skills (communication, languages like English, etc.)
- Do NOT extract business skills (Excel, PowerBI for non-technical roles)
- Do NOT extract work arrangements (remote, physical presence)
- Do NOT include methodologies (Agile, Scrum, etc.) unless specifically technical
- Do NOT include skills already in existing_skills_from_database
## OUTPUT FORMAT:
Return ONLY valid JSON in this exact structure:
{
"job_id": <integer>,
"extracted_skills": [
{
"skill_name": "<normalized_skill_name>",
"category": "<languages|frameworks|databases|tools>",
"confidence": <integer 0-100>,
"mentioned_as": ["<original_mention_1>", "<original_mention_2>"],
"context": "<brief_context_where_found>"
}
],
"reasoning": {
"total_skills_found": <integer>,
"skills_by_category": {
"languages": ["<skill1>", "<skill2>"],
"frameworks": ["<skill1>", "<skill2>"],
"databases": ["<skill1>", "<skill2>"],
"tools": ["<skill1>", "<skill2>"]
},
"duplicates_removed": ["<original_mention> → <normalized_name>"],
"excluded_skills": ["<skill>", "<reason>"]
},
"confidence": <integer 0-100>
}
Return nothing outside the JSON object.
{
"job_id": 5045,
"extracted_skills": [
{
"skill_name": "Java",
"category": "languages",
"confidence": 100,
"mentioned_as": ["Java"],
"context": "Key Requirements: Minimum 5 years experience as a self-motivated engineer with using Kafka, Java"
},
{
"skill_name": "Kafka",
"category": "tools",
"confidence": 100,
"mentioned_as": ["Kafka"],
"context": "Key Requirements: Engineering experience in Kafka/Confluent and knowledge of Kafka API‘s"
},
{
"skill_name": "Spring Boot",
"category": "frameworks",
"confidence": 100,
"mentioned_as": ["Spring"],
"context": "Key Requirements: using Kafka, Java, Spring/Quarkus and related technologies"
},
{
"skill_name": "Microservices",
"category": "tools",
"confidence": 100,
"mentioned_as": ["Microservices"],
"context": "Key Requirements: Extensive experience with Microservices, Event-Sourcing, open-source data solutions and cloud native applications"
}
],
"reasoning": {
"total_skills_found": 4,
"skills_by_category": {
"languages": ["Java"],
"frameworks": ["Spring Boot"],
"databases": [],
"tools": ["Kafka", "Microservices"]
},
"duplicates_removed": [],
"excluded_skills": []
},
"confidence": 100
}
Brug avanceret AI (GPT-4o) til at generere en personaliseret ansøgning på dansk til denne jobansøgning. Brevet vil være skræddersyet til din profil, de specifikke jobkrav og omfattende virksomhedsinformation for maksimal effekt.
About the job
Are you a skilled backend engineer looking for an exciting opportunity in a dynamic and international environment?
About the company:
Join a leading international developer of IT systems for the aviation industry. Our products are used by civil and military air navigation service providers, government agencies, civil aviation authorities, and airlines in over 55 countries worldwide. We are part of a globally recognized parent company, headquartered in Madrid, Spain, with operations in multiple locations.
Responsibilities:
Agile Scrum Team Member: Play a significant role in one of our agile Scrum teams to develop, enhance, and maintain our product solutions for the aviation industry.
Full Development Lifecycle: Participate from inception through testing, implementation, and support using the Scaled Agile Framework (SAFe) methodology.
API and Business Services Development: Create API interfaces and business services for aeronautical applications.
Mentorship and Guidance: Provide guidance to Junior Developers, prepare development tasks/tickets, conduct code reviews, and pair programming.
Enterprise-Quality Code Development: Develop enterprise-quality, horizontally scalable code using best practices quickly and according to specifications.
Key Requirements:
Minimum 5 years experience as a self-motivated engineer with using Kafka, Java,
Spring/Quarkus and related technologies
▪ Extensive experience with Microservices, Event-Sourcing, open-source data solutions and cloud native applications
▪ Subject matter expertise in infrastructure / hardware / software / database middleware stack
▪ Engineering experience in Kafka/Confluent and knowledge of Kafka API‘s
▪ Relevant knowledge of best practices related to security, performance and disaster
recovery
▪ Strong problem solving and analytical skills
Good English language skills (C1)
Personality Traits & Mindset:
Solution-Oriented Thinking
Independent and Structured Working Style
Strong Analytical Skills
Employment Details and Benefits:
Contract: Open-ended.
Working Hours: Full-time, 40 hours per week.
Vacation Days: 30
Probation Period: 6 months
Flexitime: Flexible working hours without core working time.
Work-Life Balance: Good work-life balance with 60% mobile working.
Training and Development: Individual support with regular further training programs.
International Teams: Opportunity to work in diverse, international teams.
Additional Benefits: Job bike, Wellpass, corporate benefits.
Location Perks: Situated in the four-country region on Lake Constance, offering attractive leisure opportunities.
Relocation to Germany:
Friedrichshafen is located in the beautiful four-country region on Lake Constance, bordering Germany, Austria, Switzerland, and Liechtenstein. This picturesque area is perfect for outdoor enthusiasts, offering activities such as skiing in the nearby Alps, hiking and cycling around the lake, and sailing or kayaking on the water. The region also boasts rich cultural attractions, including historical sites, museums, and festivals, making it a wonderful place to live and work.
Team Structure:
Team Size: 7-8 members in the Scrum Team.
Reporting:
Daily Business: Reports to Scrum Master.
Disciplinary: Reports to Team Leader Software Engineering.
Hiring Process:
Application Review: Initial screening of submitted applications.
First Interview: Assessment of technical skills and cultural fit.
Second Interview: Further evaluation, possibly involving technical challenges or deep dives.
Final Decision: Selection and job offer.
If you are a self-motivated engineer with a passion for backend development and meet the above requirements, we would love to hear from you. Join us and contribute to innovative solutions in the aviation industry!