Giorgi Dalakishvili, Software Developer in Tbilisi, Georgia
Giorgi Dalakishvili

Software Developer in Tbilisi, Georgia

Member since June 12, 2015
Giorgi is a software developer with more than a decade of experience. He has worked on a wide variety of applications including mobile applications, console applications/windows services, large web applications, REST Apis, web services, and desktop/Mac apps. He also maintains several open-source projects on GitHub. He works mainly with C#, Xamarin, SQL Server, Oracle, ASP.NET, ASP.NET Core MVC, Entity Framework, Android, iOS, and WinForms.
Giorgi is now available for hire

Portfolio

Experience

Location

Tbilisi, Georgia

Availability

Part-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 protect the APIs with root permissions.

Employment

  • 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 together along with all 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: SQL Server, T-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#
  • Freelance Software Engineer

    2019 - 2019
    PDX Web Properties, LLC (via Toptal)
    • Built an Android/iOS application for the Talk Python Training website.
    Technologies: Xamarin Forms, Mobile App Development, REST, .NET, iOS, Android, C#, Xamarin
  • Freelance Software Engineer

    2014 - 2016
    Idencia
    • Built a quality-control data-collection system that works on Android and iOS.
    • Implemented a REST API with ASP.NET Web API for synchronizing data between mobile apps and application servers.
    Technologies: SQL Server, Mobile App Development, REST, Azure, .NET, ASP.NET Web API, iOS, Android, MvvmCross, Xamarin
  • 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 API, C#
  • 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: SQL Server, T-SQL, Entity Framework, Windows Server, .NET, ADO.NET, Windows Services, Microsoft SQL Server, ASP.NET MVC, C#
  • 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: SQL Server, T-SQL, .NET, ADO.NET, LINQ, Microsoft SQL Server, ASP.NET, C#
  • 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 for multiple internal reports used by the bank.
    • Maintained and added new features to the debit card registration web system.
    • Maintained database backups and indexes.
    • Built an ASP.NET-based internal application for periodically sending data to the central bank.
    Technologies: SQL Server, T-SQL, .NET, ADO.NET, Microsoft SQL Server, ASP.NET, C#
  • 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 MSSQL 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: SQL Server, T-SQL, .NET, ADO.NET, WinForms, Microsoft SQL Server, C#

