Develop, maintain, configure, and document software components based on approved design specifications and architectural requirements
Design, develop, and integrate application components, services, and APIs within complex enterprise environments
Develop interoperability components and reusable software modules in accordance with established integration frameworks
Implement user requirements and translate technical specifications into maintainable software solutions
Develop web and multi-tier applications using modern development frameworks, tools, and programming languages
Create and execute unit tests, integration tests, and automated test scripts using the applicable toolset and development environment
Participate in code reviews to ensure code quality, security, maintainability, and adherence to development standards
Integrate applications with external systems, APIs, messaging platforms, and interoperability services
Support deployment, configuration, troubleshooting, and continuous improvement of software solutions
Assist in the preparation and maintenance of technical documentation, installation guides, and operational manuals
Guide and mentor junior developers and contribute to knowledge sharing across the development team
Collaborate with architects, analysts, testers, DevOps engineers, and business stakeholders throughout the software lifecycle
Work within Agile delivery teams using modern collaboration and project management tools
Contribute to the adoption of development best practices and support continuous improvement initiatives
Minimum 10 years of relevant IT professional experience, including at least 5 years as a software and application developer.
Minimum education level: Level 6 (Bachelor's degree or equivalent) in an ICT-relevant field.
Minimum 1 year of active experience with CASE tools, Visio, or equivalent modelling and development tools.
Minimum 5 years of experience with Java and related development frameworks, such as Spring Framework, Spring Boot, Java EE/Jakarta EE, Hibernate, JPA, or similar technologies.
Minimum 3 years of experience working in Agile environments using collaboration and project management tools such as Jira, Confluence, Azure DevOps, or equivalent.
Strong knowledge of software development lifecycle practices, object-oriented programming, design patterns, and enterprise application development.
Experience developing web applications, multi-tier architectures, RESTful services, SOAP services, and distributed systems.
Experience integrating applications with external systems using APIs, messaging platforms, interoperability frameworks, or service-oriented architectures.
Experience designing and executing unit tests, integration tests, automated testing activities, and code quality assurance processes.
Experience with deployment, configuration, CI/CD pipelines, container platforms, and modern software delivery practices.
Ability to understand technical designs, architecture specifications, and system models and translate them into software solutions.
Experience participating in code reviews and applying secure coding, quality assurance, and software engineering best practices.
Experience mentoring or guiding junior developers and contributing to technical knowledge sharing within development teams.
Excellent communication, analytical, problem-solving, and documentation skills, with the ability to work effectively in an international and multicultural environment.