Dimi Goranov Photo

Dimitar Goranov

Microsoft Azure Cloud Solutions Architect and DevOps Engineer

Email: [email protected]
Send a message: Contact Form »
Contact Phone: +1 617 644 4580

Introduction

Software Engineer with over 20 years of experience in Software Systems Design and Development. Strong skills in the development of cloud-based, distributed systems and business applications under Microsoft Azure Cloud, Amazon AWS, and Google Cloud Platforms

Professional Profile

Architectures, Patterns, and Frameworks:

  • Experience with Domain-Driven Design
  • Experience with Scrum Methodology
  • Practical experience with Design Patterns
  • Practical Experience with RESTful APIs design
  • Microsoft .NET and .NET Core Frameworks
  • Experience with Twilio Platform
  • ORMs – Entity Framework, Dapper, NHibernate

Programming Languages and Tools:

  • C# v2.0 – 8.0
  • Terraform
  • PowerShell
  • MS Azure DevOps
  • MS Visual Studio
  • Visual Studio Code
  • GitLab

System Engineer Skills:

  • Cloud Network Infrastructure Design, Deployment, Ongoing Administration
  • System Administration in operating systems such as Windows Server and Ubuntu Linux
  • Firewall configuration and Administration
  • Experience with Cloudflare Tunneling and Zero Trust Setup
  • Experience with IIS and NGINX Setup and Administration

Database Systems:

  • MS SQL Server 2000-2019
  • MS Azure Cosmos DB
  • MS Azure Table Storage
  • MySQL Server/ MariaDB
  • PostgreSql Server

Practical Experience with Cloud Providers:

  • Microsoft Azure
  • Amazon AWS
  • Google Cloud
  • IBM Cloud
  • Okta/Auth0
  • Cloudflare
  • DigitalOcean
  • Twilio

Practical Experience with Cloud Services:

  • Azure Serverless – Azure Functions
  • Azure DevOps
  • Azure Cognitive Services
  • Azure CosmosDB
  • Azure API Management Service
  • Azure Storage Azure Data lake
  • Azure KeyVault
  • Azure Service Bus

Recent Work

September 2021 – June 2022

Devarro Inc
6200 North Capitol St
Washington, DC, 20039
USA

Consulting Position: System Engineer, Cloud Architect, DevOps Lead

Position: Migrate a legacy software system with high-security requirements from a local data center to Azure Cloud

I was hired as an external consultant to implement a migration plan for a legacy software system based on several stacks like Classic Asp, PHP, and Java from a local data center to Azure Cloud.

Designed and implemented the cloud infrastructure required for the system including:

  • Setup and configuration of virtual machines on Windows Server 2019 and Ubuntu 20.04
  • Setup and configuration of MS SQL Server instances and PostgreSQL Server.
  • Design and implementation of VLANs and NSGs (Network Security Groups)
  • Implementation of P2S and S2S VPN Gateways
  • Migrated codebase from GitHub to Azure DevOps and implemented CI/CD Pipelines
  • Implemented backup plans for all VMs and Databases
  • Implemented external Disaster Recovery plan using Veeam backup servers and PowerShell scripting

Implemented secure tunneling for all public-facing web applications using Cloudflare Zero Trust Gateway and Cloudflare Application Firewall. Configured CrowdStrike falcon monitoring agents for all VMs in the infrastructure.

Worked with the development team to implement CI/CD Pipeline in Azure DevOps for a PHP project based on Laravel and PostgreSQL.

Environment: MS Azure Cloud, Azure DevOps, Cloudflare, CrowdStrike Falcon, Veeam Backup Servers

Tools and Frameworks:  Azure DevOps, Visual Studio Code, PowerShell

June 2021 – October 2021

Kreios S.a r.l.
Sandweiler, Luxembourg

Consulting Position: Terraform/Azure DevOps Lead

Position:  Implement new Terraform scripts and Azure API Management/Gateway configurations

