Research Software Engineer
The Role
In this role you will have to use machine learning algorithm, machine learning pipeline and system development (e.g., implementing more advanced & novel machine learning algorithms with our scientist team from scratch) .
Tech stack:
Our tech stack follows open standards. These are processed in microservices. Our backend is written in Python, Java, and C++. We use TensorFlow, PyTorch, Scikit-learn, XGBoost, CatBoost, LightGBM, and many other data science libraries (for example, MLXtend, SHAP etc.,) to build our AI libraries.
The interview process will include a walk through a coding and algorithms case study. This is to test that your ability to synthesise, analyse and provide solutions is at the relevant level required for this role.
Requirements:
Write production level python code following good coding practices and design patterns. Good knowledge of AI (machine learning, optimisation) is required.
Qualifications and Skills:
- You have at least 3 years industrial experience in machine learning algorithm or software development; or at least 3 years research experience in software engineering or machine learning area.
- You have extensive experience in 2 programming languages (e.g., Python, Java, C++ etc)
- You are comfortable with system level issues (due to python and ML libraries) and have experience with distributed systems.
- You have experience working with different machine learning algorithms, optimization algorithms or meta-heuristic algorithms: Reinforcement Learning, Deep Learning (RNN, CNN, GAN etc.,), Genetic Algorithm, Bayesian optimization algorithm.
- Master’s degree and/or PhD in computer science is a plus.
Benefits:
- Generous holiday allowance (21 days) – we encourage everyone to use their allowance!
- Company pension scheme
- Fun team-building activities
- Annual company dinner
- Central London location
- Central London Luxury Gym membership