Ivaylo Dimov
Verified Expert in Engineering
Solution Architect and Software Developer
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
Experience
Availability
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
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.
Lead Back-end Developer and Architect
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.
CTO and Lead Developer
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.
Lead Full-stack Developer and Architect
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.
Lead Full-stack Developer and Architect
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.
Lead Developer
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.
Lead Developer and Architect
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.
Senior Software Engineer
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.
Senior Software Engineer
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.
Software Engineer
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.
.NET Developer
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.
Experience
Aerosight FDM | Aviation Safety SaaS Solution
http://aero-sight.com/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
SaaS Platform for Tracking Inventory Items in Vehicles
Digmo | Framework for Rapid Development of SaaS and B2B Solutions
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/Movie Streaming Service
Nonprofit Project Management | SaaS Solution
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
Online Lottery Platform
Microsoft Certified Solutions Developer Web Applications
Programming for .NET Framework Book | Co-author | 2005
Algorithm and Software for Aircraft Flight Data Recorders
Education
Master's Degree in Technological Entrepreneurship and Innovations in IT
Sofia University - Sofia, Bulgaria
Bachelor of Applied Science Degree in Computer Science
Sofia University - Sofia, Bulgaria
Certifications
Microsoft Certified Solutions Associate Web Applications
Microsoft
Microsoft Certified Solutions Developer Web Applications
Microsoft
Microsoft Specialist: Programming in HTML5 with JavaScript and CSS3
Microsoft
Developing and Implementing Windows-based Applications with Microsoft Visual Basic .NET and Microsoft Visual Studio .NET
Microsoft
Skills
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
Languages
HTML5, SQL, JavaScript, TypeScript, C#, CSS, HTML, CSS3, SCSS
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
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
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