Born and raised in Saint Petersburg, Russia, I have been living in The Netherlands since 2016.
I work on making collaboration tools in software engineering more aware of the processes they support and more helpful. I lead the Intelligent Collaboration Tools Lab at JetBrains Research in Amsterdam.
You can drop me a line.
Multimodal Recommendation of Messenger Channels
Ekaterina Koshchenko, Egor Klimov, Vladimir Kovalenko
Collaboration platforms, such as GitHub and Slack, are a vital instrument in the day-to-day routine of software engineering teams. The data stored in these platforms has a significant value for datadriven methods that assist with decision-making and help improve software quality. However, the distribution of this data across different platforms leads to the fact that combining it is a very timeconsuming process. Most existing algorithms for socio-technical assistance, such as recommendation systems, are based only on data directly related to the purpose of the algorithms, often originating from a single system. In this work, we explore the capabilities of a multimodal recommendation system in the context of software engineering. Using records of interaction between employees in a software company in messenger channels and repositories, as well as the organizational structure, we build several channel recommendation models for a software engineering collaboration platform, and compare them on historical data. In addition, we implement a channel recommendation bot and assess the quality of recommendations from the best models with a user study. We find that the multimodal recommender yields better recommendations than unimodal baselines, allows to mitigate the overfitting problem, and helps to deal with cold start. Our findings suggest that the multimodal approach is promising for other recommendation problems in software engineering.
Bug Tracking Process Smells In Practice
Erdem Tuna, Vladimir Kovalenko, Eray Tüzün
Bus Factor In Practice
Elgun Jabrayilzade, Mikhail Evtikhiev, Eray Tüzün, Vladimir Kovalenko
The IntelliJ Platform: a Framework for Building Plugins and Mining Software Data
Zarina Kurbatova, Yaroslav Golubev, Vladimir Kovalenko, and Timofey Bryksin
RefactorInsight: Enhancing IDE Representation of Changes in Git with Refactorings Information
Zarina Kurbatova, Vladimir Kovalenko, Ioana Savu, Bob Brockbernd, Dan Andreescu, Matei Anton, Roman Venediktov, Elena Tikhomirova, and Timofey Bryksin
Authorship Attribution of Source Code: A Language-Agnostic Approach and Applicability in Software Engineering
Egor Bogomolov, Vladimir Kovalenko, Alberto Bacchelli, and Timofey Bryksin
PSIMiner: A Tool for Mining Rich Abstract Syntax Trees from Code
Egor Spirin, Egor Bogomolov, Vladimir Kovalenko, and Timofey Bryksin
TaskTracker-tool: a Toolkit for Tracking of Code Snapshots and Activity Data During Solution of Programming Tasks
Elena Lyulina, Anastasiia Birillo, Vladimir Kovalenko, andTimofey Bryksin
TNM: A Tool for Mining of Socio-Technical Data from Git Repositories
Nikolai Sviridov, Mikhail Evtikhiev, Vladimir Kovalenko
Sosed: a Tool for Finding Similar Software Projects
Egor Bogomolov, Yaroslav Golubev, Artyom Lobanov, Vladimir Kovalenko and Timofey Bryksin
Comparing Block-based Programming Models for Two-armed Robots
Nico Ritschel, Vladimir Kovalenko, Reid Holmes, Ron Garcia, and David C. Shepherd
Pandemic Programming: How COVID-19 Affects Software Developers And How Their Organizations Can Help
Paul Ralph, Sebastian Baltes, Gianisa Adisaputri, Richard Torkar, Vladimir Kovalenko, Marcos Kalinowski, Nicole Novielli, Shin Yoo, Xavier Devroey, Xin Tan, Minghui Zhou, Burak Turhan, Rashina Hoda, Hideaki Hata, Gregorio Robles, Amin Milani Fard, and Rana Alkadhi
Using Large-Scale Anomaly Detection on Code to Improve Kotlin Compiler
Timofey Bryksin, Victor Petukhov, Ilya Alexin, Stanislav Prikhodko, Alexey Shpilman, Vladimir Kovalenko and Nikita Povarov
Building Implicit Vector Representations of Individual Coding Style
Vladimir Kovalenko, Egor Bogomolov, Timofey Bryksin and Alberto Bacchelli
PathMiner: A Library for Mining of Path-Based Representations of Code
Vladimir Kovalenko, Egor Bogomolov, Timofey Bryksin, and Alberto Bacchelli
Does Reviewer Recommendation Help Developers?
Vladimir Kovalenko, Nava Tintarev, Evgeny Pasynkov, Christian Bird, and Alberto Bacchelli
Mining File Histories: Should We Consider Branches?
Vladimir Kovalenko, Fabio Palomba, and Alberto Bacchelli
Code Review for Newcomers: Is It Different?
Vladimir Kovalenko and Alberto Bacchelli