Junior Migration Engineer (IBM ACE & Java)
Find a vacancy that works for you. Send us your CV to receive a personalized offer.
Find me a jobWe are looking for a Junior Migration Engineer to join our team.
In this role, you will act as an IBM ACE to Java Migration Engineer, working as a well-rounded technical professional with experience in IBM integration platforms (ACE/MQ) and Java Spring Boot development with hexagonal architecture. You will be capable of executing the end-to-end microservices migration process from IBM App Connect Enterprise to a clean architecture with Spring Boot. This position combines skills in legacy systems analysis, architectural design, code development, quality assurance, and deployment configuration in Azure DevOps with Kubernetes. You must be able to make technical decisions autonomously at each stage of the process.
- Analyze existing ACE artifacts, including classification of flows, contracts, libraries, and schemas (XSD, WSDL, DFDL), and prepare an inventory of all components of the service to be migrated
- Analyze business logic implemented in ESQL, covering transformations, conditional routing, access to MQ headers (MQMD, RFH2), exception handling, and UDP variables, and document the Java equivalent for each function
- Implement the complete Java code for the migrated microservice, including the domain (DTOs, gateways, use cases), driven adapters, and entry points such as MQ listeners and reactive handlers
- Verify functional parity by comparing ACE flows against Java handlers, ensuring that each operation, message format, and external system has its properly implemented equivalent
- Test applications using Karate and JMeter to validate functionality and performance
- Manage version control using Git for effective source code administration
- Execute and deploy services using Azure DevOps for CI/CD pipelines
- Monitor and stabilize services running on Kubernetes clusters to ensure reliable operation
- Bachelor's degree in Computer Science, Systems Engineering, or a related field
- At least a year of relevant commercial experience in software development
- Solid knowledge of IBM ACE, including project structure, artifact types, standard nodes, and runtime policies
- Practical experience with message formats such as XML/SOAP, JSON, and BLOB
- Working knowledge of IBM MQ, including MQMD and message correlation
- Hands-on experience with Java 21 and Spring Boot, including Spring WebFlux and Project Reactor (Mono/Flux)
- Understanding of Clean Architecture principles, including separation of layers, ports and adapters, and inversion of control
- Experience with Kubernetes, including ConfigMaps, Secrets, and YAML manifests such as Deployment, Service, Ingress/Gateway, and HPA
- Familiarity with Azure DevOps, including Variable Groups, JSON Release Definitions, service connections, and pipeline stages
- Hands-on use of k9s and kubectl for diagnostic activities
- Practical experience with Grafana for reading dashboards and analyzing metrics
- Working knowledge of AWS, including Secrets Manager, Load Balancers, EKS, ECR, EC2, and basic cloud service management
- Understanding of observability concepts, including metrics, logs, traces, Opensearch, and impact analysis
- Basic knowledge of CI/CD practices and cloud deployment approaches
- Strong analytical skills, technical documentation abilities, and effective communication
- Fluent English (B2 or higher), with excellent verbal and written communication skills and strong phone etiquette
- Experience working in Kubernetes environments within the banking or fintech sectors, including multiple environments such as DEV, CERT, and PDN
- Practical use of AI-assisted tools such as GitHub Copilot, Cursor, Claude, or ChatGPT for ESQL analysis and assisted Java code generation
- Ability to build technical prompts that automate the transformation of ACE artifacts into Spring Boot components
