Giorgi Dalakishvili, Developer in Tbilisi, Georgia
Giorgi is available for hire
Hire Giorgi

Giorgi Dalakishvili

Verified Expert  in Engineering

Software Developer

Location
Tbilisi, Georgia
Toptal Member Since
April 4, 2016

Giorgi is a software developer with more than a decade of experience. He works mainly with C#, ASP.NET Core, REST, GraphQL, MAUI, Xamarin, Entity Framework Core, AWS, Azure, and SQL Server. He has also worked with many other frameworks and systems, such as ASP.NET MVC, ASP.NET Web API, WCF, Avalonia, WinForms, Oracle, and many more. Giorgi is an open-source author and contributor on GitHub, InfoQ Editor, and a member of the .NET Foundation.

Portfolio

TIMECO Systems, Inc
.NET, .NET MAUI, Cross-platform, RFID, SQLite, Offline Data Entry...
Call Loop
.NET, C#, Amazon Web Services (AWS), Twilio API, Stripe API...
Bank of Georgia
Microsoft SQL Server, T-SQL (Transact-SQL), REST, Entity Framework Core...

Experience

Availability

Full-time

Preferred Environment

Git, Visual Studio

The most amazing...

...thing I've done was to analyze Android source code and figure out how to call protected APIs with root permissions.

Work Experience

Xamarin & .NET MAUI Developer

2023 - 2023
TIMECO Systems, Inc
  • Implemented RFID scanning in a cross-platform mobile application using native Android APIs.
  • Enabled offline data storage in the app and period synchronization with the server.
  • Built custom theming of the app for white-label purposes for different customers.
Technologies: .NET, .NET MAUI, Cross-platform, RFID, SQLite, Offline Data Entry, Offline Data Synchronization, Google Play Store, Model View ViewModel (MVVM), Unit Testing, App Store, DevOps, iOS, AWS CodeCommit, Visual Studio, Bluetooth, Mobile Apps, Git, Databases, Data Engineering, DRY, KISS, OpenID Connect (OIDC), OAuth 2, IdentityServer 4, Multi-platform Development, Clean Architecture, SOLID Principles, .NET 6

C# .Net Back-end Engineer

2020 - 2023
Call Loop
  • Modernized SMS sending functionality to send many messages at the same time in parallel.
  • Created an index on the database tables to speed up common queries.
  • Implemented provisioning separate Twilio subaccounts and phone numbers for the users and releasing them when they ended subscriptions.
Technologies: .NET, C#, Amazon Web Services (AWS), Twilio API, Stripe API, AWS Elastic Beanstalk, Infusionsoft, Twilio, Agile Software Development, Software Architecture, Technical Leadership, Data Structures, Solution Architecture, Identity & Access Management (IAM), Jira, AWS Lambda, Amazon Aurora, Amazon CloudWatch, Node.js, Visual Studio, Building Information Modeling (BIM), TypeScript, Azure SQL, AWS Cloud Architecture, Cloud Architecture, Automation, Git, Databases, Data Engineering, SDK Development, SDKs, WCF Web Services, Windows Communication Foundation (WCF), DRY, Delivery Management, KISS, Management, IMAP, OpenID Connect (OIDC), SAML, OAuth 2, IdentityServer 4, Clean Architecture, SOLID Principles, .NET 6, Data Modeling, Teamwork, Domain-driven Design (DDD)

Senior Software Developer

2012 - 2020
Bank of Georgia
  • Built an internet banking system for corporate clients.
  • Introduced the team to Git and migrated a project from SVN to Git with commit history.
  • Developed an internal application for tracking collateral information.
  • Constructed a REST API with OAuth authentication for sending payments in an internet banking system.
  • Implemented parallel processing of payments in an internet banking system.
  • Built a GraphQL API for new corporate internet banking.
  • Implemented continuous integration and continuous deployment using GitLab, TeamCity, and PowerShell.
