Ivaylo Dimov, Developer in Sofia, Bulgaria
Ivaylo is available for hire
Hire Ivaylo

Ivaylo Dimov

Verified Expert  in Engineering

Solution Architect and Software Developer

Location
Sofia, Bulgaria
Toptal Member Since
April 3, 2018

Ivaylo is a solution architect and software engineer with 18 years of experience. He specializes in Azure Cloud, .NET stack, APIs, messaging, serverless computing, and front-end frameworks like Angular and React. He's built highly scalable, cloud-based B2B systems and SaaS platforms for various sectors, including aviation, online banking, NGOs, internet services, online gambling, direct selling, and medicine. Ivaylo implements best practices and efficiency in everything he does.

Portfolio

Onsite-Research Ltd
C#, Angular, Azure Functions, SQL, Entity Framework, Azure SQL Databases...
Connect Plus Information Technology Co LLC
.NET, C#, .NET Core, REST APIs, RabbitMQ, Elastic, Redis Cache, PostgreSQL
Aerosight
Agile, Angular, Azure, Azure SQL, Azure PaaS, Cloud Architecture, .NET...

Experience

Availability

Full-time

Preferred Environment

Windows 10, SQL Server Management Studio (SSMS), Git, Visual Studio Code (VS Code), Azure PaaS, Azure DevOps, Jira, Microsoft Visual Studio

The most amazing...

...thing I've made is a highly parallelized algorithm hosted on Azure Functions that extracts flight parameter values and detects events from aircraft black boxes.

Work Experience

Full-stack Developer

2021 - 2022
Onsite-Research Ltd
  • Designed and implemented a system for automating local data collection processes to reduce the day-to-day workload of the operations team and hundreds of market researchers.
  • Communicated with the project manager, product owner, and end users in regular sessions to validate the project's scope, priorities, and software design.
  • Developed features in ASP.NET Core RESTful API, Azure Functions, and Angular apps.
  • Consolidated the codebase between the API and Azure Function repos in a single repo with reusable libraries to significantly reduce the codebase and improve maintainability.
Technologies: C#, Angular, Azure Functions, SQL, Entity Framework, Azure SQL Databases, Blob Storage, Agile, Unit Testing, Azure

Lead Back-end Developer and Architect

2019 - 2021
Connect Plus Information Technology Co LLC
  • Involved in the software development process from requirements refinement to delivery of the MVP of tasks and inventory management system for an ISP used by over 1,000 employees.
  • Built highly available event-driven microservice architecture based on RabbitMQ.
  • Designed and developed key parts of an API gateway and nine microservices based on ASP.NET Core, backed by PostgreSQL and deployed in a Kubernetes cluster.
  • Designed and developed a microframework deployed in NuGet feed for messaging, DDD, ES, CQRS, authentication, authorization, validation, persistence, caching, and distributed locking used in multiple company projects.
  • Performed code reviews and delivered developer training to improve code quality.
Technologies: .NET, C#, .NET Core, REST APIs, RabbitMQ, Elastic, Redis Cache, PostgreSQL

CTO and Lead Developer

2017 - 2021
Aerosight
  • Led the engineering of an aviation safety SaaS solution from scoping and delivering an MVP version, gradually extending it to reach 20+ airline clients.
  • Built Azure cloud-based solution architecture and system design that supports high availability, durability, and horizontal scalability based on ASP.NET Core and Azure Functions.
  • Performed code reviews and design discussions with developers to ensure high code quality, extensibility, and maintainability of the system.
  • Designed a metadata-based rendering engine for an Angular and Bootstrap-based application.
  • Designed a highly scalable data processing and analysis engine based on Azure Functions and Queues that process raw files in a couple of minutes regardless of the workload.
  • Developed optimized bitwise algorithms to process binary files from aircraft black boxes and declarative event detection engines customizable across aircraft manufacturers.
Technologies: Agile, Angular, Azure, Azure SQL, Azure PaaS, Cloud Architecture, .NET, ASP.NET Core, Entity Framework, Azure Queue Storage, Azure Functions, Code Review, Business Requirements, SaaS

Lead Full-stack Developer and Architect

2019 - 2020
Freelance Clients
  • Created and implemented the MVP of a web-based SaaS platform for tracking inventory items via RFID codes.
  • Designed and developed a back-end API that collects tracking information, processes it, and then exposes various API endpoints to show different analyses and reports and manage inventory, users, and more.
  • Implemented support multitenancy and impersonation of the SaaS provider users to act on behalf of different clients at the API and back-end levels.
  • Architected and developed a web-based Angular and Bootstrap-based single-page application with a responsive design.
Technologies: Angular, Architecture, REST API Architecture, Web Architecture, Bootstrap, ASP.NET Core, Entity Framework Core, Azure Blobs, Azure Active Directory B2C (ADB2C), Microsoft Visual Studio, C#, Agile, SQL, Azure App Service, Git, JavaScript, SQL Server Management Studio (SSMS), .NET, Azure, Azure SQL Databases

