Technical Lead

Vanguard ,
London, Greater London

Overview

Job Description

Create the products that are changing an industry. We never stop working to make investing simpler and more successful for our clients. By promoting new ways of building software, you'll optimize products and keep our client experience improving at pace. Your work as a Tech Lead will not only give you true ownership of your products as you capitalize on a Lean Agile approach. It will impact the way the world invests. Bring invention to investing. The UK IT organization is expanding at a fast pace. To support its growth, the European development team is looking for a senior software engineer / technical lead to join the front office team within the Global Investment & Financial Systems (GIFS) division. Your core responsibilities will be to provide technical leadership to the existing team, comprising of a mix of junior and senior engineers. Work closely with the business to achieve targets as well as execute the digital transformation of core monolith applications to micro-services architecture in the public cloud. While the technical stack is mainly Java based with its accompanying ecosystem (Java 8+, Docker, spring boot, JUNIT 5), the micro service architecture fosters a polyglot environment and to that effect, the candidate should be able to pick-up new languages and technologies. With the transition of the systems in the public cloud (AWS) new deployment CI/CD processes have emerged and are being used to industrialize the deployment in an automated manner. Thus an excellent understanding of the SDLC and continuous delivery flows (end-to-end testing, canary deployment, pipelines configurations and build systems) are required. A good understanding of Buy-side dynamics and equities knowledge is preferred but not a pre-requisite. However a good grounding in how the stock market works generally is paramount. To be successful you will need to be a self-starter, demonstrate an aptitude for learning, problem solving and excellent communication skills. In this role you will: * Assist in the development, design, implementation, and architecture design specification * Support business case development by helping to size implementation effort and cost * Identify opportunities for continuous quality improvement of technical standards, methodologies, and technologies * Lead and participate in the design, code, and test Inspections throughout product life cycle to contribute technical expertise and to identify issues * Build expertise around best-practice solution design and implementation * Review team / peer code and provide feedback * Understand / review functional specifications and translate into program specifications * Translate business requirements into program specifications and write code from the functional description * Liaise with end users for user acceptance testing * Carry out occasional 3rd Line support on production issues * Report on progress to project manager, escalating issues promptly * Comply with any audit requirements * Co-ordinate with 3rd party providers as required * Focus on delivering value to the business with relentless efforts to improve process * Champion a quality ethos within the constraints of the business priorities and pressures * Maintain current knowledge of IT development methodology, architecture design, and technical standards. Mentors IT staff with less experience Technical Skills: * Excellent knowledge of Computer science generally (operating systems, distributed systems, software engineering, networking, security ...) * Advanced knowledge of Java 8+, Spring Patterns, Micro Service Patterns and testing methodologies * Advanced knowledge of OOP * Good understanding of Domain Driven Design * Experience working with relational databases and managing large data volumes (Relational & NoSQL) * Experience in an Agile processes and the full dev ops lifecycle including CI/CD pipelines * Excellent knowledge of Linux based operating systems (Redhat & Debian) * Experienced using Maven, Git, Junit, Cucumber * Financial Industry experience preferred ( Buy / Sell ) side Desirable skills: * Experience of Micro Services Architecture specifically within the context of AWS * Experience in No SQL database technology eg DynamoDB * Experience with AWS technology such as Amazon Simple Storage Service, lambda,dynamoDB, Amazon Elastic Compute Cloud (EC2) Amazon Elastic MapReduce * Experience with Python * Experience with NodeJS * Experience with Atlassian toolset,(Jira, Bamboo, BitBucket,) What it takes * Extensive industry experience * Undergrad degree in Computer Science, Mathematics, Engineering and, or any related discipline * Proven track record of leading a team of developers * Advanced experience in designing distributed systems * Ability to work with distributed teams * Excellent analytical, verbal and written communication skills * Ability to work well with both business managers, traders and developers * Ability to learn and adapt quickly and excellent problem solving skills Special fac