Oleksandr Novikov                       

C# Developer

I have more than 14 years of experience in programming and application development. Wide experience in developing:

  -  WPF (PRISM, Unity, MVVM) full stack development
  - Financial analysis programs (SQL, PLINQ, Entity framework )
  - Responsive web-design for mobile and tablet devices (HTML5, CSS, Bootstrap)
  - Multilingual learning programs

Phone:      07940 379270
Email:      alex@bestvariant.com
Recent projects :    www.bestvariant.com

Experience

       2015 to present date - Senior Software Developer
TSC Inspection Systems, Milton Keynes, UK   http://www.tscinspectionsystems.com
     ( WPF (PRISM, Unity, MVVM) architectural design and complete software development)

      2014 to 2015 - Front-End Developer
Progressive Solutions Europe Ltd, London, UK   http://www.pseurope.com)
     (development of a responsive web-design for mobile and tablet devices)

       2012 to 2014 - C# Developer
Nebula Data Exchange Ltd t/a Servehorizon London, EC2A 4NE London, UK 
     (development of financial analysis programs )

       2010 to 2012 - Senior C# .Net Developer 
National Academy of Management, 
     (development of multilanguage educational programs)

       2005 to 2008 - Head of the Department of Internal Security
Ministry of Internal Affairs, Ukraine
     (development and implementation of analytical software
to identify organized crime groups and analytical anti-corruption programs )

       2001 to 2005 - Freelancer programmer C++, VB6, VB NET, ASP.NET, C#

Education

    Postgraduate Diploma:   Programming  ( C, C++ , Java, ASP.NET, SQL)
University of Scientific - Technical and Economic Information

    Masters Degree:   Law & Justice 
State University Ukraine

     Bachelors Degree:   Television and radio relay technology
Polytechnic College Communications

Skills

    С#
Experience of about 12 years. I have worked with versions 2.0 - 4.62
I have experience in working with libraries: DeveloperExpress, Telerik, Devart,  Infragistics, Aspose, Nevron and creating my own libraries and elements.

I have practical experience of creating complete cycles of commercial products:
  - Functional and technical specifications
  - Development in groups and individual
  - Automated and manual testing
  - Installation and deployment on a variety of server platforms ( Windows Server 2003 - 2014R2) and various versions of desktop Windows (Windows 95 - 10)   
  -  Creation of automatic update systems 

    WPF / Silverlight
Experience of about 6 years. I have worked with versions 3.0 - 4.62
I know the patterns of MVVM, PRISM Unity. In recent years, WPF has been my main technology for creating user interfaces.

    ASP.MVC / HTML / CSS / Java Script / Jquery / Bootstrap
I have experience of about 6 years. I have diverse experience creating websites for selling and supporting products as well as the development of sites of medium complexity for small firms. Have sufficient experience in the use of development tools for graphic design.

    SQL / LINQ / Entity
I have experience with different drivers, interfaces and protocols to work with various types of databases and data sources of different formats. In recent years, I mostly use Entity framework versions 5 - 7

======  FAQ  -  The current state and  expectations   =========

Reason to leave current employer:  My current company is located in Milton Keynes but my family lives in London and I want to find a job in London.
Current employment status : employed (full time) 
Current Salary :   50k
Required Salary :   50k+
Availability :   3 week
Work Permit Status :   I am a British citizen and a British passport holder
Location:   London - Milton Keynes

=====================================================

The most significant projects:

