Please carefully review the position requirements before submitting a
potential candidate for consideration.
Job Description
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.
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.
For additional details regarding submission eligibility and payment terms,
please refer to your contract. Only submissions from agencies with current
service contracts in place will be considered.