Technologies: Microsoft SQL Server, T-SQL (Transact-SQL), REST, Entity Framework Core, TeamCity, Windows Server, Windows PowerShell, .NET, Windows Services, .NET Core, GraphQL, Entity Framework, Oracle, ASP.NET MVC, ASP.NET Core, C#, SQL, REST APIs, RestSharp, Software Architecture, API Integration, APIs, API Development, Relational Databases, C#.NET, LDAP, Web Development, Architecture, Software Design, Requirements Analysis, Scalable Architecture, Scalable Application, Leadership, Integration, ASP.NET, OAuth, Security, CI/CD Pipelines, Code Review, Back-end, Full-stack, Desktop, JavaScript, HTML, React, MongoDB, Cloud Platforms, Full-stack Development, CRM APIs, Agile Software Development, Technical Leadership, Online Payments, Fintech, Data Structures, TypeScript, Solution Architecture, Oracle Database, Python, Unit Testing, Identity & Access Management (IAM), DevOps, Windows Desktop, Windows App Development, Windows Forms (WinForms), Windows UI, Jira, Node.js, Visual Studio, Building Information Modeling (BIM), Kafka Streams, Angular, AWS Cloud Architecture, Cloud Architecture, Elasticsearch, Elastic, Full-text Search, Microservices, Git, Databases, Data Engineering, SDK Development, SDKs, WCF Web Services, Windows Communication Foundation (WCF), Engineering Management, DRY, Delivery Management, KISS, Management, IMAP, MediatR, OpenID Connect (OIDC), SAML, OAuth 2, IdentityServer 4, Clean Architecture, SOLID Principles, .NET 6, Windows Presentation Foundation (WPF), ETL, Data Modeling, Teamwork, Domain-driven Design (DDD)

Freelance Software Engineer

2019 - 2019
PDX Web Properties, LLC
  • Built an Android/iOS application for the Talk Python Training website.
  • Implemented automatic builds with Microsoft App Center.
  • Implemented error tracking, reporting, and usage analytics.
Technologies: Xamarin.Forms, Mobile App Development, REST, .NET, iOS, Android, C#, Xamarin, RestSharp, APIs, Push Notifications, C#.NET, Mobile, Requirements Analysis, Security, Code Review, Full-stack, Cloud Platforms, Full-stack Development, Technical Leadership, Cross-platform, Mobile Development, Google Play Store, Solution Architecture, Mono, Model View ViewModel (MVVM), Unit Testing, App Store, Identity & Access Management (IAM), Node.js, Visual Studio, Mobile Apps, Git, Stripe Connect, DRY, KISS, SAML, OAuth 2, Multi-platform Development, Clean Architecture, SOLID Principles, .NET 6, Domain-driven Design (DDD)

Freelance Software Engineer

2014 - 2016
Idencia
  • Built a quality-control data-collection system that works on Android and iOS.
  • Implemented a REST API with an ASP.NET Web API to synchronize data between mobile apps and application servers.
  • Integrated several third-party RFID-scanning hardware in the app.
Technologies: Microsoft SQL Server, Mobile App Development, REST, Azure, .NET, ASP.NET Web API, iOS, Android, MvvmCross, Xamarin, C#.NET, Back-end, Cloud Platforms, Full-stack Development, CRM APIs, Software Architecture, Technical Leadership, Data Structures, Cross-platform, Mobile Development, Google Play Store, Model View ViewModel (MVVM), Unit Testing, MVVM Light Toolkit, App Store, Identity & Access Management (IAM), Jira, Visual Studio, Bluetooth, Git, Databases, DRY, Delivery Management, KISS, Multi-platform Development, SOLID Principles, Data Modeling, Teamwork, Domain-driven Design (DDD)

Freelance Software Engineer

2015 - 2015
Dapper Panda
  • Built an Android app using Xamarin.Forms for browsing trivia facts from Reddit.com.
Technologies: Xamarin.Forms, Mobile App Development, .NET, REST APIs, C#, C#.NET, Mobile, Mobile Development, Google Play Store, Model View ViewModel (MVVM), MVVM Light Toolkit, App Store, Visual Studio, Mobile Apps, Git, DRY, KISS, Multi-platform Development, SOLID Principles

Software Developer

