Join us as a Software Engineer - Flink at Barclays, where you'll spearhead the evolution of our digital landscape, driving innovation and excellence. You'll harness cutting-edge technology to revolutionize our digital offerings, ensuring unapparelled customer experiences. The ideal candidate will have deep expertise in cloud-native technologies, distributed streaming platforms, Kubernetes orchestration, and multi-region architecture patterns.
To be a successful Software Engineer - Flink, you should have experience with:
- Design, develop, and operate real‑time, stateful event processing pipelines using Apache Flink, delivering high‑throughput stream processing with strong guarantees around reliability, scalability, and operational resilience.
- Develop and integrate streaming and microservices‑based applications using Java and Spring Boot, ensuring clean API contracts, strong domain modelling, and adherence to engineering best practices.
- Engineer end‑to‑end streaming pipelines by integrating Kafka, Redis, and MongoDB, enabling low‑latency data access, caching, and durable state persistence across distributed systems.
- Implement stateful stream processing using keyed and operator state, ensuring correct handling of large‑scale state, efficient serialization, and optimal memory management.
- Configure and manage checkpointing and savepoints in Apache Flink to achieve exactly‑once processing guarantees, supporting reliable recovery and zero‑data‑loss deployments.
- Develop Flink jobs with strong understanding of event‑time semantics, including watermarks, late event handling, and windowing strategies (tumbling, sliding, session windows).
- Optimize Flink pipelines for high throughput and low latency, tuning parallelism, task slots, state backends (e.g., RocksDB), and back‑pressure handling.
- Integrate Apache Flink with Kafka as source and sink, ensuring efficient offset management, schema evolution compatibility, and reliable end‑to‑end processing semantics.
- Apply best practices for fault tolerance and resiliency, handling task failures, job restarts, and state recovery in distributed Flink clusters.
- Support observability of Flink jobs, enabling visibility into job health, throughput, lag, checkpoint performance, and failure patterns through logs, metrics, and dashboards.
- Deliver software using Agile methodologies, actively participating in sprint planning, reviews, retrospectives, and continuous improvement.
- Champion engineering discipline, automation, and data‑driven decision making across delivery cycles.
- Strong familiarity with modern developer tooling including GitLab, DevSecOps pipelines, and secure CI/CD practices.
- Hands‑on experience with: Docker Desktop for local containerized development, IntelliJ IDEA or equivalent enterprise IDEs and Secure source control, branching strategies, and automated quality gates.
- Drive a test‑first, quality‑driven engineering culture with hands‑on experience in: Contract Testing (PACT) for consumer‑provider assurance, Unit Testing (JUnit) and integration testing, Performance & load testing (JMeter) and Mutation testing to validate test effectiveness.
- Ensure test coverage and automation are embedded into CI/CD pipelines, not treated as post‑delivery activities.
- Working knowledge of AWS services relevant to event‑driven and streaming workloads.
- Experience deploying and operating workloads on Kubernetes (K8s), including container orchestration and scaling concepts.
- Demonstrate strong awareness and practical adoption of AI‑assisted engineering practices with AI coding assistants (e.g., Claude Code, GitLab Duo, Copilot or equivalent) to support code generation, refactoring, documentation, and test creation, while retaining engineering judgement and accountability.
Some other highly valued skills may include:
- Operate as a hands‑on Individual Contributor (ICE), owning the end‑to‑end development and operational quality of Apache Flink pipelines with minimal supervision.
- Work effectively within Agile/Scrum delivery models, using Jira for backlog management, delivery tracking, and sprint execution.
- Apply strong analytical and troubleshooting skills to diagnose and resolve complex issues in distributed, event‑driven systems.
- Demonstrate excellent verbal and written communication, producing clear architecture designs, decision records, and technical documentation.
- Collaborate closely with cross‑functional teams (engineering, DevOps, security, architecture) to deliver integrated, enterprise‑ready solutions.
- Exhibit strong ownership, self‑drive, and innovation mindset, staying current with cloud‑native technologies and modern engineering best practices.
You may be assessed on key critical skills relevant for success in role, such as risk and controls, change and transformation, business acumen, strategic thinking and digital and technology, as well as job-specific technical skills.
This role is based in Bengaluru.
Purpose of the role
To design, develop and improve software, utilising various engineering methodologies, that provides business, platform, and technology capabilities for our customers and colleagues.
Accountabilities
- Development and delivery of high-quality software solutions by using industry aligned programming languages, frameworks, and tools. Ensuring that code is scalable, maintainable, and optimized for performance.
- Cross-functional collaboration with product managers, designers, and other engineers to define software requirements, devise solution strategies, and ensure seamless integration and alignment with business objectives.
- Collaboration with peers, participate in code reviews, and promote a culture of code quality and knowledge sharing.
- Stay informed of industry technology trends and innovations and actively contribute to the organization’s technology communities to foster a culture of technical excellence and growth.
- Adherence to secure coding practices to mitigate vulnerabilities, protect sensitive data, and ensure secure software solutions.
- Implementation of effective unit testing practices to ensure proper code design, readability, and reliability.
Analyst Expectations
- To perform prescribed activities in a timely manner and to a high standard consistently driving continuous improvement.
- Requires in-depth technical knowledge and experience in their assigned area of expertise
- Thorough understanding of the underlying principles and concepts within the area of expertise
- They lead and supervise a team, guiding and supporting professional development, allocating work requirements and coordinating team resources.
- If the position has leadership responsibilities, People Leaders are expected to demonstrate a clear set of leadership behaviours to create an environment for colleagues to thrive and deliver to a consistently excellent standard. The four LEAD behaviours are: L – Listen and be authentic, E – Energise and inspire, A – Align across the enterprise, D – Develop others.
- OR for an individual contributor, they develop technical expertise in work area, acting as an advisor where appropriate.
- Will have an impact on the work of related teams within the area.
- Partner with other functions and business areas.
- Takes responsibility for end results of a team’s operational processing and activities.
- Escalate breaches of policies / procedure appropriately.
- Take responsibility for embedding new policies/ procedures adopted due to risk mitigation.
- Advise and influence decision making within own area of expertise.
- Take ownership for managing risk and strengthening controls in relation to the work you own or contribute to. Deliver your work and areas of responsibility in line with relevant rules, regulation and codes of conduct.
- Maintain and continually build an understanding of how own sub-function integrates with function, alongside knowledge of the organisations products, services and processes within the function.
- Demonstrate understanding of how areas coordinate and contribute to the achievement of the objectives of the organisation sub-function.
- Make evaluative judgements based on the analysis of factual information, paying attention to detail.
- Resolve problems by identifying and selecting solutions through the application of acquired technical experience and will be guided by precedents.
- Guide and persuade team members and communicate complex / sensitive information.
- Act as contact point for stakeholders outside of the immediate function, while building a network of contacts outside team and external to the organisation.
All colleagues will be expected to demonstrate the Barclays Values of Respect, Integrity, Service, Excellence and Stewardship – our moral compass, helping us do what we believe is right. They will also be expected to demonstrate the Barclays Mindset – to Empower, Challenge and Drive – the operating manual for how we behave.