The health and safety of our employees and candidates is very important to us. Due to the current situation related to the Novel Coronavirus (2019-nCoV), we’re leveraging our digital capabilities to ensure we can continue to recruit top talent at the HSBC Group. As your application progresses, you may be asked to use one of our digital tools to help you through your recruitment journey. If so, one of our Resourcing colleagues will explain how our video-interviewing technology will be used throughout the recruitment process and will be on hand to answer any questions you might have.
Some careers have more impact than others.
If you’re looking for a career where you can make a real impression, join HSBC and discover how valued you’ll be.
HSBC is one of the largest banking and financial services organisations in the world, with operations in 64 countries and territories. We aim to be where the growth is, enabling businesses to thrive and economies to prosper, and, ultimately, helping people to fulfil their hopes and realise their ambitions.
We are currently seeking an experienced professional to join our team in the role of Senior Technical Lead
Wholesale IT – Client Services - Customer and Staff Channel Digital IT are changing how software development is done within a bank, and with success.
To give you an idea of what we've done since inception (2019), here are few statistics –
Releases to production :
· 2019 – 3,459 (Within 6 weeks of project inception, we were live in production)
· 2020 – 7,574 (in under 11 months)
When we tell people this, they usually respond with... “…but this is a bank!” Others in the organisation have called us purple unicorns.
What are we doing?
Our teams are building the next generation of digital platform named “SmartServe” for Wholesale Client Services’ Global Banking and Markets and Commercial Banking. SmartServe Portal is the single point outreach channel for customers and also for HSBC internal staff. This platform being built by Digital Business Services is going to revolutionise Client Onboarding experience and will transform the way orporates and Institutions access our range of services and products.
We hope to make the Onboarding process as simple as possible to improve client experience and ensure they choose to bank with us in the future.
Whilst doing this we are changing the bank in many ways:
· We are dealing with lots of legacy systems in the bank, we are strangling some of these and exposing their functionality through APIs
· We have a lot of tech debt in our own systems and we are iterating it all of the time, improving the estate whilst delivering business value
· In order to move at pace across multiple teams we are breaking down monolithic architectures to smaller services with well bounded business contexts
· We are pushing to change how development teams work with other groups in the bank such as infrastructure, security, business risk. We are helping to drive the banks’ wider DevOps agenda and breaking down the silos that have become so prevalent over the last decade
· We help other teams to move faster, by showing then them simple techniques they can implement immediately to move towards continuous delivery
How are we doing it?
We are agile in its truest sense. We have a vision, we always do the smallest possible thing and iterate on the back of feedback. We are product driven, not project driven.
We relentlessly focus on getting working software in to the hands of users. We are changing everything we do all the time to minimise waste and to get faster.
Our relationship with the business is fairly new; we are looking to operate as a single team and break down the barriers between us. We take pride in the quality of the software we deliver to our users, we are disciplined and move at pace with repeatability, safety and control. We don't just talk, we do.
Our current technology stack is:
· Java Microservices based architecture using Spring boot on the backend
· Restful APIs and “API first” driven approach
· HTML5 and ReactJS on the front end
· PostgreSQL for Backend
· Range of tools quite a few built in-house for dev, release, deployment and automation
What are we looking for?
Looking for senior hands-on technical SMEs on stack mentioned above, open mind-set to change and adapt, pro-active and self-motivated who can take ownership and accountability, strong inclination towards learning new technologies and with excellent communication, leadership and stakeholder management skills.
We are not perfect… perfection would stand in the way of progress. We are looking for all sorts of people in our teams – for this role we need a technical lead who has solid experience in delivering quality code and technically leading teams of developers.
That doesn’t mean there will be no development involved in the role – we need people who can roll their sleeves up and dive into the detail if required.
If there is something in the way of us getting working software into the hands of our users, we step in and get it moving – whether that means doing some analysis, coding, testing or releasing. Everyone in our team does production support on rotation for a day per month, and everyone also releases code to production.
We are looking for people who are flexible in their approach and who are happy to try new things and experiment, and be comfortable in throwing experiments away to start again if they don’t work.
We are looking for people that enjoy technology and are happy to play. Some of the people that we are looking for will have played with Puppet, Docker, Clojure, Rust, Haskell, Go... we don't use all of these right now but we value new points of view being put across all the time.
Purpose of the job: The successful candidate undertaking this role will join the team as a Technical Lead and will work alongside developers to code, inspire, support, and guide them in our journey to release quality, risk-free code with a high and consistent cadence.
Main Duties :
As a Technical Lead, the successful candidate will be expected to perform the following duties with a high level of competence:
· Work with and lead other team members and liaise with nominated business stakeholders when required to ensure that business requirements are fully understood before commencing design and development.
· Hands-on coding and helping team members solve technical problems and provide technical SME knowledge and guidance.
· Forward thinking for devices, new technologies, and required accessibility.
· Guide developers in implementing best-of-breed technical solutions based on agreed technical design, adopting industry standard development patterns and methodologies (including continuous integration and automated unit and integration testing)
· Responsible for ensuring implemented solutions have sufficient and appropriate automated testing in advance of User Acceptance Testing
· Assist with and help to improve the deployment of components to all environments
· Lead from the front and demonstrate excellence in owning the end to end delivery of software from analysis through to release to production and support. We deliver each change to production before moving onto the next.
· Everyone in our team releases code to production, everyone in our team raises production change requests, everyone in our team does production support.
· Participate in intra-day, weekend and overnight support based on rota or need basis
The candidate should have demonstrable experience of Continuous Delivery software development methods, including TDD and automated testing (including non-functional testing), with the skillset and experience listed below:
MUST HAVE HANDS-ON EXPERIENCE
· Java server side development experience is essential.
· Strong Java 8+ hands-on experience
· Strong / Good ReactJS and NodeJS hands-on experience
· Must be able to debug the existing code, extend the functionality and/or fix issues if any.
· Understanding of micro service architecture and ability to write REST APIs
· Good hands-on experience using Springboot
· Can write sensible tests to verify functionalities and endpoints
· Sound knowledge of Redux store
· Has prior hands-on experience around any CI-CD tooling . Candidate must be able to build a CI-CD pipeline independently for a new service / component.
· Always considers implementing Security around functionalities / services / endpoints
· Aware of working in Devops POD and exposure to production support processes
· Good Knowledge database schema design. Experience of SQL and relational databases, preferably PostGreSQL is essential .
· Experience of working in unix environments is essential .
· Exposure to Google Cloud Platform wil be “nice to have”
NON TECHNICAL KNOWLEDGE
· How to write Technical documentation
· How to liaise effectively with users – in this role this will be with relationship managers and business functions (eg. Legal, Ops, KYC).
· Demonstrable experience in leading multiple pods and working with multiple business stake-holders
· Experience of working in a front-office environment, client onboarding in an investment bank is advantageous