2010 - 2012
Civil Registry Agency of Ministry of Justice of Georgia
  • Built a WCF service for automatically receiving and processing payments made at local banks.
  • Implemented an internal system for periodically sending SMS messages to specific groups of people.
  • Maintained and added new features to ASP.NET based web site for receiving various applications from citizens outside of Georgia.
  • Built an internal Windows desktop application for managing price lists and discounts offered by the agency.
  • Integrated web services with other agencies.
Technologies: T-SQL (Transact-SQL), Entity Framework, Windows Server, .NET, ADO.NET, Windows Services, Microsoft SQL Server, ASP.NET MVC, C#, SQL, RestSharp, API Integration, APIs, API Development, REST APIs, Relational Databases, Windows, Desktop App Development, Twilio, Twilio API, C#.NET, LDAP, Windows Desktop Software, Web Development, Architecture, Requirements Analysis, Scalable Architecture, Scalable Application, Leadership, Integration, ASP.NET, Security, Back-end, Desktop, JavaScript, HTML, Solution Architecture, Oracle Database, Mono, Identity & Access Management (IAM), Windows Desktop, Windows App Development, Windows Forms (WinForms), Windows UI, Visual Studio, Elastic, Full-text Search, Databases, Data Engineering, WCF Web Services, Windows Communication Foundation (WCF), DRY, Delivery Management, KISS, IMAP, SQL Server Integration Services (SSIS), SOLID Principles, .NET 2, Windows Presentation Foundation (WPF), Data Modeling, Teamwork, Domain-driven Design (DDD)

Software Developer

2009 - 2010
Onyx Consulting
  • Worked on a human management system: HRPoint.
  • Introduced the team to SVN and helped with switching to SVN from another source control system.
  • Built a reusable item selector component with jQuery.
  • Worked on ASP.NET-based self-service module for the human resources management system.
  • Built a dynamic document generation library.
Technologies: T-SQL (Transact-SQL), .NET, ADO.NET, LINQ, Microsoft SQL Server, ASP.NET, C#, SQL, Relational Databases, C#.NET, Windows Desktop Software, Web Development, Leadership, Security, Code Review, Back-end, Full-stack, Desktop, JavaScript, HTML, Agile Software Development, Technical Leadership, Jira, Visual Studio, Databases, Ruby on Rails (RoR), WCF Web Services, Windows Communication Foundation (WCF), DRY, KISS, IMAP, SOLID Principles, .NET 2, Data Modeling, Teamwork, Domain-driven Design (DDD)

IT Developer

2008 - 2009
HSBC Bank Georgia
  • Implemented data synchronization from the DB2 database to a local SQL Server database.
  • Built a reporting system based on SQL Server Reporting Services (SSRS) for multiple internal reports used by the bank.
  • Maintained and added new features to the debit card registration web system.
  • Maintained database indexes and optimized queries.
  • Built an ASP.NET-based internal application to send data to the central bank periodically.
Technologies: T-SQL (Transact-SQL), .NET, ADO.NET, Microsoft SQL Server, ASP.NET, C#, Relational Databases, C#.NET, Windows Desktop Software, CI/CD Pipelines, Back-end, Desktop, HTML, ETL, Windows UI, Visual Studio, Data Engineering, DRY, KISS, Telnet Protocol, Terminal, IMAP, SQL Server Integration Services (SSIS), SOLID Principles, .NET 2, Data Modeling, Teamwork, Domain-driven Design (DDD)

Software Developer

2007 - 2008
BIT | Business Intelligence Technologies
  • Worked on a real property ad management system for a local newspaper.
  • Implemented transferring ads from an internal Microsoft SQL database to a MySQL database used by a public website.
  • Added several new features to a human resources management system.
  • Converted a Visual C++ 6 application to a C# WinForms application.
  • Added new reports to the human resource management system.
Technologies: T-SQL (Transact-SQL), .NET, ADO.NET, Windows Forms (WinForms), Microsoft SQL Server, C#, Windows, Desktop App Development, C#.NET, Windows Desktop Software, Leadership, Desktop, Windows Desktop, Windows App Development, Windows UI, Visual Studio, SDK Development, SDKs, DRY, KISS, Telnet Protocol, Terminal, IMAP, .NET 2, Data Modeling, Teamwork

Talk Python Training Mobile Apps

