Backend Engineer for ML
Location: London, UK
Salary: £55,000 + options
About the role
If you’re excited about empowering individuals, helping organisations to work better together, and creating a platform to power the future of work, this is the place to do it. Kalido exists to help create a world where people and organizations can maximize potential through a global community of valued connections and opportunities. We passionately problem solve new ways to do this, no matter how difficult the challenge. Everyone on our team is a true product owner, responsible for ensuring excellence. We move fast (but thoughtfully), and are looking for a talented and impact-oriented Backend Engineer to join our ML Team.
In this role, you will be building and maintaining the infrastructure that links ML to Kalido’s server, and ensuring that it is secure, performant, easily deployable, scalable, cost-effective, and fit for purpose. In doing so, you will shape the company, and our collective ability to impact the world.
As part of a startup, your responsibilities will vary, but on a day to day basis, you will:
- Collaborate with cross-functional teams to define, design, and build new functionality as required, writing clean and efficient code
- Design, build and refactor our ML server architecture as we evolve, with maintainability and efficient abstraction in mind
- Verify, test and deploy new builds
- Surface and package ML models
- Experiment with ML models on the edge
- Troubleshoot, debug and enhance the existing codebase, driving towards a continuously more performant, higher quality, and responsive experience
- Troubleshoot, debug and maintain the existing DevOps pipeline
- Optimize our use of processing power, memory, storage,bandwidth, and third-party API calls in our backend infrastructure
What we are looking for
We value inclusion, impact, transparency, generosity, and teamwork. You can read more about our values and what they mean to us here. We are looking for someone who: shares our philosophy; is capable and excited about the role; strives for personal and professional excellence; and wants to make a meaningful difference through their work.
This opportunity is for you if you are:
- Experienced in development and backend systems building, with a strong analytical mind and an ethical approach to software development
- Comfortable with the fundamentals of Computer Science and Information Architecture, including knowledge of data structures, algorithms, their complexities, their tradeoffs, and their implementation (e.g. trees, graphs, sorting algorithms, and their various Big O implications)
- Excited about thoughtfully building scalable platforms
- Knowledgeable about systems architecture choices and performance trade-offs, database design and extensibility
- Comfortable developing and maintaining systems written in Golang, and Python, using unit testing, and managing version-controlled development using continuous integration and devops tools (e.g.GitHub actions). Working knowledge of a wide variety of languages and frameworks is preferred.
- Capable of writing SQL queries for Oracle and Postgresql
- Experienced with gRPC and message queues, especially RabbitMQ
- Experienced with Docker
- Excited to learn more about machine learning
- A good listener, willing and able to act on constructive feedback
- A strong collaborator, able to establish relationships with other development teams, and to proactively keep teammates in the loop on progress and issues
- A creative thinker, able to investigate and solve complex product challenges
- A clean, conscientious and forward-thinking coder
- Keen to take initiative wherever an aspect of the in-app experience, feature, development process, or culture can be improved
- Beneficial: Experience with API design or/and training and deploying ML models