I’m a Software Engineer and Computational Physics PhD, passionate about building sustainable software to deliver business value driven by the why, not the what or how. I’ve mostly worked at the intersection of advanced mathematics, ML/AI, and physical modelling with cloud and distributed computing.

These days, my passion is software and system architecture. AI, VR, AR, and IoT are revolutionary technologies with transformative possibilities, and this is where I want to focus in the years ahead!

My areas of expertise include: numerical programming, parallel programming & distributed computing, HPC, backend & data engineering, devops, data analysis & visualisation, ML/AI, software architecture, and cloud architecture.

☎️ Contact information

📧 Email: [email protected]

👨🏻‍💻 GitHub: github.com/chrisk314

🔗 LinkedIn: linkedin.com/in/chris-knight-3728a449

👨🏻‍💻 ****Work experience

Lead Software Engineer

Anglo American, London, UK – (Apr 2021 - Mar 2023)

I led a small team within Data Analytics supporting Digital Twinning use-cases. I designed and, with my team, implemented Python based software libraries and cloud infrastructure for modelling and optimising industrial processes.

The main tool provides a graph theory inspired API with process components, modelled as Python classes, forming the nodes of a graph and component i/o connections forming the edges. Models can be defined in yaml format and executed as Argo Workflows in Kubernetes with data exchange via a message broker. Another library facilitates large scale optimisation of models with Spark in Kubernetes and PostgreSQL. A REST API with a Python client was also created using Azure App Service and Azure Functions for launching and monitoring long running jobs.

As team lead I was also responsible for: understanding user requirements; owning the product backlog; facilitating sprint ceremonies; and managing access to repos in Azure DevOps and infra in Azure.

Senior Software Engineer

Brainpool, London, UK – (Jan 2019 - Apr 2021)

I designed and implemented a cloud based system in Python and C++ for automated design of timber floors for a UK manufacturer. The tool increases floor quotation rate and reduces costs per floor. I worked with the client to understand the business problem and explored solutions with a small team of data scientists. I then designed and developed the solution in Python (including bindings with the client’s existing structural analysis C++ code) and a web app and cloud infrastructure in GCP.

Design runs are executed as autoscaling kubernetes jobs, enabling hundreds of concurrent runs cost effectively. The web app enables CRUD operations for jobs, file transfer between client and GCS, job status monitoring, and email notifications. I implemented an MVP of the app with Flask, Postgres, and Redis. All components are containerised with Docker and orchestrated with Kubernetes and Helm. This project also involved product management, collecting user feedback, reporting to executives, and managing junior engineers.

I also worked briefly on a project involving foreign exchange rate predictions. This exposed me to financial concepts and involved: productionising and containerising ML models and code from a data scientist; transforming large volumes of historical data with Spark for model training; and contributing to the design of a streaming pipeline in GCP involving InfluxDB and Kafka.