About
2023-07-17Hi, I am Jessie.
Projects
Resume
Name: Jessie Chatham Spencer Github: https://github.com/jmintb Blog: https://www.jessiecspencer.com/ Email: jessie@jessiecspencer.com
Summary:
Software engineer with experience in data science, compilers, mobile applications, frontend, backend, MLOps, and cloud infrastructure + orchestration(Kubernetes).
My free time is spent on open-source contributions or my own projects related to compilers, language design, data science, and MLOps.
Most of the code I write these days is in Rust.
Formal Education
- Bachelors in CS at Aarhus University
- Masters in CS at Aarhus University (I am currently in the last semester)
Academic Highlights
- Bachelor thesis: LLVM based JIT Compiler written in Rust
- Master thesis: Drift Detection in Machine Learning Systems for Production
- Rust based internal tool for DIS lab to be used for provisioning, scheduling, and operating experiments
- Implemented a compiler for the compilers course on the bachelor's. Using ocaml and a subset of LLVM, including an x86 backend.
Opensource Work
I have/am making contributions to a few open-source projects. Most notably:
- Rust
- kube-rs
Notable Projects
Compiler using Rust, MLIR and LLVM
I have recently started working on my own language and compiler using Rust, MLIR, and LLVM. Check it out here: https://github.com/jmintb/typed_script
I write about the process here
End-to-end MLOps tool in Rust
I spent the last year developing a Kubernetes-based MLOps tool first in Go and then in Rust.
It consists of multiple controllers, a gRPC service, CLI, and a dashboard all in Rust.
Repo: https://github.com/TeaInSpace/ame
Docs: https://teainspace.github.io/ame/user_guide/0_introduction/
Experience
MLOps Startup Attempt
Company: TeaInSpace
Period: 2022-07 to 2023-09
Summary: I focused on bootstrapping an MLOps-based company. Through this process I:
- Implemented multiple K8S controllers, Custom resources, CLIs, and gRPC services in Rust and Go.
- Performed rapid early prototyping of a Kubernetes-based approach validating the technical early in the process.
- Wrote extensive documentation.
- Decided to sunset the project due to strong incumbents and drift from the original release plan.
Head of IT
Company: RE-ZIP
Period: 2021-07 to 2022-06
Summary: I was hired to transition the company to a sustainable and modern tech stack while maintaining legacy systems.
- Developed services in Go, migrated mobile application to Flutter, along with building an administration dashboard in React.
- Proposed and implemented GPS-based pick-up points circumventing the need for setting up fixed barcodes at each location.
- Documented and performed a thorough handover of all new and legacy systems.
- Interviewed and managed interns.
Student Developer on the Machine Learning Team
Company: Salling Group
Period: 2020-07 to 2021-07
Summary: Designed, built, and maintained a bespoke portable and scalable MLOps platform using K8S and Argo Workflows which is still in use today. Experimented with various recommendation models for clothing based on visual similarity.
- Built bespoke cloud based MLOps infrastructure replacing on-premises legacy system.
- Implemented a cost-effective cluster scaler based on the individual job compute requirements.
- Developed a secure remote access solution for accessing the on-premise infrastructure during covid. It is still in use today.
- Ensured that the infrastructure was reproducible and easy to update.
- Instilled software engineering best practices into the team.
- Documented the system during handover so the team could maintain it themselves after I left even without K8S experts.
- Gathered data and experimented with techniques for recommending clothing based on visual simularity.
- Onboarded and guided colleagues through expanding and working with the MLOps platform.
Student Developer on the API Team
Company: Salling Group
Period: 2019-08 to 2020-07
Summary: I worked on internal tooling, developed Node.js-based services, and maintained our infrastructure.
- Designed and implemented APIs exposing internal company data to user-facing applications in a secure, performant, and maintainable manner.
- Migrated legacy services to new Azure-based offerings.
- Improved internal tooling such as administration dashboards, security alerting, and various forms of automation.
- Worked on various aspects of the in-house API gateway.
- Continously worked on improving internal processes and tools via experiments and weekly introspection with the team.
Student Developer (2017-12 to 2018-08) / Full Time Developer (2018-08 to 2019-08) on the Mobile Team
Company: Sallng Group
Period: 2017-12 to 2019-08, first year as a student developer, second year as a full-time developer while I was on break from my bachelor's degree.
Summary: Developed and maintained various Android applications, services in Nodejs and Go. Pushed the team towards implementing automation, code review, tests, and fostering a more collaborative culture.
- Implemented services to expose REST APIs for customer-facing applications. Employing automated testing and deployment for rapid iteration.
- Developed core libraries for user management to avoid repeating the work in each application.
- Solved various longstanding technical issues in the applications.
- Maintained a variety of customer-facing Android applications.
- Maintained various front-end applications for internal use.
- Performed user research to determine what the customers wanted and needed.
- Supervised student developers.
App Startup Attempt
Company: CJ Software
Period: 2016-09 to 2017-08
Summary: I developed an Android application to read notifications to the user. It got a small amount of traction with a few paying users.