Alexander Sokolov
Verified Expert in Engineering
Software Developer
Dnipro, Dnipropetrovsk Oblast, Ukraine
Toptal member since June 14, 2018
Alexander is a veteran developer with more than eight years of experience with C#, Sitecore, .NET Core, and Azure. He's an excellent overall developer, but where he really shines is in his code quality, application of various development practices, and building solid architecture. Alexander enjoys taking on new challenges and learning new approaches.
Portfolio
Experience
Availability
Preferred Environment
Git, Visual Studio Code (VS Code), Visual Studio, Windows
The most amazing...
...project I've developed is a competitor for Google Earth that’s written on C# and WPF 3D engine with satellite and height tiles where you can “virtually” fly ove
Work Experience
Senior .NET Developer
Ravnur, Inc.
- Developed a video transcoding module which is able to transcode videos into different formats using Azure AMS or FFmpeg; create subtitles using Azure Indexing.
- Created a universal Windows app which integrates into the current portal version; used Azure AMS for transcoding and key delivery, authorization via ACS, and Bento4 for DRM encryption.
- Migrated an Azure SDK for media services to .NET Standard 2.0 (in my GitHub repository).
- Developed various pages with Vue.js which utilized our REST API.
- Improved the performance of the transcoding in current portal version.
- Set up continuous integration using TeamCity.
Senior .NET Developer
Cantaloupe Systems
- Integrated an existing solution with an Elevio service.
- Extended a complex price calculation module with new rules.
- Designed and programmed various pages using MVVM (Knockout.js and TypeScript).
- Contributed to a SQL database design.
- Wrote integration/browser tests.
Senior .NET Developer
Sitecore
- Migrated an email experience manager's UI from an old framework based on Web Forms to ASP.NET Web API controllers; used an internal SPEAK framework, jQuery, and Knockout.js.
- Added support for the above project via a new XDB Analytics API released in Sitecore 7.5; developed the code for storing contacts and dispatching the data to MongoDB.
- Refactored, for the email experience manager, a dispatch module to redistribute the load between dedicated Sitecore servers for email sending.
- Redesigned a list manager's contact importing pipeline for multi-threaded support.
- Added support for the list manager's Azure Search provider.
- Migrated a CI system so that it would use a NuGet package approach in a module delivery; for the list manager project.
- Collaborated in various agile practices like pair programming, mob programming, and TDD.
- Released hot fixes on demand.
- Introduced support for Solr Cloud in query providers.
- Extended LINQ to Solr queries provider with a new functionality.
- Supervised new developers in various aspects of the project lifecycle.
.NET Developer
Robosoft | City Control Center Project
- Analyzed customers' business processes.
- Designed and created a new WinForms client-server subsystem according to the needs of those business processes.
- Solved performances issues with building big reports via refactoring and implementing multithreading patterns.
- Developed an API based on WCF for digital boards at bus stops in order to show bus movement in real time.
- Created a MySQL database design.
.NET Developer
Robosoft | GIS API Library Project
- Designed and developed an internal converter that converts from and to third-party map formats.
- Implemented a module for finding a route between two points that was based on the A* search algorithm.
- Created a new binary format for storing maps.
- Added support for viewing maps stored on a remote server.
.NET Developer
Robosoft | Navis Project
- Implemented a new custom access rights system based on user roles.
- Created a background report building module, based on DevExpress controls, with scheduling, email sending and so on.
- Designed and implemented a real-time analytical system for sensor values and GPS coordinates which also used TPL to boost performance.
- Created prototypes of mobile and web clients based on ASP.NET MVC, SignalR, and WCF.
- Continuously improved on the client and server side performance by refactoring which created multi-thread data processing workflows.
- Supported engineering and discovered memory leaks in the production servers.
.NET Developer
Optisoft
- Implemented a system for replaying user actions.
- Covered reports with unit tests.
- Migrated a database from MS Access to MS SQL.
- Eliminated performance bottlenecks in the program.
Experience
Ravnur DRM Player
Ravnur Video Portal
http://www.ravnur.comCantaloupe Systems SaaS Portal
https://cantaloupesys.comSitecore | Email Experience Manager
Sitecore | List Manager
Sitecore | Search and indexing
Navis
Navis 2 City
GIS API Library
Education
Master's Degree in Computer Science
Oles Honchar Dnipro National University - Dnipro, Ukraine
Skills
Libraries/APIs
Azure Media Services API, Azure Blob Storage API, Task Parallel Library (TPL), TPL, Entity Framework, Windows Forms (WinForms), Vue, FFmpeg, SignalR, ArcGIS, RequireJS, Sinon.JS, NSubstitute, Moq, Vue 2, jQuery, Plivo
Tools
Git, Subversion, TFS, RabbitMQ, Visual Studio, Microsoft Unit Tests, WPF 3D, xUnit, Microsoft Access, Kestrel, TeamCity, Ninject, ANTS Performance Profiler, ANTS Memory Profiler, Azure Search, Mocha
Languages
C#, JavaScript, SQL, TypeScript
Frameworks
.NET 4, .NET Core, ASP.NET Core 2, ASP.NET, Windows Presentation Foundation (WPF), .NET, Nancy, ASP.NET MVC, SpecFlow, NUnit, Knockout (Knockout.js)
Paradigms
Object-oriented Design (OOD), Dependency Injection, Test-driven Development (TDD), Behavior-driven Development (BDD)
Platforms
Visual Studio 2017, Windows, Windows Phone 7, Azure, Universal Windows Platform (UWP), Twilio, Visual Studio Code (VS Code)
Storage
Azure Table Storage, Elasticsearch, MySQL, Microsoft SQL Server, MongoDB
Other
Domain-driven Design (DDD), Sitecore, Unit, Multithreading, DevExpress, Windows Communication Foundation (WCF)
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring