Friday, April 18, 2025

When a passion for bass and brass helps build better tools

Share

For our first Five Minutes With, we caught up with Kevin Millikin, a software engineer on the DevTools team. He’s in Salt Lake City this week to give a presentation at PyCon USAthe largest annual meeting of people using and developing the open-source Python programming language.

At DeepMind…

I build custom software tools for our developers. For example, we’re currently building a web editor to support remote workers who need to code in Python, one of the popular languages ​​our engineers operate. Building tools for the way we work and the Google infrastructure we rely on gives us more flexibility to solve problems that matter to our teams.

A day in the life of a DeepMind software engineer begins…

London Campus – it’s fantastic. We work a hybrid 3:2 model – Monday to Wednesday in the office, Thursday and Friday from anywhere. I really enjoy the direct interaction with my colleagues.

I worked from home on Thursday and Friday. I’m a musician, and my home office is also my music room. I play bass guitar, baritone horn, and tenor saxophone. Playing music has helped a lot while we’ve been working remotely during the pandemic. It’s a different kind of artistic energy—it gives me space to reflect on the problem I’m trying to solve and helps me approach it from a different angle.

At PyCon US…

I will be giving a lecture on the topicBeyond subtyping‘, a feature of the Python language. My session highlights various cases where tools that implement subtyping disagree with each other. As a Python designer, you may think that these are settled issues, but they are not, because we do not yet agree on fundamental points about how the language works.

There are dozens of people in the writing group from companies like Microsoft, Facebook, and Google—it’s a very collaborative, collegial group. We’re all trying to evolve Python in a way that supports our own users. We’re finding that we all have similar problems and similar goals. We’re trying to make tools that anyone can operate, so we have to design in a very collaborative way.

I’m really excited…

Meeting face to face with people I’ve been working with remotely for a few years now who are part of the Python community. I’m a bit up-to-date to the field and would like to expand our network and make it more inclusive to external contributors. In practice, it often works as a closed group and I think a lot of work could benefit from more openness.

The future of language…

While many up-to-date features are added to Python to assist solve a specific problem that someone is struggling with, they don’t always fit in with other up-to-date features in a coherent way. One of the things I advocate for is taking a step back and deciding what our principles are for the evolution of the part of the programming language that we’re working on. A lot of these are in the minds of the developers, but my question is, can we write them down and operate them as a manifesto for how the language should evolve? If we had a roadmap of where we wanted to go in the next 2-5 years, could we be more deliberate about the changes we make to the language? That would ensure that we’re building for the future and the tools that we’ll need to accelerate AI research.

Learn more about engineering at DeepMind and apply for open positions today

Latest Posts

More News