Java software engineer (regular)
Copenhagen, Capital Region of Denmark, Denmark
Sep 21, 2025
Andre organisationers og foreningers aktiviteter i.a.n.
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":4880,"title":"Java software engineer (regular)","company_name":"BEC Financial Technologies","description":"About the job\n\nThis position is based at our friendly office in Roskilde and you will join our Business Banking Initiative.\n\nThe position as Java engineer offers a unique opportunity to join a fresh team in charge of building a new and modern liquidity management solution for a strategically important initiative in BEC. At BEC, we prefer to collaborate often in the office, but we also have the opportunity to work remotely. Your direct manager will be Mathias Møller Hansen.\n\nPrimary tasks and responsibilities include: \n\n\n\nJava development: solid background in Java development, covering Java 17 or older\/newest releases with hands-on experience utilizing the Spring Framework. \nIntegration: design, develop, and integrate RESTful and SOAP APIs to support seamless system communication. \nDatabase management: utilize strong SQL skills for Microsoft SQL Server (MSSQL), focusing on database design, optimization, and performance tuning. \nCI\/CD: managing and maintaining CI\/CD pipelines using Jenkins and Argo CD to support automated software delivery. \nVersion control: collaborate effectively using Git workflows and best practices. \nSource code management: manage repositories and code hosting through Bitbucket. \nTesting: plan and execute unit and component tests to ensure high-quality deliverables. \nAgile methodologies: work within Agile frameworks using Jira for project tracking and team collaboration \n\n\n\nTo succeed you will have: \n\n\n\nHands-on experience (at least 3-4 years) in integrating the above-mentioned technologies into everyday work practices. \nUniversity degree, ideally in Information Technology, Computer Science, or a closely related discipline. \nAbility to take ownership of assigned tasks and deliver them according to project plans, with a proactive attitude and willingness to learn. \nStrong team collaboration skills, including supporting colleagues, sharing knowledge, contributing to shared team goals, and actively participating in team meetings. \nBusiness-oriented mindset, with the ability to understand business requirements and translate them into effective IT solutions.\nFluency in English, both written and spoken, enabling effective collaboration with colleagues in Poland and Denmark \n\n\n\nIt’s nice-to-have: \n\n\n\nKnowledge of banking platforms (e.g. payments and accounts)\nFundamental infrastructure and network knowledge \nExperience with Kafka or other event platforms \n\n\n\nBe your best self with BEC’s Benefits! \n\nWe offer a diverse range of benefits for our employees. Here are just a few of them.\n\nType of cooperation: employment contract\n\n\n\nProfessional development\nHealthy, varied lunch and fruit in the canteen \nActive staff associations: yoga, cycling, go-karting, salsa dancing etc. \nFlexible working hours\nHealth insurance\nReferral bonus\nFlexible working hours\n\n\n\nWhat does the recruitment process look like? \n\n\n\nSend us your CV: We want to get to know you \nScreening call: Let’s chat and see if we’re a match \nMeet our talent partner and technical expert: Learn more about the job, BEC Poland, and tell us more about your skills and experience. \nMeet your future manager and team: See who you’ll be working closely with. \nTime to sign the contract: We’re ready to welcome you to BEC! \n\n\n\nIf you have any questions related to the position, please contact Patrycja Krzykala - Talent attraction partner.\n\nMake us aware of your talent \n\nWe are an equal opportunities employer. We hire top talent regardless of race, religion, color, national origin, sexual orientation, gender identity, and age. We encourage all qualified candidates to apply. See our full list of vacancies at https:\/\/www.bec.dk\/en\/vacancies\/\n\nYou can also learn more about BEC by browsing our company culture book: wearebec.pdf","brief_summary_of_job":null,"existing_skills_from_job":["Hybrid","Contract","English","Java","HTML","Performance Tuning","Git","XML","Spring Framework","Computer Science","Java Development","Business","SQL","SQL Server","Bitbucket","CI\/CD","Jenkins","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": 4880,
"extracted_skills": [
{
"skill_name": "Java",
"category": "languages",
"confidence": 100,
"mentioned_as": ["Java"],
"context": "mentioned in the job title and description"
},
{
"skill_name": "Spring Boot",
"category": "frameworks",
"confidence": 100,
"mentioned_as": ["Spring Framework"],
"context": "mentioned in the job description as part of Java development"
},
{
"skill_name": "SQL Server",
"category": "databases",
"confidence": 100,
"mentioned_as": ["Microsoft SQL Server (MSSQL)"],
"context": "mentioned in the job description under database management"
},
{
"skill_name": "Git",
"category": "tools",
"confidence": 100,
"mentioned_as": ["Git"],
"context": "mentioned in the job description under version control"
},
{
"skill_name": "Bitbucket",
"category": "tools",
"confidence": 100,
"mentioned_as": ["Bitbucket"],
"context": "mentioned in the job description under source code management"
},
{
"skill_name": "Jenkins",
"category": "tools",
"confidence": 100,
"mentioned_as": ["Jenkins"],
"context": "mentioned in the job description under CI/CD"
},
{
"skill_name": "Kafka",
"category": "tools",
"confidence": 100,
"mentioned_as": ["Kafka"],
"context": "mentioned in the nice-to-have section"
}
],
"reasoning": {
"total_skills_found": 7,
"skills_by_category": {
"languages": ["Java"],
"frameworks": ["Spring Boot"],
"databases": ["SQL Server"],
"tools": ["Git", "Bitbucket", "Jenkins", "Kafka"]
},
"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
This position is based at our friendly office in Roskilde and you will join our Business Banking Initiative.
The position as Java engineer offers a unique opportunity to join a fresh team in charge of building a new and modern liquidity management solution for a strategically important initiative in BEC. At BEC, we prefer to collaborate often in the office, but we also have the opportunity to work remotely. Your direct manager will be Mathias Møller Hansen.
Primary tasks and responsibilities include:
Java development: solid background in Java development, covering Java 17 or older/newest releases with hands-on experience utilizing the Spring Framework.
Integration: design, develop, and integrate RESTful and SOAP APIs to support seamless system communication.
Database management: utilize strong SQL skills for Microsoft SQL Server (MSSQL), focusing on database design, optimization, and performance tuning.
CI/CD: managing and maintaining CI/CD pipelines using Jenkins and Argo CD to support automated software delivery.
Version control: collaborate effectively using Git workflows and best practices.
Source code management: manage repositories and code hosting through Bitbucket.
Testing: plan and execute unit and component tests to ensure high-quality deliverables.
Agile methodologies: work within Agile frameworks using Jira for project tracking and team collaboration
To succeed you will have:
Hands-on experience (at least 3-4 years) in integrating the above-mentioned technologies into everyday work practices.
University degree, ideally in Information Technology, Computer Science, or a closely related discipline.
Ability to take ownership of assigned tasks and deliver them according to project plans, with a proactive attitude and willingness to learn.
Strong team collaboration skills, including supporting colleagues, sharing knowledge, contributing to shared team goals, and actively participating in team meetings.
Business-oriented mindset, with the ability to understand business requirements and translate them into effective IT solutions.
Fluency in English, both written and spoken, enabling effective collaboration with colleagues in Poland and Denmark
It’s nice-to-have:
Knowledge of banking platforms (e.g. payments and accounts)
Fundamental infrastructure and network knowledge
Experience with Kafka or other event platforms
Be your best self with BEC’s Benefits!
We offer a diverse range of benefits for our employees. Here are just a few of them.
Type of cooperation: employment contract
Professional development
Healthy, varied lunch and fruit in the canteen
Active staff associations: yoga, cycling, go-karting, salsa dancing etc.
Flexible working hours
Health insurance
Referral bonus
Flexible working hours
What does the recruitment process look like?
Send us your CV: We want to get to know you
Screening call: Let’s chat and see if we’re a match
Meet our talent partner and technical expert: Learn more about the job, BEC Poland, and tell us more about your skills and experience.
Meet your future manager and team: See who you’ll be working closely with.
Time to sign the contract: We’re ready to welcome you to BEC!
If you have any questions related to the position, please contact Patrycja Krzykala - Talent attraction partner.
Make us aware of your talent
We are an equal opportunities employer. We hire top talent regardless of race, religion, color, national origin, sexual orientation, gender identity, and age. We encourage all qualified candidates to apply. See our full list of vacancies at https://www.bec.dk/en/vacancies/
You can also learn more about BEC by browsing our company culture book: wearebec.pdf