With a rapidly expanding program of major engineering projects, we need team leaders focused on project delivery and client satisfaction. The day to day requirements of the role will change with each project, depending on its technical profile, its scale, and the situation of the engineers within the project team as a whole. But in every case we need Lead Developers who not only meet our exacting engineering standards, but who also excel in the areas of team leadership and management, client communications and project planning.
Our approach to delivery (flat structures, minimal division of labour) mean that we tend to have small teams for any given size of project. The teams, however, are highly skilled and extremely agile, which tests the skills of our team leaders (Lead Developers) in mapping the team and its work onto projects that are often complex and high risk, and with rapidly evolving requirements. We need capable team leads who are persistent and persuasive, and who not only know how to run a project so that it can succeed, but also what to do when things are going wrong.
The role will involve occasional travel and working on site with clients, depending on the project.
You’ll be working in smaller, more agile teams than usual. Our philosophy is to liberate our developers to do the best job they can with minimal interference. You’ll be immersed in the business side of the work from the start of each project too, so you can shape it to meet the business requirements. The position combines the roles of architect, lead developer and team lead.
Any success we have had is because of this development model, which we have been refining for almost 20 years, first as LShift, and now as the Systems Engineering team at Oliver Wyman Digital. We work across technologies, platforms, OS’s and industries, which means you will be working on a wide range of projects and will gain a correspondingly wide range of experience, both technical and personal, as an engineer and as a leader.
Skills & Requirements
A good candidate will have the following technical skills and attributes:
Knowledge of algorithms, data structures, complexity
Experience with different programming paradigms (definitely OO, at least one of functional or declarative, and any others a bonus) Versed in several programming languages
Familiarity with, eg., test driven development, continuous integration, micro service architecture, containerisation
A passion for open source technologies and open standards
A passion for technology in general
Good Unix and Windows skills
However, in this position we are looking not only for those technical skills, but also the kind of leadership, presentation and management skills that will allow you to lead teams of our engineers on projects.
A good candidate will have a mix of the following leadership skills, capabilities and experience: Knowledge of project delivery tools and methodologies (Agile, Waterfall, etc.)
Proven team leadership and mentoring skills
Proven client handling and communications skills
Experience of all stages in the project life-cycle Ability to
apply software design principles across a wide range of architectures act as a systems architect
lead significant systems integration projects
handle significant client engagement issues on a project
act as a technical product manager
provide technical consultancy in a client-facing role work well with non-technical stakeholders