Lead Engineer (Data Services)
The bank that’s leading the fintech charge.
Tech is at the heart of everything we do here at Atom. We’ve rebuilt the bank, from our app to our banking platform, to make sure it’s native and cloud based. Thanks to this approach, we can develop new products and ship updates to customers rapidly.
We have very little legacy, but that doesn’t stop us looking for ways to improve. For instance, we are already exploring ways to improve some services we transitioned to the cloud very recently. Quickness and efficiency are always a priority, but we never compromise on security, usability, or reliability getting there.
Our teams are multi-disciplined, well-structured, and set up to work in Agile Scrum or Kanban. We encourage collaboration and creative thinking when building products and services. Could you be the latest innovator to join us?
Want to join us?
Our back-end services mainly follow a microservice CQRS pattern, and we use Golang for core microservices and Java for data services. We do use some traditional enterprise software in our back-end engineering, but this has mainly been broken down into microservices or being assessed to do so. Each one of our microservices runs on Google Kubernetes Engine(GKE), which is supported by some innovative automated pipelines developed by our award-winning DevOps/SRE team. These enable our engineers to build and deploy through the stack.
Within our back-end engineering capability at Atom sits our Data Services team who develop Java Applications that interact with complex Kafka Message Queues which extend to be a major component of our bank. Our Engineers in Data Services work alongside our extensive Tech team including Architecture, API Middleware, App Development and Testing teams as well as third parties.
Our Data Services team deliver first-class solutions, which are secure, appropriately tested, perform well, and help provide an engaging customer experience through developing and supporting the advanced real-time data platform.
The Lead Engineer(Data Services) works closely with the Back-End Engineering lead and has responsibility for leading and supporting the Data Services team including monitoring & measuring performance and addressing technical issues when required.
What will your ‘typical’ day look like…. (there’s no 2 days the same in Atom):
- Develop various Java based applications and APIs/Services that will integrate with a number of internal/external backend systems, interfacing with Go Microservices, Mulesoft APIs
- Design and develop Kafka Topics and API contracts, data transforms and algorithms
- Responsible for maintaining quality in all associated design and document artefacts and technical documentation ensuring maintainability, readability and testability
- Ensure developed components have the appropriate level of quality and governance (version control, documentation, unit testing)
- Responsible for resolving QA defects by working closely with other teams within Engineering, as well as the SRE and Test teams
- Work closely with third parties to facilitate integration and smoke testing
- Participate in daily stand-ups to report progress, current focus, and any blockers
- Guide the design of data solutions delivered to the business, ensuring that they meet overarching standards and maintain integrity
What do we need from you?
- Experience working with Java development experience in an Agile development environment
- Java Message Service(JMS) & Message Queue(Kafka) knowledge
- A working knowledge of RESTful API design, integrated systems, considering good development practices, use of Unit Testing and Security principles
- Technical Solution Design, and Technical Documentation experience
- Demonstrable experience of working with and designing a platform, implementing best practices around data processing on an industrial scale
- Hands-on experience of ingesting and processing streamed data using tools such as Kafka, pub sub etc
- Strong understanding of the SDLC of data solutions
- Experience of using CI/CD tools such as Jenkins, and of containerisation (Docker/Kubernetes)
What we’d ideally like you to have?
- Improvisation skills and the ability to think outside the box to solve complex technical challenges
- Knowledge of Kafka development experience and/or certification
- Experience working in a complex multi-vendor solution environment
- Financial Services or regulated industry experience
- REST API modelling language experience (RAML, YAML)
- Experience in ESB service integration
- Mulesoft development experience or certification
What you’ll get from us:
- Flexible and remote working
- Annual Share Option – performance related
- Incredibly generous company pension scheme (maximum of 13% of Atom input – candidate can put in more)
- ‘All About Me’ fund: £200 per year to spend on personal development
- 25 days holiday + 8 statutory days (rising by half a day with every year in the company)
- Private Medical Insurance for you and full family
- Health Cash Plan – expenses paid on Optical/Dental/other appointments/treatments
- Life Insurance – 4 times annual salary
- Critical illness cover – 1 x lump sum annual salary
- Cycle to work Scheme
- Continuous development – professional qualifications
- Challenging and exciting working environment.
PLEASE NOTE: You must have the legal right to work in the UK to apply for this role as Atom Bank are unable to support Visa Applications/Sponsorship
The legal bit.
If you send us your CV we'll use your details when we’re looking at your application for this job. We'll also store your CV for six months in case any roles that we think you'd be a great fit for become available.
If you don’t want us to use your details for this, or if you'd like any information at all about how we use your data, then just let us know at