Karhoo
,
London, Greater London
Lead Engineer
|
Job Type: Full-time |
---|---|
|
Contract Type: Permanent |
Overview
An Introduction to Karhoo At Karhoo, we are creating the largest and most transparent marketplace for ground transportation: the Karhoo Mobility Exchange. By aggregating ground transport around the world, with regulated/licensed taxi and PHV fleets, we will give greater choice to consumers and corporates alike, bring new opportunities and data for the private and public sector, and help to enable ‘smart cities’ for citizens everywhere. Karhoo, the first fully-integrated global, neutral, booking platform for regulated Taxis and PHVs was bought out of administration in January 2017, funded by RCI Bank and Services, the financial services provider for the Groupe Renault brands in the world and for the Nissan Group brands mainly in Europe. RCI Bank and Services operates at the crossroads of three challenging worlds: cars, banking and services and is backing Karhoo via Flit Technologies Ltd, a new venture funded by RCI Bank and Services. We are adapting the latest and greatest technologies to push forward our product leaps and bounds. We are looking for a Lead Engineer capable of also working as a Technical Architect for one of the most technical and critical teams at this exciting and still very early stage in our company’s growth. We’re looking for motivated individuals who can help push our Exchange Architecture further while maintaining a very high quality, changing the mindset of how we can do things and advance our platform further ahead from both a scalability point of view as well as performance. If you’re looking for an opportunity to join a fast-paced startup that promotes an environment for collaborative culture and growth striving to deliver production quality code first time around then look no further Key Responsibilities As a Lead Engineer of the Exchange Core team you will drive the Technical Architecture of the team responsible for 80% of our production traffic. The team is composed of two Senior SDE, two SDE and one SDET and is a very technical team working with a modern stack: Kubernetes, Golang, gRPC, Google Cloud, Seldon - building a microservice, event-driven platform (team owns approximately 80 microservices at the moment). The team is looking for an experienced and very technical Lead Engineer that is capable to help them further their technical skills and take the platform to the next level in terms of scalability, reliability and development best practices. As a Lead Engineer of the Exchange Core team you will be working closely with your team located in London. They will be looking to receive guidance and mentorship from you. Your time will probably be spent: ⅓ coding in Golang and reviewing PRs ⅓ writing or reviewing Software Design Documents or leading architecture sessions with the team or with other teams or partners ⅓ mentoring the team, interacting with peers, product or other stakeholders in 1-1 sessions Besides regular backlog execution and the related meetings (refinements, retrospectives, architecture sessions) we are also expecting you to work closely with product and provide technical guidance on new ideas and even occasionally travel to meet clients for workshops. We are looking for someone who can own this critical area of our platform, understand it deeply and provide extremely clear technical architecture specifications . You should have a proven experience of previously leading teams (with or without line management). We are looking for a technical person who can work at different levels of abstraction and interact with both technical and non-technical stakeholders . As a Lead Engineer at Karhoo the primary responsibilities are: Defining and executing on the technical roadmap for your teams in close collaboration with your Product and Engineering peers. You'll know and talk with your main stakeholders particularly in Product and Solutions on a regular basis, as well as using data and metrics to understand how your products and services are used, and build and deliver on a roadmap focused on engineering excellence. Create Software Design Documents for the technical architecture and delivery plan for major platform initiatives. These initiatives might range from improving the testability, scalability, monitoring or security of the platform to introducing new and complex functionalities that might require coordinating with other teams inside the company such as CloudOps or Data. Making the operation of your products and services safe and sustainable. Leaders in Karhoo know the details of their services and prioritise the right improvements to keep things running smoothly. Take ownership. You'll drive execution of projects, in close collaboration with your Product peer, within your team and work with your peers to keep everyone aligned. You'll clearly and transparently communicate status to leadership and get help where needed to unblock your team. Contributing to the overall Karhoo leadership team. You'll be part of defining our culture, ensuring our teams have everything they need to be productive and excited to work at Karhoo, and helping to drive company-wide initiatives that improve life for all our teams. Optional but preferred: We would prefer you to line manage your team and provide them with the opportunity to grow and develop. Geographical / Business Unit Scope Role will be based in Paddington, London. Requirements We are looking for an experienced software engineering leader with established skills in inspiring talented engineers to deliver high-quality platform technologies and achieve ambitious business goals. The right candidate will have demonstrable ability in designing and developing elegant solutions to complex problems involving microservice architectures. Strong hands-on technical credentials, with several years of experience building out and motivating software development teams. This individual should demonstrate mastery of the tools of the trade, including familiarity with Kubernetes, PubSub or Kafka, microservice, event-driven architectures and experience working in a high TPS organisation with a DevOps culture utilising modern cloud computing approaches. You should have a strong track record of project delivery. This includes excellent written and verbal communication skills with the ability to present complex technical information in a clear and concise manner to a variety of audiences, including a track record of communicating well with executives and non-technical leaders Above all, we are looking for someone who is curious, thinks critically, is eager to learn and is keen to use their experience to help and support others. As a successful candidate you should find yourself fitting into the following list: Creative, passionate, practical individual to join a team of like-minded people. Demonstrable experience of developing and publishing technical specifications Prior hands-on experience working with a microservice architecture using Kubernetes, ideally in an environment with high scalability and reliability requirements. Bachelor's Degree in computer sciences or equivalent is required; Master's Degree is preferred 5 years of experience working in the industry Minimum of 2 years of practical Engineering experience building and leading technical teams Responsibilities Architect and steer the development of the Exchange Platform in order to maintain our scalability and robustness objectives Create Software Design Documents containing the architecture approach for major platform initiatives Contribute actively to the codebase in Golang and review PRs especially around the most critical parts of the platform. Provide technical leadership on one-way technology selection decisions that impact Karhoo platform. Assess the quality and architecture of team codebases working closely with team engineers to ensure a successful testing strategy. Ensure code and design reviews are conducted to high standards. Ensure the microservice architecture is properly documented Contribute to the ongoing improvement of the processes, systems and tools we use to support our platform. Work with the DevOps team to implement the tools and processes required for a highly performant backend development team: continuous integration, continuous delivery, observability, feature flags, containerization. Ensure a fluent, reliable and timely production release process Communicate team status to a wide range of stakeholders, assure transparency into the state of the development process. Identify blockers and resolve them as soon as possible in order to assure the efficiency of the team. Organise interviews for potential candidates and assure the team is adequately staffed to implement the business goals. Responsible for developing and improving onboarding and training to the new developers joining the team. Ensure the consistency of the Demand APIs and their documentation available at https://developer.karhoo.com Interact with non-technical stakeholders or clients and work with product and peers to define the long term technical roadmap Desirables Experience working on developing a large-scale PaaS/SaaS platform where scale performance is important. Knowledge of Golang - all microservices are written in Golang, but it is ok for you to learn it once you join Technical blogging Open-source contributions Experience working with Data products and Deep Learning Interest in line managing the team