OBJECTIVE: 		Software engineer.
AGE:                    46

EDUCATION:  Ph.D. in Computer Science


  Project areas:        System software (11 years) -
                           editors, debuggers, assemblers, compilers,
                           programming systems, object oriented
                           programming environments, operating systems,
                           object oriented distributed databases,
                           fault tolerant systems, 
                           windowing systems.
                        Information systems (2 years)
 				Banking Systems (1 year)

  Platforms:		PC(16 years), Alpha AXP(3 years), VAX(1 year),
                    BESTA(m68k based workstation) (4 years),
                    PDP-11(1 years)

  Operating systems:    UNIX (various flavors - 13 years), Windows - (11 years)
				VMS(3 year)
  Programming languages:C++ (14 years), C (15 years), FORTRAN (1 year),
                        LISP (1 years), Java (8 year)
				Familiar with great number of other languages.

  Assemblers:           PDP-11(2 years), Intel x86 (6 years),
                        MC68k (4 years), Alpha (1 year)

  DBMS:			Commercial: Oracle, MS-SQL, mySQL, SAP-DB
               Research projects: GOODS, GigaBASE, FastDB, Perst, POST++, JORA

  Tools: 			ar, awk, emacs, lex, lint, make, sed, sh, yacc...

  Other Software:	X-Windows, Win32, TeX, TCP/IP software, J2ME, Android

  Worked for Digital Equipment in Russia, Germany, Holland, Sweden. 

  Speaking and writing English.


  2014                  Postgres Professional
                        Leading developer

  PostgresPro: Commercial version of PostgreSQL
    Multimaster: Postgres HA cluster based on bidirectional logical replication
    pg_shardman: Postgres scalable cluster using sharding and redundancy

  2010-2014             NIISI RAS

  SciDB project: database management system for scientific data.

  2006-2009             WebAlta
                        Technical director

  Internet new generation search engine

  2003-2006             Borland Co, Moscow branch
                        Software architect
  Sapient: static source analyzer for Java

  2002                  TogetherSoft Co, Moscow branch
                        Group Leader
  DTR: high performance, scalable version control system.
  Joint project with SAP. Implementation of DeltaV protocol handlers.

  2001                  TogetherSoft Co, Moscow branch
                        Project Leader
  JHttpServer: internal HTTP server implementation.

  2001                  TogetherSoft Co, Moscow branch
                        Project Leader
  JDAV: version control system based on WebDAV and DeltaV protocols.
  Using JDBC to stored VCS data in any relational database. 
  Implementation of server and client parts. 

  2000                  TogetherSoft Co, Moscow branch
                        Project Leader
  Consus: pure Java RDBMS with object orient extensions. Goals of the project: 
  development of pure Java high performance embedded database for internal use.

  1999                  Research Computer Center of Moscow State University

  FastDB: main-memory database object-relational database system with smart C++ 
  Main goals of the project: high performance and predicated response time. 

  1999                  Research Computer Center of Moscow State University
			Software Engineer.

  Porting of four computer telephone software systems from Intel to 
  Sparc/Solaris platform for Natural Microsystems.

  1998                  Research Computer Center of Moscow State University
			Software Engineer.

  GOODS: Generic Object Oriented Database System. Freeware project of
  development of distributed multilingual database using aspect-oriented
  approach and metaobject protocol for Java and C++ language interfaces.
  Supported platforms: Digital Unix, Solaris, AIX, FreeBSD, Linux, 
  Windows 95/98/NT.  	
	36,000 lines in C++ and Java. 

  1997                  Digital Equipment Co., Moscow branch
                        Software Engineer
  Charon: Software emulator of PDP-11 at various platforms, 
  including Digital UNIX, Linux, Windows NT, VMS. 
	Personal contribution:   10,000 lines of about 100,000. 

  1996                  Digital Equipment Co., Moscow branch
                        Software Engineer
  EPC: manufacturing control system. Development under contract with 
  FUJI PHOTO FILM B.V. Porting existed source code from PDP/RSX 
  to Alpha AXP/OpenVMS. Development of new intelligent Pascal to C++ 
        Personal contribution:   6,000 source code lines.

  1995 - 1996           Digital Equipment Co., Moscow branch
                        Software Engineer
  PBS30: powerplant control system. Development under contract with Asea 
  Brown Boveri AG, Germany (ABB). Porting existing source code from VAX 
  to Alpha AXP, from OpenVMS to Digital UNIX, from Pascal to C. 
  Made all the work on automated conversion from VMS Pascal to C.
  Modification of GNU p2c translator to understand VMS Pascal extensions.
  Developed some LIB$ and SYS$ functions of VMS API. Porting of Installation
  and startup scripts.
        Operating systems:       Digital UNIX, OpenVMS
        Number of participants:  60 (In Germany), 14 (local Moscow group)
        Personal contribution:   8,000 source code lines, design documents

  1995:                 Digital Equipment Co., Moscow branch
                        Software Engineer
  Vladimir2: experimental project. Design prototype of object oriented 
  banking system. Common classes and methods. 
        Personal contribution: object oriented extension of existed RDBMS. 

  1995:                 Digital Equipment Co., Moscow branch
                        Software Engineer
  Project with BCFI (Sweden). Development software for ATMs with 
  SmartCard reader. 
        Personal contribution 2,000 source code lines, design documents

  1993 - 1994:          TELECOM-SERVICE (Russian venture)
  Client-Server Database System of Normative Documents.
  Implementation of client part of the system using ZINC framework and 
  own object oriented database (3000 lines). 

  1991 - 1993:          Moscow State Industrial University, 
                        computer science laboratory
  Design and implementation of C-Talk multilingual object-oriented 
  programming environment. BESTA, IBM PC, SUN; UNIX; C++, Assembler.
  Design and implementation of GOODS distributed object-oriented DBMS.
  Developed 70,000 lines of 110,000 lines in total.
  1991 - 1992:          GARANT (Russian venture)
  Design and implementation of Distributed medical information management 
  system. UNIX, C++, LISP, FIFTH (FORTH dialect) - 30000 lines of 75000.

  1990-1991:          	Moscow State Industrial University,
                        Computer science laboratory
  Development of codegenerator for experimental C++ compiler (fcc).	

Beyond B-Trees - Benefiting From Non-Vanilla Indexes, Dr. Dobb's Journal - November 7, 2008

Patricia Tries - A Better Index For Prefix Searches, Dr. Dobb's Journal - June 25, 2008

Developing An Object-Oriented Database For J2ME-Based Embedded Devices, Embedded.com - December 13, 2006

Tackling Memory Allocation In Multicore And Multithreaded Applications, Embedded.com - May 26, 2006

Memory Management & Embedded Databases, Dr. Dobb's Journal - December 1, 2005

Experience of development of static programming language analyzer - Informational Technologies And Programming, MGIU - 2003

Parallel background garbage collection algorithm for object-oriented database systems - System Programming, M., MASI - 1994

Principles of C-Talk object-oriented programming language - System Programming, M., MASI - 1994

C-Talk - software development environment for universities - System Programming, M., MASI - 1993