Lead Developer (Java)
- £85,000 to £100,000
- London, England, United Kingdom London England GB
- Permanent, Full time
- 20 Jul 18 2018-07-20
The Technical Lead is responsible for defining, delivering and evolving the technical architecture for a highly scalable, transactional platform capable of processing hundreds of millions of transactions per day. This is an opportunity for an accomplished Technical Lead to join a market-changing firm at a key phase in its development and take a leadership role in defining and realising the forward technical strategy.
- Create designs aligned to the overall product architecture for highly available, transactional instant payments solutions.
- Ensure code developed meets the design and architecture principles of the product (s)
- Conduct and lead peer-reviews, providing clear and timely feedback
- Lead design decisions as part of the overall delivery function
- Support the Break down, analysis and elaboration of User Stories together with the Product Owner.
- Be part of a self-organizing Agile Team and participate in Scrum Ceremonies (e.g. help to demonstrate/review or plan work)
- Be part of a Kaizen culture: work with members of the wider team to identify sources of variance, bottlenecks and waste and help implement process and behaviour changes to constantly reduce/mitigate those
- Engineering mindset with a strong knowledge of messaging and EIP
- Deep knowledge of distributed systems to ensure predictable behaviour and scalable execution
- Good understanding of Reactive systems (Akka framework experience would be ideal)
- Strong experience of solving problems and documenting application implementation approaches using suitable notation (Lightweight ADR’s, UML..)
- Strong Java 8 experience including functional programming, lamdas with a hands-on approach to working with developers (pairing, tech huddles, code reviews, story sign off)
- Responsible for ‘agile’ feature designs working with product owners, architecture leads as well as leading the developers to realise implementation
- Proven experience working on highly concurrent and highly available systems
- Identifying improvements and tackling tech debt to simplify the product and help improve the dev experience