Principal Engineer

10x Future Technologies Services Limited ,
London, Greater London

Overview

Job Description

Principal Engineers provide technical leadership at 10x. They help establish technical standards and drive 10xs overall technical architecture, engineering practices, and engineering methodologies. They work on our hardest problems, building high quality, architecturally sound systems that are aligned with our business needs. They will lead, develop and mentor the engineering feature teams to deliver our scalable, cloud-based, next-generation banking service which strives to have multiple clients around the globe. This services is a mission-critical system that will potentially serve hundreds of millions of customers across the globe. As a member of the leadership team you will help set and meet aggressive goals and by working with customers and other leaders throughout 10x and help shape our long term technical and business strategy. Principal Engineers are pragmatic visionaries who can translate business needs into workable technology solutions. Their expertise is deep and broad. They are hands on, producing both detailed technical work and high-level architectural designs. The platform is built in Java on AWS infrastructure with AWS services and Open Source frameworks used. Delivery follows the LESS (Large Scale Scrum) methodology and we will be building automated test suites using tools such as Appium, Selenium and Cucumber. Responsibilities : * Defines and owns high level architecture designs and technology roadmap with the associated release goals. * Defines and develops POCs for new and upcoming strategic technology solutions. * Defines team wide engineering best practices and mechanisms to measure the adoption. * Drives technical architecture conversations with the prospective clients. * Coaches, develops and mentors engineers. Principal Engineers are members of the hiring panel. * Representing 10x team in external technology events and conferences. * Be part of a call out team to provide live service to our clients Requirements Essential * Experience in helping leading development life cycle process, best practices and operating distributed cloud-based micro services. * Excellent communication skills, solid work ethic, and a strong desire to write production quality code. * Broad knowledge of programming languages, operating system principles, networking, and software development best practices. * Experience leading a team of engineers to success. * Good experience in people leadership roles. * Past experience of designing systems or components on large projects (5M) * Experience with Kafka, Hadoop, Spark, or other big data and streaming technologies. * A deep understanding of Docker, Kubernetes, Java 8 and Enterprise Java frameworks such as Spring (particularly Spring Boot and Spring Security). * Good experience in writing unit, integration, and functional tests specifically for web services. * Good experience building RESTful APIs but experience of GraphQL and gRPC would also be of interest. * Good experience with SQL databases e.g. MySQL, PostgreSQL. * Good experience of Continuous Integration e.g. SonarQube, Maven, Gradle and Jenkins. * Good experience of delivering in an Agile manner, particularly Scrum. * Experience of working with an offshore development provider. * Demonstrable high levels of integrity. Desirable: * Experience of Test Driven Development or, ideally, Behaviour Driven Development using Cucumber. * Good experience SPA web apps using the ReactJS framework. * Good experience of building Mobile apps using React Native, redux, Javascript ES6, IOS SDK (Objective C)/Android SDK (Java). * Good experience building and operating services on AWS. * Experience in NoSQL databases including DynamoDB, CockroachDB, Cassandra, Redis, Elasticsearch, Neo4J/JanusGraph & Mongo. * Experience of ReactiveX and of Service Meshes (Linkerd, Istio). * Good experience building systems based on design patterns such as Domain Driven Design, CQRS and Event Sourcing or Event Driven Design. Benefits Competitive About 10x 10x Future Technologies Services is a strategic solutions business working to transform banking and make it 10x better for customers, banks and society. Our next-generation cloud-native technology platform enables our financial services clients to give their customers more timely, relevant and personalised experiences when it comes to managing money. Our 10x team comprises more than 500 specialists with deep and relevant experience amassed from multi-billion-dollar businesses, challenger banks, disruptor brands and start-ups. At 10x you will work alongside innovators and leaders in banking and financial services, big-technology and consumer-focused industries proven practitioners who understand how to meet the evolving needs of businesses and consumers. Our engineers and developers are leaders too, drawing on experience from within and outside of financial services to deliver new digital solutions. They work across API development, security, cloud-native engineering and payments technology an