https://itunes.apple.com/us/app/talk-python-training/id1460583670
Talk Python Training Mobile Apps are mobile apps for Android and Apple for the Talk Python Training website. More information can be found at the following link:
https://training.talkpython.fm/

The apps allow users to watch their courses online or download them for offline access. They were built with Xamarin.Forms so most of the code is shared between both platforms.

The apps can be downloaded from the links below.
• https://play.google.com/store/apps/details?id=fm.talkpython.training.player
• https://itunes.apple.com/us/app/talk-python-training/id1460583670

Scrubbly

http://www.scrubbly.com/
Scrubbly cleans a multi-column mailing list against an encrypted (or non-encrypted/plain text) suppression list.

Work Done:
Built a cross-platform application for Mac and Windows with Xamarin so that the business logic code was shared between platforms. Processed multiple gigabytes of data using SQLite.

Idencia

https://www.idencia.com/
Idencia is powerful yet simple to use. It is a quality control data collection system for the manufacturing industry in the cloud.

Using the Idencia Management Portal web application, QC managers define the data collection processes. Production workers then use the Idencia mobile application on Android to collect the information following the simple step-by-step process.

Work Done:
I built a cross-platform (Android and iOS) app using MvvmCross (an MVVM library for Xamarin) and integrated several Bluetooth scanner devices by building a Xamarin binding for the native libraries used by the devices. I also implemented direct-image uploads to a Microsoft Azure blob storage from the mobile app. The synchronization between mobile and web apps was optimized by removing extra data.

Better Open With

https://play.google.com/store/apps/details?id=com.aboutmycode.betteropenwith
With so many cool Android apps, Better Open With saves you the hassle of choosing only one default app handler when you click a file type without having to choose between "only once" and "always"!

Work Done:
Built the entire application from scratch after being inspired by a Reddit post.

The application has almost 100,000 downloads and a 4.2 user rating.

Trivia Buff

https://play.google.com/store/apps/details?id=com.trivia.buff
An Android application for Reddit's Today I Learned subreddit.

LINQPad.QueryPlanVisualizer

https://github.com/Giorgi/LINQPad.QueryPlanVisualizer
An SQL Server query execution plan visualizer for LINQPad.

LINQPad allows the user to execute LINQ queries, but it has no way to display the query execution plan, so I started an open-source plugin for LINQPad, which shows the query execution plan.

The project was featured on the .NET blog in their weekly review of .NET projects.

EntityFramework.Exceptions

https://github.com/Giorgi/EntityFramework.Exceptions/
EntityFramework.Exceptions is a C# library for the Entity Framework Core, which makes handling exceptions easier. It allows developers to easily determine whether the exception is caused by a unique key constraint violation, null constraint violation, and so on by processing the DbException.

It supports multiple database systems, such as SQL Server, PostgreSQL, MySQL, and SQLite.

Australia on Disc Business Edition

Australia on Disc is an Australia-wide information database providing access to over a million Australian businesses' names, addresses, and phone numbers (and much more).

Work done:
Built the application by creating an SQLite database based on a multi-gigabyte CSV file. Optimized queries by adding indexes and denormalizing the data. Developed an installer, together with an uninstaller, using Windows Installer XML.

New Zealand Business and Residential Database

NZOD Business covers every corner of New Zealand and all its industries. More than 230,000 business records and 850,000 residential records.

I built the application by creating an SQLite database based on a multi-gigabyte CSV file and optimized queries by adding indexes and denormalizing the data. I also developed an installer, together with an uninstaller, using Windows Installer XML.

Notifications Off

https://play.google.com/store/apps/details?id=com.aboutmycode.NotificationsOff
Notifications Off is an Android application for controlling application notifications in a centralized way. Instead of toggling notifications for applications individually from the settings screen, you can turn off notifications for all applications from one place.

The API needed to disable the notification for the application is not public, so I had to search the Android source code to discover the API and find a way to use the API correctly.

Fantasy Football Transactions Automation/Scraping

I developed a console application that scraped information from ESPN and Yahoo and automated the process of doing fantasy football, waiver wire ads.

The application automatically logs into a user account at Yahoo or ESPN and searches for players to add. After that, it designates a player on the current roster to drop and executes a transaction if the button states the waiver period as open.

