Senior Software Developer - become a part of new team in Copenhagen with the defence software domain
Copenhagen, Capital Region of Denmark, Denmark
Sep 27, 2025
Computerprogrammering
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":4623,"title":"Senior Software Developer - become a part of new team in Copenhagen with the defence software domain","company_name":"Systematic","description":"About the job\n\nSenior Software Developer – become a part of new team in Copenhagen with the defence software domain\n\nAre you a Senior Software developer, looking to apply your skills in Java and Angular within the defence domain? Then read on \n\nThe position \nAt Systematic, we are establishing a new Insights scrum team in Copenhagen and are now looking for the first Software Developers to join us.\n\nReporting to our Senior Project Manager for Insight in Copenhagen, you will join our product SitaWare Insight. The product is our decision support tool that transforms data collection and management into valuable military intelligence, and provides commanders with advanced storage, compute, and analytic capabilities.\n\nYour every day tasks will look something like the following:\n\n\n Implement high quality software which makes a real difference for our customers\n Lead the agile software development and continuously improve how we work\n Write Initial Feature Description and Feature Requirement Specifications\n Develop and document code according to agile principles using Angular, Java, and other relevant technologies\n Run the full test cycle together with our dedicated testers to ensure high quality of our product\n\n\n\nSitaWare Insight makes use of a variety of technologies and frameworks, where the most prominent are:\n Angular 14 (TypeScript, SCSS), Java 17 microservices using Spring Boot, Docker on Kubernetes with Istio and Helm, Kafka, Cassandra, PostgreSQL, Prometheus and Grafana, Gradle and Bazel, Linux and Bash scripting\n\nContribute to shaping the future of AI decision making \nWe are growing our department with a new team in Copenhagen working on our SitaWare product called Insights.\n\n \n\nWe would like to offer you the following:\n \n\n Meaningful mission – Contribute to Defence tech that enhances real-world operational readiness \n Contribute in a new team setup\n Central Copenhagen office – Join our new team in a modern office just steps away from everything the city has to offer as well as public transportation \n Strong foundation, new technologies to discover – Insights is focusing on AI to support decision making in defence and hence we continue to discover new way to solve the challenges\n International, collaborative culture – Work alongside skilled teams in Aarhus, Bucharest, and beyond - both onsite and remote\n\n\n\nYour Qualifications \nAs a Senior Software Developer, you will play a crucial role in our team, taking ownership, providing leadership, and facilitating agile development to drive innovation and new functionality. You will take on the role of mentoring your more junior colleagues to ensure we all never stop developing.\n\nFurthermore, you see yourself as a problem solver that has a good eye for identifying and solving complex problems with accuracy. Last but not least, you are curious and eager to learn more – you stay up to date with the newest technology and industry trends and bring innovation to the table.\n\nWe expect that you can recognize yourself in the following:\n\n\n BA or MA in Computer Science or related field\n +5 years of experience with backend development in Java or similar\n +5 years of experience with frontend development in Angular or similar\n Experience with Docker and Kubernetes\n Experience with Microservices and message queues\n\n\n\nPlease note that you must be able to present a clean criminal record and have lived in a NATO\/EU country for the past seven years as we work with security-classified projects. Read more here. \n\nWelcome to Systematic Copenhagen \nWhen you join us in Copenhagen, you're not just getting a desk at one of the city’s best locations—you’re stepping into a workplace where community matters. Our Employees Club keeps things lively with monthly social events, and our office catering makes sure you’re always well taken care of. Whether you’re into casual games or just good company, you’ll find both at our foosball table or during our relaxed Friday bar gatherings. \n\nNever stop developing \nSystematic is uniquely people-centric, truly international and proudly rooted in Denmark with more than 1100 employees. Together, we write intelligent and innovative code to drive progress and improve lives. We develop IT solutions that make a real difference where it matters most. This is why we never stop developing. Here, there is room to be professional and personal. It is not just a place to work but a place to belong. \n\nStart your development here \nWe will be assessing applications on an ongoing basis as we wish to welcome our new colleague as soon as possible, so click Apply Now and send us your CV today. If you have any questions, you are always welcome to contact us on tel. +45 8943 2000 and ask for Allan Carstens, Senior Project Manager \n\nGet in touch\n\nLone Bryder\n\nSenior Manager","brief_summary_of_job":null,"existing_skills_from_job":["Full-time","Scrum","Software Development","HTML","XML","Back-End Web Development","Java","Angular","Kubernetes","Computer Science","Problem Solving","Bash","TypeScript","Spring Boot","PostgreSQL","Cassandra","Kafka","Prometheus","Grafana"],"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": 4623,
"extracted_skills": [
{
"skill_name": "Java",
"category": "languages",
"confidence": 100,
"mentioned_as": ["Java"],
"context": "mentioned in the job description as a required skill for backend development"
},
{
"skill_name": "Angular",
"category": "frameworks",
"confidence": 100,
"mentioned_as": ["Angular", "Angular 14"],
"context": "mentioned in the job description as a required skill for frontend development"
},
{
"skill_name": "TypeScript",
"category": "languages",
"confidence": 100,
"mentioned_as": ["TypeScript"],
"context": "mentioned in the job description as part of the Angular framework"
},
{
"skill_name": "Spring Boot",
"category": "frameworks",
"confidence": 100,
"mentioned_as": ["Spring Boot"],
"context": "mentioned in the job description as part of the Java microservices"
},
{
"skill_name": "Docker",
"category": "tools",
"confidence": 100,
"mentioned_as": ["Docker"],
"context": "mentioned in the job description as a required skill"
},
{
"skill_name": "Kubernetes",
"category": "tools",
"confidence": 100,
"mentioned_as": ["Kubernetes"],
"context": "mentioned in the job description as a required skill"
},
{
"skill_name": "Kafka",
"category": "tools",
"confidence": 100,
"mentioned_as": ["Kafka"],
"context": "mentioned in the job description as part of the technology stack"
},
{
"skill_name": "Cassandra",
"category": "databases",
"confidence": 100,
"mentioned_as": ["Cassandra"],
"context": "mentioned in the job description as part of the technology stack"
},
{
"skill_name": "PostgreSQL",
"category": "databases",
"confidence": 100,
"mentioned_as": ["PostgreSQL"],
"context": "mentioned in the job description as part of the technology stack"
},
{
"skill_name": "Prometheus",
"category": "tools",
"confidence": 100,
"mentioned_as": ["Prometheus"],
"context": "mentioned in the job description as part of the technology stack"
},
{
"skill_name": "Grafana",
"category": "tools",
"confidence": 100,
"mentioned_as": ["Grafana"],
"context": "mentioned in the job description as part of the technology stack"
},
{
"skill_name": "Bash",
"category": "languages",
"confidence": 100,
"mentioned_as": ["Bash"],
"context": "mentioned in the job description as part of the development process"
}
],
"reasoning": {
"total_skills_found": 11,
"skills_by_category": {
"languages": ["Java", "TypeScript", "Bash"],
"frameworks": ["Angular", "Spring Boot"],
"databases": ["Cassandra", "PostgreSQL"],
"tools": ["Docker", "Kubernetes", "Kafka", "Prometheus", "Grafana"]
},
"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
Senior Software Developer – become a part of new team in Copenhagen with the defence software domain
Are you a Senior Software developer, looking to apply your skills in Java and Angular within the defence domain? Then read on
The position
At Systematic, we are establishing a new Insights scrum team in Copenhagen and are now looking for the first Software Developers to join us.
Reporting to our Senior Project Manager for Insight in Copenhagen, you will join our product SitaWare Insight. The product is our decision support tool that transforms data collection and management into valuable military intelligence, and provides commanders with advanced storage, compute, and analytic capabilities.
Your every day tasks will look something like the following:
Implement high quality software which makes a real difference for our customers
Lead the agile software development and continuously improve how we work
Write Initial Feature Description and Feature Requirement Specifications
Develop and document code according to agile principles using Angular, Java, and other relevant technologies
Run the full test cycle together with our dedicated testers to ensure high quality of our product
SitaWare Insight makes use of a variety of technologies and frameworks, where the most prominent are:
Angular 14 (TypeScript, SCSS), Java 17 microservices using Spring Boot, Docker on Kubernetes with Istio and Helm, Kafka, Cassandra, PostgreSQL, Prometheus and Grafana, Gradle and Bazel, Linux and Bash scripting
Contribute to shaping the future of AI decision making
We are growing our department with a new team in Copenhagen working on our SitaWare product called Insights.
We would like to offer you the following:
Meaningful mission – Contribute to Defence tech that enhances real-world operational readiness
Contribute in a new team setup
Central Copenhagen office – Join our new team in a modern office just steps away from everything the city has to offer as well as public transportation
Strong foundation, new technologies to discover – Insights is focusing on AI to support decision making in defence and hence we continue to discover new way to solve the challenges
International, collaborative culture – Work alongside skilled teams in Aarhus, Bucharest, and beyond - both onsite and remote
Your Qualifications
As a Senior Software Developer, you will play a crucial role in our team, taking ownership, providing leadership, and facilitating agile development to drive innovation and new functionality. You will take on the role of mentoring your more junior colleagues to ensure we all never stop developing.
Furthermore, you see yourself as a problem solver that has a good eye for identifying and solving complex problems with accuracy. Last but not least, you are curious and eager to learn more – you stay up to date with the newest technology and industry trends and bring innovation to the table.
We expect that you can recognize yourself in the following:
BA or MA in Computer Science or related field
+5 years of experience with backend development in Java or similar
+5 years of experience with frontend development in Angular or similar
Experience with Docker and Kubernetes
Experience with Microservices and message queues
Please note that you must be able to present a clean criminal record and have lived in a NATO/EU country for the past seven years as we work with security-classified projects. Read more here.
Welcome to Systematic Copenhagen
When you join us in Copenhagen, you're not just getting a desk at one of the city’s best locations—you’re stepping into a workplace where community matters. Our Employees Club keeps things lively with monthly social events, and our office catering makes sure you’re always well taken care of. Whether you’re into casual games or just good company, you’ll find both at our foosball table or during our relaxed Friday bar gatherings.
Never stop developing
Systematic is uniquely people-centric, truly international and proudly rooted in Denmark with more than 1100 employees. Together, we write intelligent and innovative code to drive progress and improve lives. We develop IT solutions that make a real difference where it matters most. This is why we never stop developing. Here, there is room to be professional and personal. It is not just a place to work but a place to belong.
Start your development here
We will be assessing applications on an ongoing basis as we wish to welcome our new colleague as soon as possible, so click Apply Now and send us your CV today. If you have any questions, you are always welcome to contact us on tel. +45 8943 2000 and ask for Allan Carstens, Senior Project Manager
Get in touch
Lone Bryder
Senior Manager