We are looking for a Java Tech Lead with extensive experience in building large scale distributed systems to join one of our client’s distributed team of smart, committed and hardworking engineers working across different time zones in agile sprints
The role of the Lead Java Developer is to design and develop pragmatic, complete and maintainable software solutions under the guidance of a Principal Architect to the agreed development plan and to approved specifications.
He will work on a scalable platform that provides brands and retailers the ability to engage, reward and incentivise their consumers directly and across any channel – online, mobile and in-store.
Everyone on the squad has a stake in the process, the design, the delivery and the customers’ satisfaction. The client is committed to building the best product possible and leading the loyalty space.
- IT Degree Qualified
- Multiple years of experience building high concurrency/high transaction volume applications using Java/J2EE technologies
- Experience in leveraging cloud (AWS) services and features
- Spring Framework, including Spring MVC, Integration, Web Services and Batch
- Interacting with RDBMS through use of Hibernate ORM
- Queueing systems and Rabbit MQ in particular
- Distributed Systems (Processing, Caching, Persistence)
- Experience with Agile methodologies
- Deep understanding of SOLID Principles, Design Patterns
- Solid experience of Test Driven Development, unit testing tools such as JUnit
- Source Control tools (GIT, SVN)
- Strong written and verbal communication skills (English)
- Experience of working with PCI compliant software products
- Experience of working across multiple delivery organisations
- Experience of projects in Loyalty sector
- Ability to thrive in a fast moving and changing environment
- Commercially focused and Innovative
- Support the development team on new and existing systems
- Creation of documentation detailing technical work required for requested development, maintenance and support tasks to company standards
- Assist the Product Owner, Principal Architect, Business Analyst with project planning
- Design and develop pragmatic, complete and maintainable software solutions under the guidance of a Principal Architect
- Work closely with QA manager / QAs to ensure right implementation of test automation
- Provide production support occasionally and to assist the rest of the team in support activities
- Actively engage in and contribute to agile planning and design sessions
- To provide competent, proactive and professional Technical Support if and when required to customers and clients.
- Maintain code documentation to company standards that accurately reflects system functionality and its technical implementations
- Support and coach a small team (~7) of developers as well as work closely with 2 Dev Ops engineers, 2 QAs in different locations
- An exceptionally talented and friendly team. Our employees are our greatest asset.
- Company support for your personal professional growth plan
- Flexible schedule or days when you work from home (after pandemic period)
- Continuous learning and experimenting with new technologies
- Premium medical insurance
- Team events
- Sports benefits