Lead Full-stack Developer and Architect

2013 - 2017
IteraFlow
  • Worked as an architect, lead developer, or consultant on multiple solutions based mainly on .NET, Azure, and Angular.
  • Architected and implemented key parts of the development framework for the rapid development of SaaS and B2B solutions.
  • Collaborated closely with product managers, designers, and QAs to find efficient solutions to move projects forward and deliver timely results.
  • Inspired software engineers to write high-quality code, following best practices and SOLID principles.
Technologies: Office 365 API, Azure Queue Storage, Azure Blobs, Azure Active Directory, Angular, TypeScript, Azure Functions, Microsoft SQL Server, Entity Framework Core, Web API, ASP.NET Core, Domain-driven Design (DDD), Bootstrap, Microsoft Visual Studio, C#, Agile, SQL, Azure App Service, Azure SQL, Continuous Delivery (CD), Git, JavaScript, SQL Server Management Studio (SSMS), .NET, Azure, Azure DevOps, Azure SQL Databases

Lead Developer

2011 - 2013
Igsoft
  • Led a team of 4 – 6 developers responsible for the architecture and development of an online gambling back office system that manages all internal processes related to running this kind of business.
  • Implemented the UI of a system using Knockout.js, Kendo UI, and the bridge library, Kendo-Knockout.js.
  • Installed a data access layer for CSLA business objects based on the repository pattern and Entity Framework.
  • Developed an ASP.NET MVC model binder for CSLA business objects.
  • Designed and implemented a DSL that was based on the Visual Studio Modeling SDK for defining metadata for modules, entities, and entity associations. Implemented T4 templates to generate entities and other classes from them.
Technologies: NUnit, NLog, Moq, Json.NET, PostSharp, Modeling, Visualization, Kendo UI, Knockout (Knockout.js), Unity (IoC Container), ASP.NET MVC, ASP.NET Web API, Microsoft SQL Server, Entity Framework Core, Microsoft Visual Studio, C#, Agile, SQL, Git, JavaScript, SQL Server Management Studio (SSMS), .NET

Lead Developer and Architect

2010 - 2013
alex+von
  • Architected, developed, and maintained the .NET-and-nopCommerce-based direct selling web platform for a California-based startup—automating the business processes and providing much-needed reports to drive the company forward.
  • Designed and developed a customizable incentive program engine that supported stages, challenges, and achievements, available to each consultant who met the eligibility criteria.
  • Designed and developed a notifications engine that supports custom templates with contextual placeholders for different system events and notification channels like email, within-site, and SMS.
  • Implemented a single sign-on between the nopCommerce app and direct-selling platform apps based on WCF and form authentication.
  • Implemented the two-way communication and data synchronization between nopCommerce and a direct-selling platform engine; using WCF web services with WSHttpBinding.
  • Implemented customizations on top of a default nopCommerce implementation for a functional web design perspective that included vendor-based order splitting, additional checkout steps, and bonuses.
Technologies: Bootstrap, Moq, NUnit, Unity (IoC Container), IIS, Facebook API, PayPal API, NopCommerce, LINQ, ADO.NET, Microsoft SQL Server, ASP.NET MVC 4, Microsoft Visual Studio, C#, Agile, SQL, ASP.NET Web API, SQL Server Management Studio (SSMS), .NET

Senior Software Engineer

2009 - 2010
Mirchev Ideas
  • Optimized, refactored, and completed the implementation of documents, reporting, store, and discount modules in a custom ERP system for a client in the auto parts and auto services industry.
  • Redesigned the business layer of an ASP.NET-based invoice processing and approval system. Introduced the concepts of repository and unit of work. Abstracted repetitive data access logic into reusable methods and significantly simplified code.
  • Implemented WCF with MSMQ endpoints for communication between a WPF-based, player-vs-player RPG game and game servers.
Technologies: Unity (IoC Container), Microsoft SQL Server, MySQL, MSMQ, Ajax, ASP.NET, Microsoft Visual Studio, C#, SQL, SQL Server Management Studio (SSMS), .NET

Senior Software Engineer

2007 - 2009
Software Technologies
  • Contributed to developing the OOA and OOD of an ASP.NET-based online booking system for hotel rooms, car rentals, and tickets; it integrates booking items from several suppliers and provides the best possible offers for the user.
  • Designed, developed, and unit-tested a booking engine prototype that simultaneously checks the best possible hotel prices from different sources based on chosen criteria.
  • Implemented user management and security in an ASP.NET app based on membership and forms authentication using NHibernate.
  • Implemented an engine to localize an ASP.NET website by using a live on-page localization editor and storing the localization texts in a database, utilizing a custom virtual path provider.
