Curriculum Vitae · Dr. Dmitry Alexander Kazakov
|
|
Post graduation course | 1988-1991 | Leningrad Electrical Institute by name V. I. Ulyanov
(Lenin), Leningrad, USSR Degree obtained: Ph.D. on Computer Science Thesis: Development of a Graph Scheme based fuzzy learning system |
University | 1985-1988 | Leningrad State University, Leningrad, USSR Major subjects passed: Graph theory, Computational geometry, Functional analysis, Finite element analysis, Mathematical analysis, Higher algebra, Theory of probability, Differential equations, Mathematical methods of physics, Complex valued function theory |
Higher technical college | 1979-1985 | Leningrad Electrical Institute by name V. I. Ulyanov
(Lenin), Leningrad, USSR Degree obtained: M.S. in Applied Mathematics Graduation work: Implementation of a modeling system of underwater sound propagation (PL/1 and FORTRAN under IBM 370 / MVS). Major subjects passed: Linear algebra, Mathematical analysis, Numerical methods, Formal grammar theory, Mathematical logic, CAD/CAM, Computer hardware basis, Operating systems, System programming, Computer graphics, Artificial intelligence methods |
Last school attended | 1977-1979 | Secondary School #190, Leningrad, USSR |
School | 1973-1977 | Primary Art School #2, Leningrad, USSR Subjects passed: Drawing, Painting, Sculpture, Composition, History of Art |
TRIOVEGA GmbH Kaninchenborn 31 |
2023-now Solution architect Main job functions: System architecture and software design. Embedded real-time middleware (Ada 2005, Windows, Linux, VxWorks). |
cbb software GmbH 1 Charlottenstr. |
1997-2023 Software architect / Technical lead Main job functions: System architecture and software design. Embedded portable software platform for intelligent sensor and controlling devices (Ada 95); LabMap, a software bus system for distributed automation and control (C++). Development of hardware drivers (C++, Windows NT); Software for roller dynamometers (C, C++, LabWindows / CVI); 3D simulation software (C++, MFC, OpenGL); OOA/OOD with Rational Rose (Booch); management of LAN of IBM PCs under Linux and Windows NT / 95; Image compression and transmission software (Ada 95, Windows NT) |
Fachhochschule Luebeck 3 Stephensonstr. |
1995-1997 Software engineer Main job functions: Hardware drivers; dialogue software for a roller dynamometer under Windows NT. Management of labor LAN of Sun/Solaris, IBM PCs / Linux (UNIX clone) and IBM PCs / Windows NT / 95 |
Parsytec-Petersburg Ltd. 5 Prof. Popov |
1993-1994 Senior software engineer Main job functions: Leader of the programmers group which adapted Parix (a parallel operating environment for network of INMOS T805 transputers) for IBM PC host running MS-DOS (C++). Management of organization LAN of Suns / SunOS, IBM PCs / Linux and IBM PCs / MS-DOS. |
Leningrad Electrical Institute by name V.
I. Ulyanov (Lenin) (now St. Petersburg Electrical University) 5 Prof. Popov |
1991-1993 Software engineer Main job functions: Member of the artificial intelligence research group of the institute department of applied mathematics and software. System management of VAX compatible computer under VAX / VMS). Adaptation of an open key cryptographic system for UNIX System V (C and Assembler for Motorola MC68030). 1988-1991 Postgraduate student Main job functions: Studying postgraduate course. My thesis was devoted to the development of a Graph Scheme based fuzzy learning system. This system used graph schemes for representation of decision trees and Zadeh's fuzzy logic and theory of possibility for machine learning and pattern recognition. It was implemented in Ada programming language under VAX / VMS. |
Institute of Remote Sensing Methods for Geology 6 Birghevoy proezd |
1985-1988 Research associate Main job functions: Developing and implementation of algorithms for image processing (ortho-photo transforming of air photos, image segmentation by pyramid split-and-merge and region growing methods, edge detection); syntax analysis and infix expression interpretation (MACRO-11 assembler and FORTRAN IV under RSX-11M operating system for PDP-11/40 compatible computers). This time I studied higher mathematics in the Leningrad State University that I graduated in 1988. |
Programming languages | Ada 83/95, C/C++, Fortran IV, Pascal, PL/1 |
Operating systems | Linux, RSX-11M, Solaris, SunOS, VMS, Windows NT/2000/XP/Server 2003 |
Tools | LabWindows / CVI, MFC, Rational Rose, WinDK, GTK+, GtkAda, ODBC, GNADE |
Scientific interests | Process automation middleware, Fuzzy set theory, Artificial intelligence, Pattern recognition, Syntax analysis, Compiler construction |
Publications | About 15 articles in Russian and 20 articles in English |
Project | Role | Platform | Language |
Porting of a linear equation solving library for sparse matrices | Developer | IBM OS/360 | FORTRAN |
Simulation of underwater sound propagation in stratified water | Developer | IBM OS/360 | FORTRAN and PL/1 |
Image processing library. The library included ortho-photo transformation and various adaptive segmentation and line detection methods | Developer | RSX-11M | FORTRAN and Macro-11 |
A preprocessor and interpreter based on Ada syntax | Developer | RSX-11M | Macro-11 |
Porting of the PGP Open Key software to VMS and UNIX System V (for Motorola 68K) | Developer | VMS and Unix SysV | C, Assembler 68K, Macro-11 |
Modem communication software for a banking system (uucico based) | Developer | Unix SysV | C |
Fuzzy set based machine learning system | Developer | VMS | Ada 83 |
Pattern recognition and learning system | Postgraduate student | MS-DOS | Turbo Pascal |
Parallel computing environment system for Inmos T805 network (MS-DOS server for Parix) | Developer | Parix, MS-DOS | C/C++ |
Image compression software, research project in FH-Luebeck | Architect, developer | Windows NT | Ada 95 |
Driver's aid software ErogoDrive 2002 (3D simulation). The software is a commercial product of cbb software GmbH deployed world-wide. | Architect, team leader, consultant | Windows 95/NT | C++, OpenGL |
Transputer link drivers | Developer | Windows 3.11/NT 4.0 | C++ |
Watchdog driver | Developer | Windows NT | C++ |
Man-machine interface for DAEWOO dynamometer. The software was successfully deployed by the customer. | Team leader | Windows NT | C, LabWindows/CVI |
Wave form visualization software ("soft" real-time). The software is now a part of a commercial product by cbb software GmbH. | Architect, team leader | Windows NT | C++ |
Software for programming AK clients (AK is a serial protocol used in automotive industry). The software is a commercial product used in hardware integration, especially for roller dynamometer automation | Architect, developer | Windows NT | C++ |
Software for programming distributed systems controlling roller dynamometers, pilot project. The results of the project were used as the basis for the commercial project LabMap by cbb software GmbH | Architect, developer | Windows NT | C++ |
Software for spray gun automated laser photo-analyzer, a production quality control system. The software was successfully deployed by the customer | Project manager, Architect | Windows NT | Ada 95 |
LabMap core (a software bus for distributed automation and control middleware). The software is one of two major commercial products of cbb software GmbH. It is widely used for hardware integration in automotive, production quality control, medical care and educational fields. | Architect, lead developer | Windows (Win32) | C++ |
LabMap drivers for various external devices. The software a part of LabMap by cbb software GmbH | Architect, lead developer | Windows (Win32) | C++ |
Library for dealing with measurement units. The software is now a part of a commercial product by cbb software GmbH. | Architect, developer | Windows (Win32) | C++ |
Basic Class C++ Library. Standard OO components, inter-task synchronization objects etc. The software is now used in cbb software as the standard component library for C++ development | Architect, lead developer | Windows (Win32) | C++ |
Visual rain-detection car sensor (a research project). Fully functional software prototype was delivered. | Architect, developer | Windows (Win32) | Ada 95 |
Car auto-pilot and guidance system (a research project) | Consultant | Windows | C++ |
Embedded portable software platform for intelligent sensor and controlling devices (a research project) | Architect | Independent | Ada 95 |
Middleware study. Measurements of quality of service, memory and CPU load, network traffic. Comparison of unicast and multicast data distribution protocols | Consultant | Windows Server 2003 | C++ |
A front end for the Perforce version control system for handling large interdependent projects using views | Architect | Windows, Linux | Delphi, Ada 95 |
An embedded real-time middleware for distributed automation and control. | Architect, lead developer | Windows, Linux, VxWorks | Ada 2005 |
Project | Role | Home | Platform | Language |
Pattern matching software (SNOBOL-4 and BNF like) | Owner | http://www.dmitry-kazakov.de/match/match.htm | Independent | C |
Ada industrial control widget library. Gauges, meters, clocks, oscilloscope. Based on GTK Cairo. | Owner | http://www.dmitry-kazakov.de/ada/aicwl.htm | Independent | Ada 2005 |
Software for dealing with dimensioned values. Unit checks are made at run-time, if not optimized out by the compiler. SI and irregular measurement units are supported. Shifted units like degrees Celsius are supported too. Conversions from and back to strings are provided for all various irregular units. | Owner | http://www.dmitry-kazakov.de/ada/units.htm | Independent | Ada 95 |
An implementation of tables indexed by strings. The binary search is used for names of known length. It is also possible to search a table for names of unknown length, i.e. to parse a string using some table. Table elements can be of any private type. Key- insensitive tables are supported. | Owner | http://www.dmitry-kazakov.de/ada/tables.htm | Independent | Ada 95 |
An implementation of interval arithmetic for Ada. It includes arithmetic and relational operations | Owner | http://www.dmitry-kazakov.de/ada/intervals.htm | Independent | Ada 95 |
A library for dealing with fuzzy sets. It provides implementations of confidence factors with the operations not, and, or, xor, +, and *, classical fuzzy sets with the set-theoretic operations and the operations of the possibility theory, intuitionistic fuzzy sets with the operations on them, fuzzy logic based on the intuitionistic fuzzy sets and the possibility theory; fuzzy numbers, both integer and floating-point with conventional arithmetical operations, and linguistic variables and sets of linguistic variables with operations on them. String-oriented I/O is supported | Owner | http://www.dmitry-kazakov.de/ada/fuzzy.htm | Independent | Ada 95 |
A standard OO component library that provides implementations of smart pointers for automatically collected objects (using reference counting), object persistence, unbounded and bounded arrays of smart pointers, generic unbounded arrays of private objects and plain pointers, generic sets, maps, stacks, and storage pools. It also includes table management, string editing, and infix expression parsing tools. Object persistence is implemented using ODBC bindings to the data base. Network protocols HTTP, MQTT, ModBus. Arbitrary precision integer and rational number. | Owner | http://www.dmitry-kazakov.de/ada/components.htm | Independent | Ada 95 |
A library for text processing. Provides I/O facilities for integer, floating- point, Roman numbers, and strings. Both input and output subroutines support string pointer for consequent stream processing. The output can be aligned in a fixed size field with padding. Numeric input can be checked against expected values range to be either saturated or to raise an exception. For floating-point output either relative or absolute output precision can be specified. | Owner | http://www.dmitry-kazakov.de/ada/strings_edit.htm | Independent | Ada 95 |