The application used Selenium and Chrome Web Drive to perform browser automation and scrape data.

Slack Car Number Bot

https://www.giorgi.dev/portfolio/carbot/
At one of the companies I worked for, the parking space was often crowded, and it was common for someone to park a car so that it was blocking another car.

I built an SQLite database of the car owners and wrote a bot so that you could send a message to it, and it would reply with the owner's name and mobile phone.

USA 2 Georgia Calculator

USA2Georgia is a freight forwarder company that ships items from the USA to my home country (which isn't supported by Amazon).

They charge $8 per kilo, so I decided to write a small extension for amazon.com, which calculates the shipping cost for the item based on shipping weight and item dimensions.

COVID-19 Fund Donations Visualization

A website to visualize donations made in Georgia for fighting the COVID-19 virus and supporting the country overall. The front end was built with Highcharts, and data was loaded from Google Sheets.

CI/CD for Web Apps and Windows Services

Implemented CI/CD for web applications and Windows services on Windows Servers.

Work Done:
Built pipelines for automatic builds in TeamCity on every commit in the Git repository. Used PowerShell with WebAdminstration and IISAdminstration PowerShell modules to automatically deploy web applications to IIS. Used PowerShell to manage and update local windows services to the latest version.

Payment Gateway Integration Demo Application

https://github.com/BankOfGeorgia/iPay-ASP.NET-Core
A demo web app showing how to integrate an online payment gateway.

Online payment gateway iPay.ge is the largest one in Georgia.

Built with ASP.NET Core and C#.

Twilio-based Two-way Communication Tool

I built a system for SMS-based communication with patients, collecting their responses and tracking message deliveries.

I used Twilio for sending messages, processing incoming messages, and doing phone number lookups.

Power Tags - Automate Tasks Via Your Calendar

https://www.powertags.com/
It's a Blazor-based dashboard for viewing your calendar events, automatically synced to a mobile app that results in an alarm or reminder.

I built custom billing logic for handling Twilio credits usage and mobile apps for iOS and Android with Xamarin and implemented push notifications for syncing new data.

Mobile App Automation with Selenium and Appium

Automation scripts and tests that I wrote for a mobile app with Selenium, Appium, and BrowserStack. I exposed tests as a web API with ASP.NET Core REST service. I also used the BrowserStack API to fetch test results and process them.

Child Care Seer | Back-end and Mobile App Development

https://www.childcareseer.com/
A cross-platform mobile app that I developed and maintained with Xamarin. I built a back-end API with ASP.NET Core, Entity Framework Core, and SQL Server. I also implemented push notifications with Amazon Simple Notification Service (Amazon SNS).

Spatial Data with .NET MAUI and Entity Framework Core

https://github.com/Giorgi/Maui-DotNetConf-Sample
This is a sample app and back-end code for my spatial data with Entity Framework (EF) Core and .NET MAUI session.

The code demonstrates how to work with spatial data with EF Core and ASP.NET and how to use .NET MAUI Map control.

The projects use the following libraries:

- NetTopologySuite
- NetTopologySuite.IO.GeoJSON
- Npgsql.EntityFrameworkCore.PostgreSQL && Npgsql.NetTopologySuite
- .NET MAUI Community Toolkit
- .NET Community Toolkit
- Refit

Languages

XML, SQL, C#, C#.NET, T-SQL (Transact-SQL), Java, JavaScript, GraphQL, HTML, HTML5, CSS, TypeScript, SAML, Python

Frameworks

.NET, ADO.NET, ASP.NET MVC, Entity 6, Entity 5, .NET Core, ASP.NET Core, ASP.NET Web API, ASP.NET, Razor, .NET 4, Mono, .NET 2, Windows PowerShell, ASP.NET Web Forms, AngularJS, Knockout (Knockout.js), Entity Framework Core, Swagger, OAuth 2, Bootstrap, Blazor, MVVM Light Toolkit, Angular, IdentityServer 4, Windows Presentation Foundation (WPF), Appium, Selenium, Ruby on Rails (RoR)

Libraries/APIs

Entity Framework, Windows Forms (WinForms), API Development, Node.js, AutoMapper, REST APIs, PayPal API, iTextSharp, jQuery, Xamarin.iOS, Xamarin.Android, ZeroMQ, Azure Blob Storage API, Stripe API, Stripe, Twilio API, Stripe Connect, MediatR, Highcharts, LINQ, Graph API, React, Vue

Tools

RestSharp, Git, Microsoft Visual Studio, Visual Studio, C#.NET WinForms, GitHub, NuGet, TeamCity, Jira, Wix, Hangfire, Microsoft Excel, xUnit, Stripe Checkout, AWS CodeCommit, Amazon CloudWatch, Kafka Streams, Terminal, Azure Active Directory B2C (ADB2C), Wix Installer, Azure DevOps Services, Azure App Service, Sentry, Infusionsoft, Amazon Simple Queue Service (SQS), BrowserStack, Elastic

Paradigms

Automation, Agile Software Development, Model View ViewModel (MVVM), Desktop App Development, Requirements Analysis, Mobile Development, ETL, Windows App Development, Microservices, DRY, Multi-platform Development, Clean Architecture, Cross-platform, RESTful Development, Database Design, REST, Design Patterns, Unit Testing, Test-driven Development (TDD), Azure DevOps, Scalable Application, Desktop Web Design, Building Information Modeling (BIM), KISS, Management, DevOps

Platforms

Windows, Xamarin, Android, Azure, Mobile, Desktop, Oracle Database, Windows Desktop, Windows UI, Windows Server, Oracle, iOS, Amazon Web Services (AWS), Twilio, AWS Lambda, Azure Functions, Telerik, Amazon, MvvmCross, Firebase, AWS Elastic Beanstalk, Amazon EC2

Storage

JSON, Microsoft SQL Server, Database Architecture, Relational Databases, SQLite, Databases, SQL Server Integration Services (SSIS), SQL Server Reporting Services (SSRS), SQL Server DBA, PostgreSQL, MySQL, RDBMS, Amazon Aurora, Azure SQL, Azure Cosmos DB, Azure Queue Storage, Azure Blobs, MongoDB, Elasticsearch

Other

Windows 10, API Integration, Fintech, IIS, Integration, Windows Services, APIs, Web Scraping, Web Development, Mobile Apps, Mobile App Development, Software Architecture, Architecture, Windows Desktop Software, Software Design, Scalable Architecture, Code Review, Back-end, Cloud Platforms, Full-stack Development, Technical Leadership, .NET MAUI, Google Play Store, Solution Architecture, App Store, Identity & Access Management (IAM), Data Engineering, SDK Development, SDKs, WCF Web Services, Windows Communication Foundation (WCF), IMAP, .NET 6, Teamwork, Chatbots, Bluetooth, PayPal, Writing & Editing, Payment Gateways, Systems Analysis, OAuth, Ajax, Multithreading, Xamarin.Forms, Data Scraping, Scraping, Single Sign-on (SSO), Data Architecture, SSRS Reports, SQL Server Administration, Data Analysis, Code Coverage, Microsoft Azure, IPC, WebSockets, CI/CD Pipelines, LDAP, Leadership, Stripe Payments, Security, Full-stack, CRM APIs, AWS Cloud Architecture, Online Payments, Data Structures, Cloud Architecture, Full-text Search, Engineering Management, Delivery Management, Telnet Protocol, OpenID Connect (OIDC), SOLID Principles, Data Modeling, Domain-driven Design (DDD), Scripting, Payment APIs, Extensions, Xamarin.Mac, English, DevOps Engineer, Cloud, Push Notifications, Microsoft Graph API, Webhooks, Teams, Engineering, Computer Science, Amazon RDS, RFID, Offline Data Entry, Offline Data Synchronization, pgvector

2004 - 2008

Bachelor's Degree in Computer Science

Tbilisi State University - Tbilisi, Georgia

MARCH 2023 - MARCH 2026

AWS Solutions Architect Associate

Amazon Web Services

JUNE 2022 - JUNE 2024

Azure DevOps Engineer Expert

Microsoft

MAY 2022 - MAY 2024

Azure Developer Associate

Microsoft

AUGUST 2007 - PRESENT

B2 Business Vantage

Cambridge Assessment English

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