Take ownership of tasks from the estimation stage right through until the release stage and post production
Identify, troubleshoot and resolve existing or newly-identified prioritised defects
Write tests for all code you deliver and adhere to best practices/standards, ensuring high-quality code
Take ownership of, or assist others with, releases and associated processes (we try to deploy as often as possible)
Participate in code reviews, ensuring high code quality and continuous development and learning for yourself and your colleagues
Be someone who enjoys knowledge sharing, who is keen to attend and participate in some of the many skill share sessions we regularly hold in the team and across the wider Engineering department.
Propose/contribute/collaborate on Technical Initiatives - improving and evolving the existing codebase and toolset
Be keen to ensure that we focus on solving the essence of the problem rather than merely dealing with the symptoms
Leverages enterprise-authorized AI coding assist tools within the work environment to improve code quality, delivery speed, and productivity across complex deliverables (e.g., code generation/refactoring, unit test creation, documentation), while validating outputs through peer review, automated testing, and secure coding standards; contributes learnings and reusable patterns to improve broader team effectiveness.
Applies knowledge of tools within the Software Development Life Cycle toolchain, including enterprise-authorized AI-assisted development and automation capabilities, to improve the value realized by automation.
Required qualifications, capabilities and skills
English working proficiency is a must, you will be working with the team in London
You have a product engineer mindset and a track record of delivering high quality software that adjusts to business and product needs to provide a great user experience in a timely manner
Experience with a JVM language (Java/Scala/Kotlin) and Springboot
Experience designing systems from scratch as well as understanding how to evolve existing architectures to achieve new goals, both serverless and managed in the cloud
Hands-on experience designing and implementing event-driven architectures with different message brokers, including Kafka
Experience with monitoring and alerting in order to maintain a production environment
Good understanding of REST and what it means to work with APIs
Experience with Git flow
Good communication skills, you can work well within a delivery team and manage interactions with other parts of the organisation, such as Product and Operations
Curious about new ways of working and open to different approaches and ideas
Proactive and willing to help others put forward ideas
Hands-on experience using enterprise-authorized AI-assisted software development tools within the work environment (e.g., for coding, test creation, troubleshooting, or documentation) with demonstrated ability to critically evaluate, validate, and refine AI-generated outputs for correctness, performance, and security.
Understanding of responsible AI use in engineering workflows, including data sensitivity considerations, secure handling of inputs/outputs, and adherence to resiliency and security expectations; ability to guide peers on safe and effective usage within team practices.
Preferred qualifications, capabilities and skills- nice to haves
Experience with DynamoDB and/or Aurora
Experience in the FinTech sector
Experience developing a multi-country product with multiple localizations and currencies.
Show us your Github/Stack Overflow/app portfolio!
#ICBCareers #ICBEngineering