- Company Name
- Worldpay
- Job Title
- Software Engineer - Kotlin/Java
- Job Description
-
**Job Title:** Software Engineer – Kotlin/Java
**Role Summary:**
Design, develop, and maintain high‑performance Kotlin/Java middleware services on AWS for a large payment processing platform. Work across the full software development life cycle in an Agile environment, ensuring robust, secure, and scalable solutions for thousands of point‑of‑sale devices.
**Expectations:**
- Deliver production‑ready code that meets security and performance standards.
- Collaborate with cross‑functional teams (development, QA, ops, infrastructure) to drive feature delivery and system reliability.
- Participate in on‑call support and release activities outside normal hours.
- Advocate for continuous improvement through automation, testing, and clean‑code practices.
**Key Responsibilities:**
- Develop and maintain REST/SOAP web services using Kotlin and Java/Spring Boot.
- Build and optimize distributed systems that serve 1000+ devices across the UK and ROI.
- Design and refactor code following software design patterns and clean‑code principles.
- Implement unit, integration, and automated tests; practice test‑driven development.
- Use Git for source control; manage code reviews and branching strategies.
- Configure and maintain CI/CD pipelines (Jenkins, Nexus, SonarQube).
- Operate in Linux (Ubuntu/RHEL) environments; deploy on AWS or container platforms.
- Work with messaging infrastructures (e.g., RabbitMQ) and NoSQL databases.
- Produce and maintain technical documentation, diagrams (wireframe, sequence, ERD) as needed.
- Engage in performance tuning, reliability enhancements, and capacity planning.
**Required Skills:**
- Strong experience in Kotlin and Java, with a solid grasp of object‑oriented design.
- Secure web service development (REST/SOAP).
- Proficiency with Spring Boot, microservices architecture, and dependency injection.
- Familiarity with Linux (Ubuntu/RHEL) and shell scripting.
- Source‑control expertise in Git, including branching and merge workflows.
- Hands‑on CI/CD tooling: Jenkins, Nexus, SonarQube.
- Experience with AWS services (EC2, Lambda, S3, RDS, SNS/SQS) or equivalent container orchestration (ECS/EKS).
- Knowledge of messaging systems (RabbitMQ, Kafka) and NoSQL databases (Cassandra, DynamoDB).
- Strong testing discipline: unit, integration, automated, TDD.
- Clean‑code mindset and adherence to coding standards.
- Ability to read and produce technical diagrams and documentation.
**Required Education & Certifications:**
- Bachelor’s degree in Computer Science, Software Engineering, or related field (or equivalent professional experience).
- No mandatory certifications, but knowledge of AWS, Spring, or microservices architecture is advantageous.