● During 2015-2016, in TSC Inspection Systems, UK, (http://www.tscinspectionsystems.com)   I was the lead software developer of the  PACE  ACFM® system. 

 This equipment uses a method that introduces an alternating current into the surface of the component to detect surface-breaking cracks. The presence of a crack disturbs the electromagnetic field and the return signal is instantaneously converted by advanced mathematical techniques, so that the operator is alerted to the presence of a defect. 
  Design and manufacturing processes are certified to ISO9001. Product are routinely used in high-integrity industries such as Oil & Gas(BP, BG, Conoco and Shell), Defence, Nuclear, Transport and Mining.

In this project I was responsible for the full stack development:

- Development and coordination of architecture and technical specifications
- Development of the entire code, user interface elements and design
- Testing of automated and manual

Programme Technical Features:
The program is written in C#, has more than 44 000 lines of the original code. The program uses sophisticated multithread algorithms for the analysis of physical processes in real time. 
Technologies used:  C# v4.62, PRISM v6.1, UNITY v6.1, MVVM, NEVRON Chart, Telerik Report, Xaml, Linq.

● During 2014-2015 in Progressive Solutions Europe Ltd, London (http://www.pseurope.com) I participated in the development:

     Sequoia EPR - corporate information system for centralize procurement department and control the entire life cycle of a transaction from purchase order to payment of the invoice and synchronize with accounting software.

In this project I was responsible for the following tasks:

Responsive web-design for mobile and tablet devices 
To solve this task, I used the technology: Bootstrap v3.1, Jquery v2.1, Ace v1.3, CSS3 

Refactoring and code optimization to improve performance 
   The project applied the technology AJAX to real-time activity reports, tracking and tracing statuses and location of orders, vehicles and people. 

● During 2012-2014 in Nebula Data Exchange Ltd, London I developed:
 
The Program for financial analysis and evaluation of the effectiveness of economic policies.
 
In this project I was responsible for the following tasks:

Working with Data Sources
  The data that the program analyses is coming from different sources and in different formats. If you analyze the data over the decades, we have to bring together the data and formats stored on ancient mainframes with magnetic tapes and data from modern cloud storage. To solve this problem we had to develop and apply a variety of drivers to connect to different database types, converters formats and algorithms to convert data to a common format. 

Optimization calculations
  Working with large data heavily overloads computers functionality. To speed up the computation the program uses multithreaded computation for the effective use of multicore processors. Also there is a mechanism for the fragmentation of tasks for the organization of cluster computing.
Billions of records exceed the capacity of the computer's memory and the permitted dimensions of arrays. To overcome these limitations, a special algorithm was created to do the cyclical refinement calculations. First, the program would perform a quick approximate calculations. Those fragments and analysis strategies that allow the most profitable results are calculated with higher accuracy. This method accelerates the results within a hundred times. The analyst can quickly assess whether the strategy gives a positive result, then the successive corrections to create a variant with maximum profit.

Presentation of results
  For clear and easy visualization of results of calculations program contains automated systems for constructing tables, charts, graphs with comments. Output and storage of analysis results is made in a universal format that can be used on different hardware platforms and operating systems. The program used a modular architecture that allows developers to quickly and flexibly add and combine different analysis options.
  The program is written in C#, has more than 50 000 lines of the original code. 

● During 2010-2012 years, in National Academy of Management, Kiev, Ukraine,  I was the lead developer of the  
Foreign Languages Teaching and Learning Program 

   The program is based on fundamentally new methods of learning, built on current scientific research in the psychology of perception and memory. The program uses the most advanced system computer analysis of the speech and pronunciation.

In this project I was responsible for the following tasks:

- Development and coordination of architecture and technical specifications
- Development of the entire code, user interface elements and design
- Testing of automated and manual
- Technical support, automated upgrade and release new versions.

Program Technical Features:
   The program uses a full multi-language interface by utilizing of linguistic resource libraries and vocabularies. This allows the flexibility to switch between interface languages and provide translation from/to any language.  Asynchronous and multi-threaded parallel calculations are used in critical and heavily loaded program modules to accelerate functionality and effective use of computer power.
   The program utilizes the most up to date libraries for synthesis and speech recognition. The program features include an adjustable threshold for quality pronunciation, graphical display of pronunciation spectrum, multiple plays of freely selected audio records. 
   The WPF technology is used for the program design. The technology allows functionality for comprehensive graphic data output and display as well as developing a multi layered information interface. 
    The program contains 22 126 original code lines.

● During 2005-2008, in Ministry of Internal Affairs, Kiev, Ukraine
I was the leader of a group of developers to create specialized programs against crime:

- Program analysis of conflicts of interest and to avoid corruption.

 The program analysed police officers social and family contacts. If the program detects a conflict of interest were appointed depth investigation.
It was revealed several hundred cases when officers investigate crimes of relatives or friends. This led to the concealing of evidence or illegal termination of the investigation.
  Also there were identified several high-ranking officials who commit dishonest procurement of equipment and materials for the police.
Tender procedures were violated in favour of the companies of close friends or relatives.

- The program for tracking organized criminal groups

   The program analysed the cases of repeated or similar crimes committed by criminal groups. Perform statistical analysis of the use of mobile phones in the area of ​​crime. When match of phone numbers was found programme started the analysis of all contacts and locations. In this way, several criminal groups of kidnappers and groups of attackers on cash collectors were arrested.
    The main technical problem in the development of these programs has been collecting data from heterogeneous databases and API. Police database developed long ago and used the old versions of computer languages ​​C, Pascal, SQL and old versions of data communications protocols. Because of the different data rates from remote and heterogeneous sources program to use asynchronous multithreaded architecture.
   Group software developers have been awarded police medals for the development and high efficiency of the proposed new technologies for investigations.  I was awarded the highest medals of police - "Cross of Glory", "Knight of the law" and "Badge of Honor Organized Crime Department".