Senior Java/Kotlin Engineer 6 months initial length Remote with occasional travel to Bracknell Overview This role requires a highly skilled software engineer with expertise in Continuous Delivery and best practices for developing scalable, resilient solutions. The position involves working within a collaborative team environment to design, build, and maintain software systems using modern engineering techniques and technologies. Key Responsibilities Act as an individual contributor within the team, completing medium to high-complexity tasks with minimal supervision. Participate in and influence design and engineering decisions. Provide technical leadership and mentoring to less experienced team members. Ensure adherence to engineering principles, coding standards, and quality strategies. Engage in hands-on development, contributing significantly to the team’s coding efforts. Required Skills and Expertise Programming Languages : Proficiency in modern Java and/or server-side Kotlin. Frameworks : Experience with JVM frameworks such as SpringBoot or HTTP4K. Design Patterns : Knowledge of functional, object-oriented, and tiered design patterns, including Domain-Driven Design (DDD). Architectural Styles : Experience with MACH (Microservices, API-first, Cloud-native, and Headless) and event-driven architectures. Integration : Proficiency in implementing a variety of integration patterns. Cloud Platforms : Hands-on experience with cloud services (AWS, GCP, or Azure) and understanding of IAAS/PAAS offerings. Web Technologies : Basic skills in HTML and CSS. Engineering Practices : Familiarity with TDD, BDD, CI/CD pipelines, and practices like contract testing, shift-left/shift-right testing. Collaboration Techniques : Competence in practices like Three Amigos, Pair Programming, and retrospective-driven continuous improvement. Resilience and Security : Strong knowledge of creating resilient applications, including instrumentation, monitoring, and addressing OWASP Top Ten security vulnerabilities.