2007 – 2012: Ph.D. degree (candidate of technical science) at ITMO University (Saint-Petersburg), Computer Science Department. Thesis theme – “Mathematical Models and Methods Used to Automate Design of Technical Systems with Priority Queueing”.
2004 – 2006: M.Sc. degree at ITMO University (Saint-Petersburg), Computer Science Department. Thesis theme – “Simulation of Traffic Management Methods in Computer Networks” (diploma with honours, GPA 5.0/5.0).
2002 – 2004 : Teacher of English at Saint-Petersburg State Courses of Foreign Languages and Academy of Postgraduate Pedagogical Education, English Language Department, Elementary School (diploma with honours, GPA 5.0/5.0).
2000 – 2004: B.Sc. degree at ITMO University (Saint-Petersburg), Computer Science Department. Thesis theme – “Quality of Service (QoS) Provision in IP networks” (diploma with honours, GPA 5.0/5.0).
- 2007–now: Associate Professor, tech leader at “ITMO University” (Saint-Petersburg). Gave lectures or managed lab work of students in the following courses: “Informatics”,“Parallel computing”, “Discrete event modeling and simulation”, “Telecommunicationsand Computer Networks”. Carried out scientific research both as a programmer and a technical leader (projectmanager) for projects aimed at creating the following simulation models: a WiMAXnetwork, an automated car parking system (GPSS language), a routed computer networkwith QoS diffserv policies implementation (NS-3 framework in C++ with Qt GUI), a queuing (e.g. WFQ) network module (Anylogic). Wrote training aids (books) for the following courses: “Wireless Networks”, “Modeling (simulation)” and “Parallel computing”. Supervised approx. 30 B.Sc. and M.Sc. students on their way to diploma.
- 2017–now: research engineer at “Huawei” (SPb). Performed research of bandwidth sharing algorithms. Performed research of compression algorithms (zstd compressor, FSE). Software used: git, SVN, Eclipse CDT, make, gdb, Google Performance Tools, gcov, Valgrind, Wireshark, VirtuaBox.
- 2015–2017: senior C programmer and project manager at “NRI Mashtab, Ltd” (SPb). Performed research of multi-home L4 protocols (MPTCP, SCTP). Created a prototype of a DCCP-based multi-home tunneling network applicaton. Wrote an application to measure network route capacity and interfaces load per-application and per-TOS. Supervised a team of 6 developers in a software firewall/router project. Configured Redmine for the project. Planned tasks for the team to meet long-term requirements using MS Project. Discussed FSTEK (ФСТЭК) firewall requirements with customers to reduce project risks and shrink timeline. Monitored team activity, fixed problems.
- 2012–2015: senior C programmer at “Evelopers, Ltd” (Saint-Petersburg). Ported existing Linux code to Mac OS X. Maintained and developed cross-platformcode base (Linux 32/64, Windows 32/64, Mac OS X). Ported Visual Studio 6.0projects to Visual Studio 2012. Team tools: Jira, Confluence, Crucible, FishEye. Implemented converter of sFlow and Packeteer network traffic into NetFlow v.9. Maintained and developed a scalable multi-threaded cross-platform high-load
- network-oriented distributed application for processing of mixed traffic: Packeteer, sFlow, Netflow v5/9, IPFIX (including use of raw sockets API). Maintained and developed various SIEM features: analysis of Cisco ASA logging, botnet detection, traffic anomalies analysis using statistical methods, DDoS detection mechanisms, network health assessment using VMWare VCenter IPFIX flow records for VXLAN-residing virtual machines (including manual VCenter configuration), SNMP manager development, event notification using Syslog.
- 2004–2007: C programmer, QA Engineer at “Sunrise-R SPb”, Ltd (Saint-Petersburg). Modified firmware of a GPS tracking device to implement power-saving mode. Modified Linux network drivers to implement jitter buffer for an RTP stream. Implemented a partial decoder of MPEG2/4 network streams. Implemented a parser of log files from a GPS tracking device. Performed usual QA-related tasks: finding bugs, reporting them in a bug-tracker (IBM Lotus Notes, Redmine), verifying fixed bugs, designing test cases.
- 2003–2006: system administrator at “Reyder”, Ltd (Saint-Petersburg). Maintained small office LAN (software/hardware upgrades, user management, backup activities, antiviral protection). Administered databases (MS Access, 1C). Maintained internet proxy-server (Internet sharing, firewalling, setting quotas for users), file server (access policies), mail server (SMTP and POP3 protocols).
- Theory of Computer Systems Design
- Cloud computing
- Multi-core programming
- Network Application Programming
- C (C89, C99, OpenMP, Pthreads), GPSS – proficient.
- C++, bash, Python, cmd, Cisco IOS – moderate.
- Java, SQL, Assembler (x86), V.Basic, R – superficial.