Experience

  • Talk Python Training Mobile Apps (Development)
    https://itunes.apple.com/us/app/talk-python-training/id1460583670

    Talk Python Training Mobile Apps are mobile apps for Android and Apple for Talk Python Training website. More information can be found at the link below.
    • 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 (Development)
    http://www.scrubbly.com/

    Scrubbly cleans a multi-column mailing list against an encrypted (or even 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.
    • Used SQLite for processing multiple gigabytes of data.

  • Idencia (Development)
    https://play.google.com/store/apps/details?id=com.idencia.apk

    Idencia is a powerful, yet simple to use. It's a quality control data collection system for the manufacturing industry that works 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 that runs on any Android device to collect the information following the simple step-by-step process.

    Work Done:
    • Built a cross-platform (Android and iOS) app by using MvvmCross (an MVVM library for Xamarin).
    • Integrated several Bluetooth scanner devices by building Xamarin binding for the native libraries used by the devices.
    • Implemented direct-image uploads to Microsoft Azure blob storage from the mobile app.
    • Optimized synchronization between mobile and web apps by removing extra data.

  • Better Open With (Development)
    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 having to choose only one default app handler when you click a file type, and without having to choose between "only once" and "always"!

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

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

  • Trivia Buff (Development)
    https://play.google.com/store/apps/details?id=com.trivia.buff

    An Android application for Reddit's Today I Learned subreddit.

  • LINQPad.QueryPlanVisualizer (Development)
    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 at the .NET blog in their weekly review of .NET projects.

  • EntityFramework.Exceptions (Development)
    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 find out whether the exception is caused by 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 (Development)
    http://www.australiaondisc.com/db/australian-business-database/

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

    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.
    • Built an installer together with uninstaller using Windows Installer XML.

  • New Zealand Business and Residential Database (Development)
    https://uniteddirectorysystems.com/products/new-zealand-database/

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

    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.
    • Built an installer together with uninstaller using Windows Installer XML.

  • Notifications Off (Development)
    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 application is not public so I had to search the Android source code to discover the API and to find a way to use the API correctly.

  • Fantasy Football Transactions Automation/Scraping (Development)

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

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

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

  • Slack Car Number Bot (Development)

    At one of the companies that 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 (Development)
    https://chrome.google.com/webstore/detail/usa-2-georgia-calculator/cemomijekgldflefedelnepollnabohb

    USA2Georgia is a freight forwarder company which ships items from 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 shipping cost for the item based on shipping weight and item dimensions.

  • COVID-19 Fund Donations Visualization (Development)
    https://coviddonations.ge/

    A website for visualizing donations made in Georgia for fighting the COVID-19 virus and supporting the country overall. It was built with Highcharts.js.

  • CI/CD for Web Apps and Windows Services (Development)

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

    Work Done:
    • Built pipelines for automatic builds in Teamcity on every commit in Git repository.
    • Used PowerShell together with WebAdminstration and IISAdminstration PowerShell modules for automatic deployment of web applications to IIS
    • Used PowerShell for managing local windows services and updating them the latest version

  • C# Best Practices and Tips by Toptal Developers (Publication)
    This resource contains a collection of best practices and tips for C#, provided by our Toptal network members.

Skills

  • Languages

    XML, SQL, C#, C#.NET, T-SQL, Java, JavaScript, GraphQL, HTML, HTML5, CSS
  • Frameworks

    .NET, ADO.NET, ASP.NET MVC, Entity 6, Entity 5, ASP.NET Web API, ASP.NET, Razor, Windows PowerShell, Windows Communication Framework (WCF), ASP.NET Web Forms, AngularJS, Knockout.js, Entity Framework Core, .NET Core, ASP.NET Core, Swagger, OAuth 2
  • Libraries/APIs

    WinForms, Entity Framework, Windows Forms, AutoMapper, REST APIs, PayPal API, iTextSharp, jQuery, Xamarin.iOS, Xamarin.Android, ZeroMQ, Azure Blob Storage API, REST API, LINQ
  • Tools

    Microsoft Visual Studio, Visual Studio, C#.NET WinForms, NuGet, TeamCity, Jira, Git, WiX, Hangfire, Microsoft Excel, SSRS, xUnit, WiX Installer
  • Paradigms

    Automation, Database Design, REST, Design Patterns, Agile Software Development, Unit Testing, Cross-platform, Model View Viewmodel (MVVM)
  • Platforms

    Windows, Xamarin, Android, Windows UI, Windows Server, Oracle, Azure, Twilio, iOS, Amazon Web Services (AWS), MvvmCross
  • Storage

    JSON, Microsoft SQL Server, SQLite, Databases, Database Architecture, SQL Server Integration Services (SSIS), SQL Server Reporting Services (SSRS), SQL Server DBA, PostgreSQL, MySQL, RDBMS
  • Industry Expertise

    Fintech, Web Development
  • Other

    Windows 10, API Integration, IIS, SQL Server, Windows Services, Mobile Apps, Mobile App Development, Technical Writing, Chatbots, PayPal, Ajax, Multithreading, Xamarin Forms, APIs, Data Scraping, Scraping, Web Scraping, Single Sign-on (SSO), RESTful APIs, Data Architecture, SSRS Reports, SQL Server Administration, Data Analysis, Code Coverage, Microsoft Azure, Bluetooth, Scripting, AWS, Xamarin.Mac

Education

  • Bachelor's degree in Computer Science
    2004 - 2008
    Tbilisi State University - Tbilisi, Georgia

Certifications

  • B2 Business Vantage
    AUGUST 2007 - PRESENT
    Cambridge Assessment English

To view more profiles

Join Toptal
Share it with others