Technologies: NLog, NUnit, Unity (IoC Container), PostSharp, NHibernate, Microsoft SQL Server, Ajax, ASP.NET, Microsoft Visual Studio, C#, SQL, SQL Server Management Studio (SSMS), .NET

Software Engineer

2005 - 2007
Gugga (acquired by Wacom)
  • Developed the core components, business logic, and the data access layer of a public interface and back-office module for the Bacardi company's intranet content management system.
  • Extended the business logic in the training system for Panasonic resellers.
  • Developed tough B2C and B2B marketing applications based on .NET and Flash/ActionScript 2.0 for clients like Mazda, Bacardi, and Dewars. Had a leading role in two of the projects.
  • Used extensively Telerik ASP.NET controls, especially the grid, editor, and upload components.
  • Participated in developing an ActionScript 2.0-based framework for building rich internet applications.
Technologies: Microsoft SQL Server, ADO.NET, Ajax, ASP.NET, Microsoft Visual Studio, C#, SQL, .NET, Telerik Web Controls

.NET Developer

2004 - 2005
Skyware Group
  • Migrated the registration module of a laboratory information system (still used in more than 30 laboratories in Bulgaria) from VB6 to a VB.Net Windows Forms application.
  • Implemented an ASP.NET-based web app for checking and printing patient results online.
  • Integrated with fiscal and barcode printer libraries.
  • Implemented laboratory and patient results in reports using Crystal Reports.
Technologies: Microsoft Visual Studio, SQL, .NET

Aerosight FDM | Aviation Safety SaaS Solution

http://aero-sight.com/
An Azure, cloud-based SaaS solution that automates the processes related to the readout and analysis of parameters stored in the aircraft's flight recorder (black box). The system detects flight events that need investigation, prepares detailed flight reports, and provides contextual search capabilities, charts, and risk analysis.

The system uses a highly optimized algorithm to process binary black-box files and extract their flight and parameter values. It also uses a highly customizable and reusable event detection engine across aircraft manufacturers.

Responsible for the system architecture, I led the software development and was involved in the design and implementation of key aspects of the solution:

• highly scalable, serverless based data processing engine based on Azure Functions that supports on-demand horizontal scaling to implement compute-intensive tasks with rare but very high peaks
• messaging infrastructure based on Azure Queues
• powerful declarative event detection engine
• distributed optimistic locking based on Azure Blob leases
• domain model database and API design
• cloud architecture with high availability and durability

Microservice-based Tasks and Inventory Management System | Internet Service Provider

I was involved in the business requirements refinement, architecture, and development of tasks and an inventory management system comprising around ten microservices. The system integrates with a couple of other existing methods in the organization and is used by thousands of employees. It was built using the Microsoft stack and Angular for the front end.

SaaS Platform for Tracking Inventory Items in Vehicles

Architected and implemented the MVP of a web-based SaaS platform for tracking inventory items via RFID codes. I designed and developed a back-end API that collects tracking information, processes it, and then exposes various API endpoints to show different analyses and reports and manage inventory, users, and more. I also designed and created a web-based Angular and Bootstrap-based single-page application with a responsive design. Finally, I implemented support multitenancy and impersonation of the SaaS provider users. It acts on behalf of different clients at the API and back-end levels.

Digmo | Framework for Rapid Development of SaaS and B2B Solutions

Digmo is a framework that provides consistent and efficient ways for building different layers and cross-cutting concerns for multitenant, highly scalable, and configurable distributed applications used in a few B2B SaaS solutions. Digmo best fits B2B applications with different types of users, complicated workflows, data analytics, reporting requirements, and consistent UX.

The back end is a set of. NET-based libraries that use serverless computing concepts, messaging, DDD, CQRS, ES, and hypermedia-driven RESTful APIs, exposing metadata and permissions to client applications.

The front end is a set of npm libraries based on Angular that enables rapid development of new features and a consistent UI across the entire application. The UI could be automatically rendered based on the metadata returned from the server while simultaneously allowing a high level of customization.

I am the framework architect and have implemented major parts of the architecture.

Security Printing Ordering System

https://www.banknote.com/
An Azure, cloud-based system developed for a client in the security printing business that automates the whole ordering process, from product definition and contract signing to the actual shipment and delivery. I was involved in the system architecture and the front- and back-end development. I collaborated closely with the client, designer, and developers to ensure that the requirements and workflows were accurately reflected on the design screens and in the system's business logic.

Movie Streaming Service

A streaming service for the domestic market that could reach more than one million simultaneous users. The existing service had an outdated back end and experienced regular downtimes due to poorly designed back-end logic and caching. My role was to architect and implement a scalable approach to handle this load and at least five times more simultaneous users. The solution was to eventually synchronize the needed data in Elasticsearch and perform querying against Elastic. In some cases, we also took advantage of Redis Cache.

