Freelance Software Developer2012 - PRESENTToptal
- Provided ongoing services as a remote ASP.NET Core/C#/.NET developer for Toptal clients.
- Designed architecture and implemented ASP.NET and Web API applications.
- Designed and implemented data storage. Documented the codebase and technical aspects.
- Implemented automated tests: unit tests, integration tests, functional test, and automated UI tests.
- Explored the most effective technologies and came up with ideas to achieve the client's business requirements and goals.
- Reported status updates regularly to appropriate audiences.
Senior .NET Developer2021 - 2021OVR Health, Inc.
Technologies: ASP.NET Core, .NET Core, C#, Azure Service Bus, Entity Framework Core, Open API, API Integration, Swagger, Stripe API, Twilio API, LuxSci API, Acuity API, Wheel API, Elation API, Welkin API, Azure Functions, Message Bus, Distributed Systems, ASP.NET Core MVC, Azure DevOps, NSwag, Unit Testing, Dependency Injection
- .NET Core backend software development for automating VR therapy (with a mission to revolutionize mental health and wellness by improving access to personalized services through technology).
- Implementing microservices participating in the automated distributed platform.
- Implemented several 3rd party systems API integrations: Acuity, Welkin, Wheel, Stripe, Amplitude, Elation, LuxSci, Twilio, etc.
- Participated in agile team discussions, code reviews, and distributed (UK/US) cross team meetings.
- Implemented auto-generation of API clients for .NET microservices.
- Assisted in establishing CI/CD pipelines on DevOps Azure.
Senior .NET Developer2020 - 2020Callahan Software
Technologies: Visual Studio, API Design, Software Architecture, Stripe Connect API, ASP.NET Web API, .NET, .NET Core, Entity Framework Core, Swagger, Stripe API, ASP.NET Core, C#
- Integrated online payments via Stripe API with connected accounts to the Child Care Seer platform.
- Implemented finance-related API endpoints logic for online and offline payments for the Child Care Seer platform.
- Implemented handling the Stripe webhook event callbacks for asynchronous payment flows and managing connected Stripe accounts for the platform clients.
- Configured and maintained Stripe accounts for development, testing, and production environments.
- Participated in business analysis team discussions, code reviews, and common meetings for the agile software development process.
- Migrated codebase to .NET Core 3.0, assisted in establishing CI/CD pipelines for back-end code.
Senior .NET Developer2019 - 2019Blacc Spot Media
Technologies: Visual Studio, ASP.NET Web API, .NET, C#, Zendesk API, Twilio API, SendGrid API, Razor, AutoMapper, Entity Framework Core, Swagger, .NET Core, ASP.NET Core
- Developed a .NET Core application back end for the Cystic Fibrosis Foundation, a 501 nonprofit organization in the United States.
- Designed and implemented API endpoints using .NET Core for React UI app.
- Addressed existing code issues, performed the code refactoring and improvements.
Senior .NET Developer2018 - 2019Dunnhumby
Technologies: Visual Studio, Software Architecture, GitLab CI/CD, ASP.NET Core 2, ASP.NET Web API, .NET, C#, Single Sign-on (SSO), Google Apps Directory Sync (GADS), JSON Web Tokens (JWT), Google Kubernetes Engine (GKE), GitLab, PostgreSQL, xUnit, MediatR, Entity Framework Core, ASP.NET Core, .NET Core
- Ramped up .NET expertise in Berlin's development center and mentor Dunnhumby full-timers on the server side aspects of .NET Core application development.
- Designed architecture for server-side APIs with a clean architecture approach.
- Integrated with company hybrid authentication and authorization for AD SSO/Google Directory API.
- Designed ASP.NET Core integration tests with xUnit and WebApplicationFactory.
- Developed server-side microservice APIs with external and cross-component dependencies in a Kubernetes environment.
Full-stack ASP.NET Core Developer2018 - 2018Startup (via Toptal)
- Implemented a dashboard web application from scratch based on ASP.NET Core 2.1 with Razor views and including dependency injection (DI) and Entity Framework Core, identity user, role, and claims management.
- Used SB Admin 2 template for the admin panel with Ajax callback and modal popups for CRUD operations over the entities.
- Implemented ASP.NET Core View Components to display common UI parts with the possibility to update data via jQuery unobtrusive Ajax.
- Configured code-first EF Core 2.1 migrations and automated the database recreation process, which updates schema and populates mandatory and sample data for manual smoke tests on the UI.
- Implemented 2FA logic to use TOTP authenticator apps from Google and Microsoft for iOS, Android, and Windows Phone devices.
Senior Full-stack Developer2018 - 2018NKR Managing General Agent (via Toptal)
- Designed an ASP.NET Core application architecture for a digital claims management software application that leverages digital data from connected vehicles to automate property and casualty claims processes.
- Implemented model view controller (MVC) architecture with ASP.NET Core Razor views, dependency injection (DI) and Entity Framework (EF Core) according to UI layouts and business requirements.
- Implemented schema with a code-first Entity Framework core for SQL Server in AWS.
- Implemented a console for data emulation, test damage calculation, and application configuration.
- Implemented real-time internal application notifications based on SignalR.
- Implemented notifying external parties via SMS, email, and API. Integrated Google Maps geolocation API.
- Integrated NADA (National Automobile Dealers Association) API.
- Implemented asynchronous update-able ASP.NET Core view components.
Full-stack ASP.NET MVC Developer2018 - 2018Kalon Creative
- Updated ASP.NET Razor views according to new InVision mockups.
- Adjusted ASP.NET views to be responsive for mobile view as well as for other screen sizes using Bootstrap.
- Optimized back-end logic to avoid performance issues and comply with the new UX approach on the front-end.
- Regenerated POT/PO internationalization files for string resources used for ASP.NET MVC application.
- Participated in code reviews of the pool requests for the branches before merging them to QA and Production environments.
Senior .NET Developer2017 - 2018Tusmor, Ltd. (via Toptal)
- Designed and implemented Bank Engine API using ASP.NET Core Web API.
- Configured continuous integration tasks to build and deploy API components to different Azure environments.
- Designed corresponding database schema for Azure SQL Server.
- Implemented unit tests using an in-memory database approach as well as integration tests for API endpoints.
- Configured API Explorer using Swagger UI via Swashbuckle package.
- Designed and implemented a simple React/Redux based UI for interacting with the API.
Senior .NET Developer2017 - 2017Ascension Data and Analytics (via Toptal)
Technologies: API Design, Software Architecture, ASP.NET Web API, ASP.NET MVC, .NET, Jira, TFS, Visual Studio, Git, Core, SQL, AWS S3, Azure, XML, JSON, C#, Web API, Model View Controller (MVC), ASP.NET Core 2, .NET Core
- Developed the workflow to interact with an external OCR and machine learning system via API.
- Designed and implemented a background service for maintaining the queue and message pooling.
- Developed plugin-based architecture for processing queue messages.
- Continuous integration and deployment of the system modules and components .
- Implemented an API for UI to manage information in the mortgage servicing and capital markets space.
.NET Full-stack Developer2016 - 2016Eurotech Global Sports AG
- Developed the server and client-side logic for the accreditation module of IFES system for FIFA events.
- Secured the components with the appropriate permissions. Implemented the bulk update logic.
- Implemented the export mechanism for the security data.
- Participated in the design sessions to discuss and plan the logic implementation.
Full-stack Web Developer2016 - 2016Fitness Startup (via Toptal)
- Developed a web application using ASP.NET MVC and Web API with an AngularJS-based client side.
- Automated live streaming using Azure Media Services.
- Built website content indexing and search using Azure Search Services.
- Processed background tasks by events-driven Azure Web Jobs.
- Developed back-end features using dependency injection principle for MVC controllers, services, and repositories.
- Conducted unit testing using the mocks and end-to-end testing of exposed API.
- Documented the API with Swashbuckle (.NET port of Swagger UI).
Lead/Senior Software Engineer (Telecommunication)2014 - 2015MetTel
- Implemented a Knockout-based user interface for several modules of the control management panel.
- Developed a micro framework for requesting information from Solr API and safe parsing of JSON data in C#.
- Implemented Web API services and corresponding business logic.
- Created and maintained unit tests for verification of Web API service controller actions.
Senior C# Developer2013 - 2014American Mortgage Consultants, Inc. (via Toptal)
Technologies: Visual Studio, API Design, ASP.NET Web API, OCR, SQL, HTML, JSON, Web API, ASP.NET MVC, .NET, C#
- Designed the software system architecture for automated process of the real estate valuation.
- Developed several components for the automatic recognition and processing of scanned forms.
- Implemented page detection and field value extraction business logic for scanned mortgage documents.
- Created and maintained unit tests covering the application business logic.
- Implemented UI for interacting with the OCR system via API services. Implemented a self-documented JSON-based Web API.
.NET Developer (Remote)2012 - 20132can
Technologies: Visual Studio, ASP.NET Web API, .NET, Quartz.NET, NUnit, NHibernate, Castle Windsor, SQL, jQuery, CSS, HTML, Razor, ASP.NET MVC, C#, POS, Prepaid Debit Cards, Credit Cards, ISO 8583
- Performed full-stack software development for the company's mobile card acquisition service, which is the Russian equivalent of the US Square service.
- Developed Razor-based user interface for the merchant sites.
- Developed in C# the server side business logic, data access code, and unit tests.
- Implemented parsing packages using OpenIso8583.Net which is a .NET message builder and parser for ISO 8583 financial messages.
- Worked on customizing card acquisition service UI for specific banks.
Team Lead, .NET Developer2011 - 2012Aspose
Technologies: Visual Studio, Software Architecture, ASP.NET Web API, .NET, OpenXML, JSON, Windows Communication Framework (WCF), Aspose Components, C#, jQuery, ASP.NET MVC
- Worked full-time as a remote team leader for the GroupDocs Comparison project for GroupDocs.com (part of the Aspose family).
- Developed an ASP.NET MVC-based web application for comparing office documents.
- Developed and maintained the server side logic for comparing office documents.
- Did R&D for finding suitable comparison algorithms like Levenshtein distance, HTML Diff implementation, etc.
- Created and maintained the unit tests, as well as the documentation.
Senior .NET Developer, Tech Lead, Project Manager2008 - 2011Exigen Services
Technologies: CSS, Visual Studio, ASP.NET Web API, ASP.NET MVC, .NET, DataFlux, Microsoft SQL Server, Oracle, HTML, XML/XSLT, Windows Services, Windows Communication Framework (WCF), ASP.NET, C#
- Led technical projects for Total Objects, a company involved in insurance brokering and reinsurance software systems.
- Used .NET (VB.NET, WinForms) and MS SQL Server technologies, as well as the Agile (Scrum) framework throughout the development process.
- Developed websites in the Scrum framework using .NET, Oracle, MS SQL Server, and DataFlux data management technologies.
- Worked as a senior .NET developer for T-Mobile Netherlands, one of the largest mobile telephone operators in the country.
- Implemented the Waterfall development paradigm using C#, WinForms, ASP.NET (WebForms), WCF, XML/XSLT, and Oracle technologies.
- Promoted to project manager, overseeing several projects for the company.
Software .NET Developer (Remote)2006 - 2008SharpStyle Labs
Technologies: Visual Studio, ASP.NET MVC, .NET, Microsoft SQL Server, Windows Communication Framework (WCF), ASP.NET, Obfuscation, Visual Studio Extensibility, C#, Abstract Syntax Trees (AST), Parsers, ANTLR, ActionScript
- Created SharpStyle Neutron, a piece of software that allows developers to write ActionScript code from within Visual Studio 2005 using Visual Studio SDK.
- Participated in a ReviewBasics project with ASP.NET (WebForms) conducting collaborative market research.
- Developed video conversion web services using the Turbine Video Conversion SDK.
- Created and maintained the unit tests, as well as the documentation.
PhD Student2006 - 2006Saint-Petersburg State University
Technologies: WinForms, Windows GDI+, C#, 2D Modeling, 3D Modeling
- Developed the software system for a PhD paper on structural geology titled "Automation of Cross Section Building through the Thrust Systems Foreland."
- Visualized the different type of geological data.
- Performed spline geometric calculations automation.
Team Lead, .NET Developer2005 - 2005Bridge-Quest Labs
- Led projects involving the customization of web services.
- Developed .NET software using ASP Classic, ASP.NET (WebForms), HTA, and .NET WinForms.
- Building and maintaining the online learning platform.
Software .NET Developer2004 - 2005StarSoft Development Labs
- Worked as a member of the eXP (eXtreme Programming) team.
- Participated in several ASP.NET (WebForms) projects for client intranets.
- Created and maintained unit tests, and the technical documentation.
Software .NET Developer2003 - 2004STEP Technologies
Technologies: NUnit, Microsoft Access, Microsoft SQL Server, XCeedComponents, NetAdvantageTM 2003, WinForms, C#
- Helped develop a client-server system for handling automated document translation, incorporating interconnected WinForms and Web Parts.
- Unit testing with a test first development approach (also known as TDD).
- Implemented in C# the translation package containers receiving and sending logic.
Geological Engineer, Software Developer2000 - 2001Lengiprotrans OJSC
Technologies: Microsoft Access, Excel VBA, Visual Basic .NET (VB.NET)
- Automated all scientific MS Excel-based calculations.
- Performed calculations for statistics, diagrams of load, etc.
- Built and maintained VBA macro collection to perform common engineering calculations in the department.