Share this Job

Java Lead Software Engineer

Date: Sep 3, 2021

Location: London, United Kingdom

Company: KPMG UK

Connected Engineering – Java Lead Software Engineer – C Grade (Manager)

At Solutions & Digital we help KPMG and hundreds of other organisations around the world to envision and build digital products that empower their employees and serve their customers — all with people, business and technology in mind.
We are human-centred technology advocates, analysts, designers and engineers. Whether we're creating new products or helping a business become more relevant to its customers, people in Solutions & Digital are creators at heart. We find gaps, develop hypotheses and build beautiful ecosystems, inspiring our clients to push the boundaries of what’s possible. From a junior researcher to the head of development we possess a clear vision of the future and have the courage to pursue forward-thinking solutions that solve today’s challenges for a better tomorrow.

Our technology
We’re expanding and want to increase our Java capability to go with our cutting-edge web client technologies (ReactJS, HTML5). We pride ourselves on delivering highly modular, testable, scalable, SOLID code with continuous integration and deployment to cloud environments. We follow agile methodologies and a Git workflow.

The Role
You will be part of our product engineer team and work in multidisciplinary agile teams including product owners, QA engineers, UX designers and business analysts. We want you to help us accelerate the growth of our Java capability.
As part of our rigorous recruitment process, we’ll thoroughly test your ability to code with peerless precision, quality and clarity.

As a member of the team, you’ll be expected to keep up to date with the tech field. We gladly sponsor certifications and training courses.
You are expected have experience and develop your technical skills within the following areas:
• Knowledge of Java/JVM based development practises including expertise in Java frameworks (Spring)
• Understanding of Java build tools (Maven, Gradle)
• Cloud development on AWS, Azure or GCP including deployment, scaling and writing for containers. Experience with serverless is also a bonus.
• Familiarity consuming Cloud services, particularly messaging and storage options
• Front end development: Deployment / Management of SPA, Server-Side rendering, Webpack / Babel, Gulp, Razor Pages
• Software design and architecture following clean architecture, domain driven design, serverless or microservices
• A solid grasp of software security concerns and options for mitigation
• Software testing (TDD and JVM based test tooling), performance optimisation and maintenance
• Relational and noSQL database design, including Elastic

You are not expected to be proficient in all of the above, however you should demonstrate a general understanding of the concepts and start to specialise in a couple of key areas.

Role behaviours
As a Lead software engineer, you will be expected to:
• Provide technical leadership for your teams, taking ownership of projects through discovery and in to delivery.
• Guide our clients in shaping their ideas by applying your technical knowledge; defining project strategy and technology selection.
• Take responsibility for identifying project risks and taking steps to mitigate these before they become real issues.
• Promote best practices and help to develop your teams by providing constructive feedback to peers and junior team members.
• Contribute to the wider team, particularly with the learnings from your projects. Looks for areas of improvement; technologies, frameworks and tools that we can adopt.
• Show effective management of your immediate project team and demonstrate an ability to influence our business stakeholders.
• Effectively communicate with both technical and non-technical stakeholders, helping to bridge the gap between the two.
• Share your knowledge with the wider team and support learning opportunities.

Day to day job tasks
• This is a hands-on role and you will be responsible for shaping project architecture and large technical decisions. On a day to day basis you will be delivering key features on projects that are mostly greenfield.
• Define and manage your build pipelines, automating where possible. Take responsibility for enabling your teams and ensuring they work efficiently.
• Understand that all members of the team are responsible for quality and promote this through testing, peer review and automated scanning of our codebases.
• Review code and technical decisions to ensure best practices are being followed, particular when it comes to security.
• Investigate and implement new technologies that enable our projects and improve our offerings to clients.
• Provide input for new projects, analyse client requirements and create high-level estimates. Effectively estimate build and run costs for proposed solutions providing options that enable viable solutions.

Job Segment: Developer, Java, Consulting, Database, Technology, Research