Open Source

Talks

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)

Work

2016 - present Odnoklassniki
position Lead Software Engineer in Platform team
description Implemented new features and optimizations for internal Cassandra fork.

Designed and implemented reactive ok.ru/music streamer.

Contributed to async-profiler and one-nio.

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

Papers

See Google Scholar profile.

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.

Teaching

2017 - present Technopolis
course Lecturer and Curator in Databases
course Lecturer and Curator in High Load Systems
2014 - present 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

Program Committee Membership

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

Education

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
Copyright © 2013-2019 Vadim TSesko