In this project, I was hired as an external consultant to help Kreios development team with their DevOps needs. Implemented Terraform scripts for provisioning and deployment of the Azure infrastructure required for running a website based on Grav CMS.

Helped the development team with the design and implementation of Azure API Management/Gateway configurations and documentation of the API.

Implemented CI/CD Pipeline in Azure DevOps for some of the back-end API services and worked with the development team during the implementation process.

Environment: Terraform, MS Azure Cloud, Azure DevOps,  Azure API Management, Azure App Service

Tools and Frameworks:  Terraform, Azure DevOps, Visual Studio Code

April 2020 – June 2021

D.I.G Technologies Ltd
28 Samokov Str,
1113 Sofia, Bulgaria

VoisixAI System Architect and Developer

Web: www.voisixai.com

Position: Azure Cloud Architect, Twilio Developer, Azure Cognitive Services, Google Cloud Services

VoisixAI is an innovative cloud-based voice call management system for medical offices and dental practices in Bulgaria. The systems help doctors and dentists to better manage incoming calls from patients, schedule visits, and provide video conferencing for patients that can’t visit the medical office.

The back end of the system is running on Microsoft Azure Cloud and integrates services from other cloud vendors like Google Cloud, Cloudflare, and Twilio. As a chief architect and developer of the system, I’m responsible for all aspects of the system architecture from developing the back-end Azure management API to the Angular-based front end based on Angular/TypeScript 11.

Environment: MS Azure Cloud, Azure Functions, Azure Storage, Azure SQL, Azure CDN, Azure API Management, Authentication service Auth0.com, Azure App Service, Cloudflare Service

Tools and Frameworks: C#, Entity Framework, .NET Core, Visual Studio, Visual Studio Core, Angular 11, Azure DevOps

November 2018 – August 2020

MAKE Bulgaria Ltd
ul. “Professor Fridtjof Nansen” 11, 13,
1142 Sofia Center, Sofia, Bulgaria

Azure Cloud Architect and Back-end Developer

Web: http://makeis.eu/

Position: Azure Cloud Architect and Back-end Developer

As part of a team including Hardware engineers, Siemens PLC & HMI engineers, project managers, and Angular Front-End developers designed and implemented a cloud-based distributed system based on MS Azure Cloud. The system is responsible for collecting data and remote management of hardware controlled by Siemens S7-1200 PLCs through Siemens S7 network protocol. The machines can be located anywhere in the world with network communication based on Mikrotik routers and mobile internet. All machine data can be collected simultaneously and stored in Azure Table storage for processing. A separate business layer is responsible for processing the raw data from the Table Storage and storing the business Data into a structured Azure SQL Server storage. An API layer based on Azure Functions & Azure API Management Service is responsible for providing a RESTful API interface for consumption by the Angular Front-end application.

Environment: MS Azure Cloud, Azure Functions, Azure Storage, Azure SQL, Azure CDN, Azure API Management, Authentication service Auth0.com, Azure App Service, Cloudflare Service

Tools and Frameworks: C#, Entity Framework, .NET Core, Visual Studio, Visual Studio Core, Angular v10, Azure DevOps

August 2003 – April 2020

Drundo Software Inc.
6 Liberty Square #2001
Boston MA 02109, USA

Position: Drundo Software Inc. – Business Owner

2017 – 2018

Teaching & Learning Stuff Project

Teaching & Learning Stuff is a major retail store chain for educational materials based in Arizona, U.S. Their goal was to fully integrate their Post of Sale system running on Counterpoint with their online store and synchronize in real time all products, clients, sales, and Gift Cards. Another requirement was to use SMS marketing for collecting emails and provide in-store and online promotions at the same time.

