Senior Backend Engineer (Python)

Cambridge Spark ,
London, Greater London

Overview

Job Description

Senior Backend Engineer (Python) (London) Cambridge Spark's mission is to help organisations develop the Data Science & AI capabilities of their workforce. Our tech team is part of a dedicated group focused on developing EDUKATE.AI, a learning management system (LMS) that enables training providers (universities and companies) to create interactive learning experiences that adapt to the capabilities of learners. On EDUKATE.AI learners solve problems in a simulated professional environment and receive instant personalised feedback. The platform brings together research in software engineering, source code analysis, education pedagogy and machine learning. EDUKATE.AI is currently used by various universities and large companies to deliver Data Science and Data Analysis programmes. It was also central to a research project with the University of Cambridge on recommender systems applied to education, thanks to a 1.4m government innovation funding provided by InnovateUK. We're looking for a Senior Backend Engineer experienced with developing Python based applications and APIs. Responsibilities : This is an exciting role as we are a small, fast-paced team. Our backend is made of multiple APIs, a data pipeline processing students' data to be used by our recommendation algorithms as well as an infrastructure based on Docker to run code submitted by users in the cloud and generate feedback. We need to scale this infrastructure so it can automatically respond to a higher number of users submitting at the same time, and decrease latency. The feedback generation currently takes a submission as input and takes a few seconds to run tests and benchmark the code. We are also building a fully interactive mode that will allow users to prototype their code directly in the browser, here the latency needs to be minimal to compete with a local development environment. Key skills: * Strong Python skills are a must * Experience with GCP products (or equivalent): regular instances, cloud functions, cloud storage, etc.. * Experience with Docker * Experience with software development tools and processes (version control, CI/CD, DevOps, etc...) * Experience building applications at scale: infrastructure, profiling, monitoring, performance, database indexing Bonus skills: * Experience with a Python web framework (Flask, Django, etc..) * Experience with Java * Some familiarity with the Python Data Science stack (Pandas, Sklearn, Numpy, etc..) * Experience in teaching About Cambridge Spark Cambridge Spark is a spin-out from the Cambridge Computer Laboratory with a focus on personalised education in the fields of Computer Science, Data Science, Artificial Intelligence and Cyber Security. Our clients include some of the most prestigious financial institutions and universities in the UK and internationally. At Cambridge Spark, your company benefits will include: * Opportunities to grow within the company and rapidly acquire more responsibilities based on performance and interests * Flexible working conditions * Positive and comfortable working environment * Inclusive working community with an annual team retreat, monthly company socials and Cambridge College formals. * Conference travel including PyData and PyConUK * Office next to King's Cross Station We do not want to be solicited by recruiters. Employment Type: Full time