Software Development Engineer

Skype: andrewbezzub
Public profiles: LinkedIn, StackOverflow

Summary

Technical Environment

.NET:
.NET Framework (2.0, 3.0, 3.5, 4.0), C#, ADO.NET, Data Services, Threading, TPL, LINQ, WCF, Windows Services, Reflections
Cloud:
Windows Azure
Web:
ASP.NET, Web API, Web Services, REST, JavaScript, Ajax, JQuery, Ext JS, CSS, HTML, ASP
Databases:
No SQL (Azure storage), MS SQL Server, Oracle, Sybase, T-SQL, PL/SQL
Other:
XML, XSLT, XSD, Parser generators (JavaCC)
Development process:
Agile, TDD, Unit tests, Version control (Git, TFS, CVS, SVN, VSS, Perforce), Code conventions (StyleCop/FxCop)

Professional Experience

Microsoft Senior Software Development Engineer August 2011 - Present

Environment: C#, .NET, Windows Azure, TPL, ASP.NET Web API, REST, TDD/Unit tests

I work in Microsoft Mediaroom team on development of next generation TV platform.

FrontRange Solutions Software Development Engineer February 2011 - August 2011

Environment: C#, .NET, ASP.NET, T-SQL, Ext JS, Javascript

I worked on design and development of SaaS web application for IT service management. It is a highly customizable CMS system that allows to track all tasks of IT department and handle interaction with clients.

Akvelon Software Development Engineer September 2010 - February 2011

Environment: C#, .NET 4.0, ASP.NET, WPF, Windows Azure, Oracle

I worked on desktop application with rich graphical interface which provided an ability to make a plan of terminal yard with objects (buildings, containers, docks, rail tracks, etc.). I was responsible for design and implementation of the application including:

  • Designed and supervised implementation of the domain model which supported copy/paste, undo/redo operations over the objects.
  • Designed and supervised implementation of the collision detection functionality (during drag & drop of objects on the yard), efficiently handled more than 10k of objects.
  • Designed and implemented database schema based on the analysis of legacy versions of the product.
  • Supervised two junior team members, performed code review.

The other project I worked on was a trial account request system:

  • Designed and implemented presentation and business layers of the Windows Azure web application.
Direct EDI, Inc. Senior Software Developer July 2009 - August 2010

Environment: C#, .NET 3.5, ASP.NET, ADO.NET, Windows Services, WWF, WinForms, Web Services, WCF, Javascript, JQuery, XML, XSLT, XSD, T-SQL, ASP, VB

Designed and developed SaaS and enterprise products for electronic data interchange provider.

I started in a team that worked on new version of Web EDI system - web interface that allows to send/receive various electronic documents:

  • Designed and implemented part of the business object infrastructure.
  • Implemented several UI components (e.g. shipment document quick complete wizard).
  • Designed and implemented custom packing slips PDF documents generator.
  • Implemented first version of the FAQ system which reduced number of phone calls to the support department.
  • Also made many fixes and tweaks to the existing system.

After our team released the first version of the new WebEDI system I joined another team which worked on enterprise products. I took part in development and troubleshooting of other products:

  • Implemented importing of vendors' contacts (both back-end and UI) for Community Insight product (provides an overview of the vendors EDI enablement process).
  • Added transactions support to the flat files processing module which allowed to serve new customers. Added features and fixed issues in EDI translator and unified hosted translator.
  • Implemented automatic account setup for the unified hosted translator system.
  • Designed and implemented automatic payments expiration for the pay-per-use payment plan, implemented payments history UI for the pay-per-use payment plan.
  • Added features and fixed issues in vendors onboarding portals engine; implemented several new portals.
  • Performed refactoring which reduced number of error transactions and time required for troubleshooting.

Also I performed a role of team leader on rotational basis and:

  • Held daily meetings.
  • Was responsible for full cycle of tasks/features development from estimation to delivery.
Software Development Engineer, Contractor October 2008 - July 2009

Environment: C#, .NET 3.5, LINQ, ASP.NET, WCF, Web Services, WinForms, XML, XSD

Worked on a framework for development of web and desktop applications.

  • Designed and implemented actions system - engine capable of executing user-defined actions (commands) with support of built-in and composite actions.
  • Designed and implemented utilities for strongly-typed work with LINQ to XML elements which then were used in several components.
  • Designed and implemented task pool service with a scheduler feature which was reused on several projects.
  • Implemented both Web (ASP.NET) and WinForms UI controls for framework presentation layer.

I worked on Microsoft SQL Server Migration Assistant product family. SSMA is a tool to automate migration of databases from different platforms (Sybase, Oracle, MS Access) to MS SQL Server. I participated in several releases of Oracle and Sybase versions of SSMA.

Software Development Engineer June 2006 - September 2008

Environment: C#, .NET 2.0, ADO.NET, XML, JavaCC

  • Analyzed the requirements, designed and implemented many SQL statement conversion issues (Oracle and Sybase code to T-SQL code structures).
  • Implemented new features for assessment report and statistics collector.
  • Implemented functionality to upgrade old versions of SSMA project files.
  • Fixed issues in many components (parser, data collector, assessment report, type system, database metadata synchronizer, data migrator).

Designed and implemented features for Tester subsystem (analyses quality of migration by comparing original database to the database created with the tool):

  • Test case object and logic of its interaction with UI test case creation wizard.
  • Analyzer of database objects' dependencies which returns all database objects used by specified stored procedure, function or view.
  • SQL code generators which were used to compose queries for data comparison.
  • Participated in design and development of SQL Server .NET extension assembly which was used to query Oracle or Sybase server directly from MS SQL Server.
Software Development Engineer in Test February 2006 - June 2006

Environment: C#, .NET 2.0, ADO.NET, XML

Mostly I worked on automated regression tests using internal framework. Tests were implemented with .NET Framework and C#:

  • Implemented regression tests for several product's components.
  • Implemented common test utilities to reuse in the tests, these utilities were used by other team members.
  • Made code coverage reports using internal tool.
QArea Inc QA Engineer (part-time) June 2004 - February 2006

Environment: C++, Perl

Tested Salford Systems's data mining products.

  • Test cases design.
  • Manual testing.
  • Implemented several programs to automate testing of the product's engine in C++ and Perl.

Education

M.S. Computer Science
B.S. Applied Mathematics Kharkiv National University of Radio Electronics, Ukraine