My role in the project was to build the architecture and software design of the system. The system was successfully implemented on Microsoft Azure Cloud with a programmable SMS service provided by Twilio (https://www.twilio.com).

  • Implemented a middleware bridge between the Counterpoint server and MS Azure.
  • Implemented middleware service in Azure responsible for synchronizing data between Azure and nopCommerce e-commerce storefront.
  • Implemented Azure service for accepting and managing SMS messages through Twilio and updating user information in Mailchimp email marketing service.

Environment: MS Azure Cloud, Azure Functions, Azure Storage, Azure SQL, Twilio Voice Service, Mailchimp Email Marketing Service, Azure App Service, nopCommerce e-commerce platform 

Tools and Frameworks: C#, Entity Framework, .NET Core, Visual Studio, Azure DevOps

2013 – 2016

Implemented a number of integrations for existing eCommerce clients for different third-party systems by working closely with their business and marketing teams. During this time become a member of the Microsoft Azure User Group in Boston and started attending user group meetings at Microsoft’s Cambridge, Massachusetts office.

  • Worked on PCI-DSS compliance and .Net application hardening to meet strict PCI-DSS security standards for high-end e-commerce clients running their storefronts on the Asp.Net/MSSQL stack.
  • As part of a team that implemented a custom online storefront solution for one of the top Scrap Book vendors in the U.S organizing Scrapbook Expo events all around the U.S: https://scrapbookexpo.com
    • Implemented ticket printer integration for AbleCommerce shopping cart C#/Asp.Net/MSSQL
    • Maropost marketing integration using Maropost API
    • MadMimi marketing integration
  • As part of a team of .Net developers implemented a custom online storefront solution for one major custom bike shop https://www.notubes.com/ . Shopping cart platform AbleCommerce, C#/Asp.Net/MSSQL NHibernate ORM.

Environment: MS Windows Server, MS SQL Server, Maropost Email Marketing Service, Microsoft Azure App Service, nopCommerce e-commerce platform

Tools and Frameworks: C#, NHibernate ORM, ASP.NET 4.7, ASP.NET WebAPI, Visual Studio, GitLab

2009 – 2013

Became one of the organizers of Beantown .NET User Group in Boston and started monthly meetings at Microsoft’s Cambridge office.

  • Signed a partnership contract with Softlayer (acquired by IBM and now IBM Cloud) and started offering Asp.net PCI-DSS Compliant hosting based on Microsoft Hyper-V Technology for Asp.Net/MSSQL based eCommerce storefronts.
  • Grew the Ecommerce storefronts managed, hosted, and supported by Drundo Software to over 200 with some of the stores generating over $150,000 a month in sales.
  • Implemented integration of hosting components like DNS, Email, and Monitoring with external vendors like Amazon Route53, Rackspace Email, Pingdom, Akamai CDN
  • Extended and Implemented internal backup system based on open source .Net/C# Duplicati ( https://www.duplicati.com/) using Softlayer OpenStack Object Storage (“Swift”)

2006 – 2009

Signed partnership contracts with other Asp.Net based e-commerce shopping cart providers like AbleCommerce, VevoCart, and AspDotNetStorefront.

  • Started offering development services for AbleCommerce, VevoCart, and AspDotNetStorefront
  • Implemented a number of integrations with third-party payment and ERP systems like NetSuite ERP, ShipStation, and Mailchimp Email Marketing, among others.
  • Implemented own billing and support systems based on PHP, MySQL, NGINX Server, and CentOS

August 2003 – December 2006 

Became StoreFront.Net development partner and started offering custom development and hosting services for e-commerce online storefronts based on StoreFront.Net. The shopping cart was built on Asp.Net 2.0 with MSSQL Server and ADO.NET.

  • Implemented Storefront.Net extension for Constant Contact Email Marketing Service
  • Started offering Asp.Net Hosting services for Asp.Net developers and Storefront.Net storefronts
  • Implemented a billing system for internal use based on Asp.Net/MSSQL and Authorize.Net payment gateway

August 2003 – September 2004 

Left my corporate Job at CommVault Systems, moved to Boston, MA, and started Drundo Software Inc. During this period built an online storefront based on Asp.Net 1.1/MSSQL Server /Windows Server 2003 for importing and selling Bulgarian magazines like Egoist, Baкhus, Playboy etc. under domain cultbg.com The implementation of the online storefront was successful, but the price of the magazines with import/shipping – distribution in the U.S was too high for the Bulgarian community in the U.S and the service was closed a year later.

August 1998 – August 2003

CommVault Systems Inc.
2 Crescent Place, Oceanport
New Jersey 07757, USA
Web: http://www.commvault.com

Position: C/C++ Senior Software Developer

As a software engineer, I was part of a software team of 100+ developers working on an enterprise-level backup system for large U.S corporations like EMC, Colgate-Palmolive, CHASE Manhattan Bank, etc. The main server-side of the system was based on MS Windows Server with MSSQL Server. Different subsystems were running on various servers from  SPARC/Solaris, and RedHat Enterprise  The main development environment was C++ and Java and Visual Studio on the Windows OS side and GCC + vim editor on all other platforms.

My job was to develop and support device drivers for the storage subsystem and integrate new storage hardware like enterprise tape libraries from hardware vendors like Sony, StorageTek, Quantum, IBM etc.

Environment: Visual Studio C++, Windows Server 2000, SQL Server 2000, Solaris OS, GNU C/C++, GNU GDB, IBM OS2, CVS – source revision system. 

July 1998 – August 1999

Position: UNIX C/C++ Software Developer/Consultant

Projects: 

Initially provided support for the current release of the software system. Support included bug fixes and improvements to existing functionality and troubleshooting at customer sites. Responsibilities concentrated on the server-side, including UNIX/C programming and Solaris SCSI drives programming and improvements of existing tape subsystem code. The server software is created with C and works on a wide range of SPARC/Solaris servers — from tiny Sparc 5 to SPARC Enterprise 4000. This requires knowledge of UNIX and C programming for UNIX, RPC, and UNIX Sockets, debugging tools, source revision systems, working with customer engineers, and remote troubleshooting. Work under existing tape subsystem improvements and enhancements.

Environment:  Solaris 2.6, GNU C/C++, GNU GDB, CVS – source revision system, ADIC, and StorageTek Tape Jukeboxes, Optical Platters Jukeboxes

September 1997 – May 1998

Intransco Inc.
612 West 22nd Street
Austin, Texas, 78705
Sofia Branch, Sofia, Bulgaria

Position: C++ Software Developer

PROJECTS:

  1. Part of a team developing a WEB-enabled Air-Travel Reservation System based on WorldSpan CRS.

The system is implemented as a set of CGI’s under RadHat Linux 4.2/5.0 and is written entirely in C++ and compiled with GNU C++ for Linux. As part of a team of 20 programmers and designers developed the database part of the system. Developed a high-level database class library based on ODBC API for the SOLID database engine. Developed a number of CGI-based applications and tools for web-based database access.

Also responsible for database integrity assurance.

  1. Intransco Database Browser application – a CGI-based application for internal database administration. This application allows database administrators (users) to execute direct SQL statements from WWW environment. Environment: Linux 4.2, MSQL database Server for Linux and Solid Database Server for Linux, GNU C/C++
  1. Database dumping tool for SOLID database engine.

This tool generates SQL dumping script from an existing database. Used C++ / ODBC API for SOLID.

Environment: Linux 4.0, Solid Database Server for Linux, GNU C/C++

  1. SOLID relshow tool, allowing users to connect to SOLID database server and view the existing database structure.

Used C++ / ODBC API for SOLID.

Environment: Linux 4.0, Solid Database Server for Linux, GNU C/C++

November 1995 – September 1997

Scopeland Technology GmbH, Birkenwerder, Germany – Bulgarian Branch, Sofia, Bulgaria

Web: https://www.scopeland.com/

Position: Database Application Programmer

PROJECTS:

  1. Project name: NOAC – DataWarehouse

This project was based on Datawarehowse technology  and designed as the Basis for several Governmental Statistical Database Systems both in Bulgaria and Germany

  • In a team of 7 programmers and a project manager, designed and implemented a 32-bit and a 16-bit MFC

Table Importer DLLs

The DWHDLL library is a dynamic library that implements the base functionality for NOAC-DataWarehouse.

The Table Importer is a class from DWHDLL with the following main features:

– Opens connection to ORACLE database via ORACLE SQL-Net

– Opens connection to another database(ORACLE, INFORMIX) via ODBC.

– Reads tables and column descriptions via ODBC connection and writes data to Datawarehouse metadata database.

– Reads additional columns description from INFORMIX or ORACLE system tables (views)

– Analyzes relations between fields in tables and writes relations data to Datawarehowse metadata database.

– Analyzes all existing tables and fields in the database and finds all possible relations between fields by field names.

Environment for the 32-bit DLL:  VISUAL C++ 4.0 (MFC 4.0), Windows 95, ORACLE 7 Server for SCO UNIX,

SCO Open Server 5.

Environment for the 16-bit DLL:  VISUAL C++ 1.5 (MFC 1.5), INFORMIX-NET, Windows 95,

INFORMIX 7.2 Server for SCO UNIX, SCO UNIX Open Server 5

1.2. Designed and implemented an MFC OLE Application called Visio analyzer, which uses Visio to create WorkFlow graphs and relations between tables for WorkFlow and Datawarehouse products. When a WorkFlow or Datawarehouse graph is created the application analyses the graph and writes the corresponding data to WorkFlow or Datawarehouse database.

Visio Analyzer has the following main features:

– Starts Instance of Visio 4.1 via Visio OLE interface, and creates a connection with Visio.

– Loads appropriate WORKFLOW or DATAWAREHOUSE stencils

– Catches Save and SaveAs event notifications over a connection.

– Analyzes Visio Drawing and writes results to Windows .INI file.

– Analyzes Visio Drawing and writes results to INFORMIX WorkFlow database or Datawarehouse metadata via INFORMIX-NET.

Environment:  VISUAL C++ 1.5, Visio 4.1, Windows 95, and INFORMIX 7.2 Server for SCO UNIX 

  1. August 1996 – September 1996 

Position: Senior Programmer

Implemented a UNIX terminal emulator application for DOS via FTP Software (TCP/IP protocol suite)

Environment:  Microsoft C++ 7.0, Microsoft Visual C++ 1.0, DOS, Windows 95, FTP Software

(TCP/IP protocol suite)

  1. March 1996 – August 1996 

Position: SCO Open Server Systems administrator and INFORMIX DBA

Duties included installation, day-to-day management, and backup/recovery.

Environment:  SCO Open Server 5.0, INFORMIX 6.0/7.1

  1. November 1995 – March 1996 
Position: INFORMIX-4GL programmer

Project name: Unifys-Integrated Financial Accounting system for middle and large-sized factories

As part of a team with 9 programmers and one project manager created a library with functions implementing various accounting methods.

Environment: SCO UNIX, INFORMIX R4GL, UNIX TERMINAL, UNIX KornShell environment

Skills

Full-Stack Software Engineer with experience in cloud system architecture and implementation based on the Microsoft Azure and Amazon AWS Platforms. Excellent communication skills and excellent team player.

Microsoft Azure Architect
Azure DevOps Lead
Microsoft .NET Development C#
Twilio Platform Development
Terraform

Education

1991 – 1996

Sofia University St. Kliment Ohridski, Sofia, Bulgaria Department of Mathematics and Informatics

M.S. in Computer Science, Major: Information Systems
Concentration: System Programming

1984 – 1989

High School of Mathematics, Pleven, Bulgaria

Major: Mathematics

Social Media