Nonprofit Project Management | SaaS Solution

A cloud-based SaaS solution that enables nonprofit organizations to track their progress and manage and organize a project's information throughout its lifecycle.

You can organize, tag, search media content, and collaborate on documents online through Office 365. It is deployed as a multitenant Azure web app that authenticates against the client Azure AD and enables single sign-on with the client Office 365.

It uses ADAL.js to implement an OAuth 2 implicit grant flow in an AngularJS application and authenticated users against the Azure Active Directory.

Contact Center for a Business Banking Platform

I developed the front end and the back end of a contact center web app, which utilizes Twilio services and ASP.NET with SignalR to provide a fully-featured web-based support solution with video, chat, and phone communication. The app was built with Angular 6 and Angular Material.

Online Lottery Platform

https://www.lottotech.com/
Architected and developed the software for a lotto's server core logic and web APIs for an online lotteries SaaS platform. The lotto server integrates with a back-office solution based on the Microsoft Dynamics CRM, payment, and affiliate systems, as well as the external systems for lottery ticket purchases.

Microsoft Certified Solutions Developer Web Applications

2013 - Microsoft Certification

Programming for .NET Framework Book | Co-author | 2005

I co-authored a book on programming with the .NET framework. The ISBN: 954-775-672-9; 978-954-775-672-4 (Volume 2)

Algorithm and Software for Aircraft Flight Data Recorders

I wrote an algorithm and software for the readout aircraft flight data recorders. It was published in 2012 “Science” magazine which is run by the Bulgaria Scientist Union.
2009 - 2011

Master's Degree in Technological Entrepreneurship and Innovations in IT

Sofia University - Sofia, Bulgaria

2004 - 2008

Bachelor of Applied Science Degree in Computer Science

Sofia University - Sofia, Bulgaria

SEPTEMBER 2016 - PRESENT

Microsoft Certified Solutions Associate Web Applications

Microsoft

AUGUST 2013 - AUGUST 2015

Microsoft Certified Solutions Developer Web Applications

Microsoft

JULY 2013 - PRESENT

Microsoft Specialist: Programming in HTML5 with JavaScript and CSS3

Microsoft

MARCH 2003 - MARCH 2005

Developing and Implementing Windows-based Applications with Microsoft Visual Basic .NET and Microsoft Visual Studio .NET

Microsoft

Libraries/APIs

REST APIs, Fluent API, Azure Active Directory Graph API, Office 365 API, Moq, Web API, LINQ, PayPal API, Facebook API, React, Twilio API, SignalR, Entity Framework, OpenAPI, Hypermedia API

Tools

Git, Microsoft Visual Studio, Azure App Service, xUnit, PostSharp, Angular CLI, Elastic, RabbitMQ, Azure Active Directory B2C (ADB2C), Azure Search, Jira, NuGet, NPM

Frameworks

Json.NET, .NET Core, ASP.NET Web API, ASP.NET Core 2, Angular, .NET, OAuth 2, Entity Framework Core, ASP.NET MVC, ASP.NET Core, AngularJS, Bootstrap 3, ASP.NET MVC 4, ADO.NET, Bootstrap, ASP.NET, NHibernate, NUnit, Kendo UI, Knockout (Knockout.js), Angular Material

Languages

HTML5, SQL, JavaScript, TypeScript, C#, CSS, HTML, CSS3, SCSS

Paradigms

FluentValidation, Continuous Delivery (CD), Agile, Test-driven Development (TDD), REST, Dependency Injection, Refactoring, Azure DevOps, API Architecture, Continuous Integration (CI), Event Sourcing, CQRS, Behavior-driven Development (BDD), REST API Architecture, Web Architecture, Microservices, Microservices Architecture, Unit Testing

Platforms

Azure Functions, Azure PaaS, Azure, Visual Studio Code (VS Code), NLog, NopCommerce

Storage

SQL Server Management Studio (SSMS), Azure Blobs, Azure Active Directory, Azure SQL, Azure Queue Storage, JSON, Microsoft SQL Server, Azure Websites, MySQL, Redis Cache, PostgreSQL, Azure Cosmos DB, Elasticsearch, Azure SQL Databases

Other

Multithreading, Unity (IoC Container), System Architecture, SOLID Principles, Domain-driven Design (DDD), Cloud Architecture, Architecture, APIs, Technical Architecture, Full-stack, Profiling, Performance Optimization, Coaching, Technical Leadership, Visual Studio Team Services (VSTS), Windows 10, Visualization, Modeling, IIS, Ajax, MSMQ, SaaS, Computer Science, Authentication, Messaging, Leadership, Algorithms, Data Processing, Code Review, Business to Business (B2B), Workflow, Business Process Automation, Telerik Web Controls, Blob Storage, Business Requirements, Office 365

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring