AsyncGetCallTrace()
and Perf Events2022 | Vadim Tsesko. Asynchronous Cassandra transport (RU) // HighLoad++ 2022 |
2022 | Vadim Tsesko. Asynchronous Cassandra transport (RU) // Joker 2022 |
2022 | Vadim Tsesko. OK S3: DIY (RU) // Saint HighLoad++ 2022 |
2022 | Vadim Tsesko. OK S3 (RU) // Hydra & C++ Russia 2022 |
2018 | Vadim Tsesko. Reactive ok.ru/music streamer (RU) // Joker 2018 |
2017 | Andrei Pangin, Vadim Tsesko. The Art of JVM Profiling (RU) // JPoint 2017 |
2016 | Vadim Tsesko. YoctoDB @ Yandex.Classifieds (EN) // CEE-SEC(R) 2016 |
2014 | Vadim Tsesko. Akka at Yandex (RU) // JPoint 2014 |
2012 | Vadim Tsesko. Streaming Data Processing with Actor Model (RU) // Application Developer Days (ADD-2012) |
2012 | Dmitry Kachmar, Vadim Tsesko. Life of a Project: from Idea to Implementation (RU) // Yandex.Subbotnik (2012) |
2023 - present | VK |
position | Principal Engineer @ VK Tech Platform |
description |
Developing and improving internal Exabyte-scale object and blob storages. |
tools | Java, Cassandra, async-profiler |
2023 - present | ITMO university |
position | Head of Web scale master's degree program in collaboration with ITMO university and VK Education |
description |
Managing master's degree program. Teaching courses on NoSQL and Highload systems. |
2016 - 2023 | Odnoklassniki |
position | Lead Software Engineer @ OK Platform |
description |
Designed and implemented reactive ok.ru/music streamer. Contributed to async-profiler and one-nio. Designed and implemented new features and optimizations for internal Cassandra-based NewSQL storage and crafted several highload distributed stateful microservices over NewSQL. Implemented media transport components of Sferum educational platform. Unified company wide onboarding process. Designed and implemented AWS S3 compatible object storage. |
tools | Java, C, Cassandra, async-profiler |
2015 - 2016 | Yandex.Classifieds |
position | Lead of Backend Infrastructure team |
description | Designed and/or implemented infrastructure components for fault-tolerant distributed high-loaded aggregators and classifieds (Auto.ru, Yandex.Realty, Yandex.Rabota, Yandex.Travel): counters/limiters, billing, telephony, analytics, moderation, quality control, etc. Designed and implemented content quality control subsystem. Unified technology stack and improved multi-location reliability of Auto.ru. Participated in hiring activities, hardware resource planning, SLO enforcement. |
tools | Scala, Akka, Spray, Cassandra, Hadoop, HBase, Hive, YoctoDB |
2014 - 2015 | Yandex LLC |
position | Lead of Infrastructure and Performance team |
description | Designed, reviewed and/or implemented internal components (libraries and microservices) used in offer aggregators (Auto.ru, Yandex.Realty, Yandex.Rabota, Yandex.Travel): indexing, search, billing, counters/throttlers, activity tracking, antifraud, content quality control, archival data processing, subscriptions, metering, monitoring, etc. Responsible for scalability and fault tolerance aspects at architecture/design reviews: Yandex.Rabota, Yandex.Travel, Reviews, UGC, etc. Advocated and integrated Cassandra storage and Akka framework for building reactive concurrent services. Introduced Hadoop ecosystem (HBase and Hive) for archival data processing. Broadened code review and continuous integration practices in company development process. Designed and implemented open-source embedded DBMS YoctoDB to replace Apache Lucene in Auto.ru/Yandex.Auto as a search index implementation -- service latency improved substantially (presented in Russian at JPoint 2014). Participated in hiring activities, hardware resource planning, improvement of deploy processes, SLO enforcement. |
tools | Scala, Java, Akka, Spray, Cassandra, YoctoDB, MySQL, Hadoop, HBase, ZooKeeper, Hive, Spark, Kafka, Consul, Protobuf |
2013 | Yandex LLC |
project | NDA |
position | Senior Software Developer |
description | Designed and implemented components of data mining and feature extraction system for reactive personalization. |
tools | Scala, Java, Akka, Hadoop, Cassandra, Kafka, YoctoDB, JMH |
2011 - 2013 | Yandex LLC |
position | Senior Software Developer |
description | Started with designing and implementing framework for streaming parsing and processing of microformats when crawling Web. Led migration from Subversion to Mercurial. Introduced Scala, Akka, Metrics, dependency management, continuous integration, code review practices. Justified necessity for development of eternal archive of offer content and user activity data. Designed and reviewed internal services and components: user settings, subscriptions and notifications, picture processing and caching, Web crawling, archival data collecting and processing. Transformed existing single-node indexing infrastructure into scalable distributed highly-available streaming indexing (the approach is described in patent). Advocated and introduced NoSQL storages: Cassandra, HBase, Redis, MongoDB. The results were presented in Russian at Yandex.Subbotnik and ADD-2012. Participated in hiring activities. Led local functional community SPbHUG. |
tools | Scala, Java, Jetty, Akka, Circumflex, Maven, Ivy, Cassandra, Hadoop, HBase, MySQL, ZooKeeper, Curator, Lucene, Redis, memcached, MongoDB, Scalatest, Camel, Protobuf, ZeroMQ, JGroups, Kestrel, Metrics, Graphite, Artifactory, Findbugs, PMD |
2010 - 2011 | Digitek Labs |
project | R&D Project on Dynamic and Static Analysis of JavaScript (Microsoft Research) |
position | Researcher and Software Developer |
description | Instrumented Firefox JavaScript engine with tracing infrastructure for collecting, analysis and visualization of dynamic traces. Conducted thorough research on static analysis methods and algorithms. |
tools | C/C++, Python, SQLite |
2008 - 2009 | Digitek Labs |
project | R&D Project on Automatic C/C++ Defect Detection System |
position | Researcher and Software Developer |
description | Designed and implemented various core subsystems of Aegis platform i.e. interval analysis, points-to analysis, resource analysis, internal model, defect detection algorithms and various optimizations. Conducted thorough research on static analysis methods and algorithms. The results are published. |
tools | Java, Ant, C, XML, PostgreSQL, JSP, Hibernate |
2007 - 2008 | Digitek Labs |
project | R&D Project on C Software Behavior Animation (Panasonic Research) |
position | Researcher and Software Developer |
description | Developed GNU C parser and instrumentation tools for code transformation. |
tools | Java, JavaCC, C, C Preprocessor |
2004 - 2007 | Digitek Labs |
project | Submarine Hydroacoustic Software |
position | Software Developer |
description | Designed and implemented various subsystems i.e. classification, identification, ray tracing, audio, networking, UI, logging, multithreading, digital signal processing, etc. Improved development processes: introduced Trac, Mercurial, unit testing. |
tools | Linux, Object Pascal, Java, C, XML |
2018 | Вадим Цесько. Реактивный раздатчик ok.ru/music. habr. |
2016 | Vadim Tsesko and Svyatoslav Demidov. YoctoDB: A Partitioned Immutable Embedded Database. CEE-SECR '16 Proceedings of the 12th Central and Eastern European Software Engineering Conference in Russia. (Backup PDF). |
2016 | Dmitry Schitinin and Vadim Tsesko. Streaming matching of events. CEE-SECR '16 Proceedings of the 12th Central and Eastern European Software Engineering Conference in Russia. (Backup PDF). |
2014 | Dmitry Igorevich KACHMAR, Vadim Aleksandrovich TCESKO. A system and method for managing partner feed index // Patent US20160203175 A1. |
2011 | Mikhail Belyaev, Vadim Tsesko. LLVM-based static analysis tool using type and effect systems // Automatic Control and Computer Sciences. — St-P.: SPbSU, 2012. — No. 46 (7). — pp. 324-330. |
2011 | Mikhail Glukhikh, Vladimir Itsykson, Vadim Tsesko. Using dependencies to improve precision of code analysis // Automatic Control and Computer Sciences. — St-P.: SPbSU, 2012. — No. 46 (7). — pp. 338-344. |
2011 | Mikhail Glukhikh, Vladimir Itsykson, Vadim Tsesko. The use of dependencies for improving the precision of program static analysis // Modeling and Analysis of Information Systems. — Yaroslavl: PG DYSU, 2011. — No. 18 (4). — pp. 68-79. |
2010 | Vladimir Itsykson, Mikhail Moiseev, Marat Akhin, Alexey Zakharov, Vadim Tsesko. Automatic Software Defect Detection in C/C++ based on Static Analysis // In Proceedings of the Microsoft Technologies in Theoretical and Applied Programming conference. — St-P.: SPbSPU, 2010. — pp. 70-71. |
2009 | Vladimir Itsykson, Mikhail Moiseev, Vadim Tsesko, Alexey Zakharov. Automatic Defects Detection in Industrial C/C++ Software // Software Engineering Conference in Russia (CEE-SECR), 2009 5th Central and Eastern European. DOI:10.1109/CEE-SECR.2009.5501189 |
2009 | Vladimir Itsykson, Mikhail Moiseev, Marat Akhin, Alexey Zakharov, Vadim Tsesko. Points-to Analysis Algorithm for Source Code Defect Detection // System Programming. — St-P.: SPbSU, 2009. — No. 4. — pp. 5-30. |
2009 | Vladimir Itsykson, Mikhail Moiseev, Vadim Tsesko, Alexey Zakharov, Marat Akhin. Interval Analysis Algorithm for Source Code Defect Detection // Information and Control Systems. — St-P.: Polytechnica, 2009. — No. 2 (39). — pp. 34-41. |
2023 - present | Head of Web scale master's degree program in collaboration with ITMO university and VK Education |
course | NoSQL |
course | HighLoad |
2017 - 2022 | Technopolis |
course | NoSQL: 2018, 2019, 2020, 2021, 2022 |
course | HighLoad: 2017, 2018, 2019, 2020, 2021, 2022 |
2014 - 2018 | Saint-Petersburg State Polytechnical University |
course | Lecturer in Parallel Computing |
2013 | Computer Science Center |
course | Lecturer in Databases |
2011 - 2013 | Saint-Petersburg State Polytechnical University |
course | Lecturer in Formal Methods of Software Quality Assurance |
course | Lecturer in Parallel Computing |
2009 - 2011 | Saint-Petersburg State Polytechnical University |
course | Lecturer in Formal Methods of Software Quality Assurance |
course | Teaching Assistant in Software Engineering |
course | Teaching Assistant in Information Systems and Databases |
2008 - 2009 | Saint-Petersburg State Polytechnical University |
course | Teaching Assistant in Information Systems and Databases |
2024 | JPoint 2024: Сonference for experienced Java developers |
2023 | Joker 2023: Сonference for experienced Java developers |
2019 | IMHCS'19: 2nd Workshop on Information Management in Human-Centric Systems (IUCC-2019) |
2018 | ICAIT-2018: International Conference on Applications in Information Technology |
2017 | IMHCS’17: Information Management in Human-Centric Systems (CYBCONF-2017) |
2016 | SEIM-2016: Software Engineering and Information Management |
2014 | TMPA-2014: Tools and Methods of Program Analysis |
2013 | TMPA-2013: Tools and Methods of Program Analysis |
2007 - 2010 | Postgraduate education |
institution | Department of Computer Systems and Software Engineering, Saint-Petersburg State Polytechnical University, Russia |
2005 - 2007 | Master’s Degree summa cum laude in Software Engineering |
institution | Department of Automation and Computer Science, Saint-Petersburg State Polytechnical University, Russia |
GPA | 5.0 out of 5.0 |
Master Thesis | Synthesis of Distributed Application Templates Based on Formal Specification of Applied Protocols |
2001 - 2005 | Bachelor’s Degree cum laude in Computer Science |
institution | Department of Automation and Computer Science, Saint-Petersburg State Polytechnical University, Russia |
GPA | 5.0 out of 5.0 |
Bachelor Thesis | Development of Scalable High-Availability Server Cluster Platform Using OpenMosix Technology |