The Community Spotlight celebrates the diversity of expertise, perspectives, and experiences of our community members. In this post we sit down with Kirill Brodt, winner of challenges like Youth Mental Health Narratives: Automated Abstraction and BioMassters and a doctoral student in computer graphics at the University of Montreal.

Name: Kirill Brodt¶
Hometown: Almaty, Kazakhstan¶
To get started, tell us a little about yourself!
I'm currently completing my PhD in Computer Graphics at the University of Montreal in Canada. My research focuses on 2D and 3D animation, a field that beautifully blends artistry and technical challenges. Animation creation is often a very manual and time-consuming process, and I'm particularly interested in leveraging automation to relieve artists of repetitive tasks and empower them to focus on the creative aspects of their work.
At its core, animation starts with drawings – artists visualize their ideas through sketches, which then form the basis of movement. I've been exploring how machine learning can help streamline several stages. For example, creating 3D animation often involves positioning 3D models to match a reference pose, often a hand-drawn character. This is currently done manually, but could be automated using 3D pose estimation from a single image. Another area I'm working on is 2D animation inbetweening – the process of drawing the frames between key poses to create smooth motion. This can be incredibly time-consuming, and offers a compelling opportunity for automation. Ultimately, machine learning feels like a natural fit for tackling these kinds of challenges.
Outside of my research, I'm a lifelong learner and enjoy keeping up with the latest advancements in technology. However, right now I'm thinking that in the near future, after defending my PhD thesis, I will dedicate all my free time to job searching :)
How did you get started in data science?
I first became interested in data science when I came across an article about image classification. Before reading it, I was trying to imagine how it could be done and realized I was limited to thinking in terms of manual rules and simple if-then-else statements. I recognized how inadequate that approach would be – it would be impossible to account for every possible scenario. The article opened my eyes to machine learning as a powerful application of mathematics. It struck me as the perfect field to leverage my mathematical background. I later discovered Yandex Data School of Analysis in Russia, which is renowned for its machine learning program. After a highly competitive selection process, I was accepted and began my journey into data science.
Data science is a broad field. What areas are you particularly interested in? Are there particular problems you’re interested in solving?
Currently, I'm particularly interested in image analysis and extracting geometric information from visual data. For instance, I'm fascinated by the challenge of predicting a 3D model from a single 2D character drawing. Another area I enjoy exploring is generating vector graphics or animations, either from textual descriptions or based on raster images. These problems require a diverse skillset, drawing from fields like computer vision, sequence modeling, generative models, and working with 3D mesh data. This also involves techniques like non-linear optimization and graph algorithms. I'm continually expanding my knowledge across many areas of machine learning to tackle these kinds of challenges.
What is a recent project you’ve worked on that you’re excited about or other interesting work you can share?
My latest project involves 2D animation. I was working on the problem of inbetweening: given two key 2D drawings of a character in different poses, the goal is to automatically interpolate the intermediate frames. Here is a teaser and github link:

What motivated you to join a DrivenData competition?
I began participating in data science competitions while I was learning the field, trying out various platforms, including DrivenData. While I didn't initially rank highly, I achieved my first competition win on DrivenData with the “Open Cities AI Challenge: Segmenting Buildings for Disaster Resilience”. This challenge wasn’t simply about training a U-Net model; it also required developing a strategy for processing large-scale aerial imagery of entire cities.
What particularly impressed me about DrivenData was the consistently high quality of the competitions. I never encountered issues with data integrity or data leakage, and the task descriptions and evaluation metrics were always clearly defined and remained consistent throughout the challenge. Furthermore, DrivenData often provides a helpful baseline solution, which is a great resource for quickly understanding a new problem and working with unfamiliar datasets.
Ultimately, I find competitions to be an excellent environment for practicing and refining the skills.
Is there a particular DrivenData challenge you’ve enjoyed working on?
I particularly enjoyed working on the TissueNet challenge – detecting lesions in cervical biopsies. What made it so interesting was the challenge of dealing with extremely high-resolution microscopic images, often reaching hundreds of thousands of pixels. A significant portion of these images was actually white background, so the first step was to segment the tissue from the background using relatively simple thresholding techniques. This reduced the image size considerably, but we were still left with images containing tens of thousands of pixels. Aggressive compression would lead to information loss, so I focused on a technique similar to attention mechanisms: I divided the tissue into patches, selected the top-K patches based on intensity, and reassembled them into a smaller image (under 2k pixels). This processed image was then fed into a standard neural network for classification. This surprisingly simple approach earned a prize-winning position. I believe this solution has strong potential for further development and could become even more effective in diagnosing cancer or pre-cancerous conditions.
Did you have any domain expertise, or any particular insights from exploring the data, that helped you solve the problem?
No, my approach relies primarily on mathematical foundations and best practices of model training developed through participation in competitions. When I begin tackling a problem, I first research existing literature and examine how others have approached similar tasks. Then, I thoroughly explore the data, manually inspecting random samples to gain an understanding of how to construct the model architecture. Once the architecture is chosen, I apply standard model training techniques and conduct a series of experiments, adapting the model based on the results.
What was the most important technical tip or trick you used to solve the problem? Non-technical?
The most valuable skill is effective searching (googling). I focus on finding leading experts in the relevant field, studying their work, and reading their publications. When code is available, I analyze it and adapt their approaches to my own tasks. With practice, you'll naturally improve your own skills.
Shout outs: Any good tools, posts, or projects from other developers that you appreciate or think the community might enjoy?
Tools (CLI life):
- neovim: text editor
- tmux: terminal multiplexer
- ssh: for remote connections
- rsync: for transferring and synchronizing files between computers
- grep: searching text in files
- find: searching files
- other GNU core command-line utilities
Courses: The Missing Semester of Your CS Education - excellent introduction to computer science
Youtube channels: anthonywritescode - excellent for learning python
Posts: Tour of split ergo keyboards
What advice (career or otherwise) would you give to your younger self?
If I could give my younger self one piece of advice, it would be to consider studying physics rather than mathematics. I think the more hands-on, problem-solving approach emphasized in physics would have better prepared me for a practical career.
If you found out today was your last day on Earth, what would you do?
I would continue sharing my knowledge and insights with others, as I always have.
Have you read any good books or articles recently?
- The Ambidextrous Universe by Martin Gardner. It's a book about symmetry in our world.
- The Art of Loving by Erich Fromm. It's a psychoanalytic exploration of human nature.
- Code: The Hidden Language of Computer Hardware and Software by Charles Petzold. It's a gentle introduction to how computers work.
Where can the community find you online?
Thanks to Kirill (@kbrodt) for sharing his thoughts on work, life, and data science! We are excited to feature more great community members. If you think you or someone you know would be a great addition to a future Community Spotlight, let us know!