Levan Gagnidze, Developer in Tbilisi, Georgia
Levan is available for hire
Hire Levan

Levan Gagnidze

Verified Expert  in Engineering

Architecture Developer

Location
Tbilisi, Georgia
Toptal Member Since
January 28, 2017

Levan possesses more than a decade of experience as a full-stack developer—developing systems from highly scalable enterprise-wide financial applications to mobile application development. His main goal is to provide high-quality products to the client on time. Levan's major strengths are his adaptability and clear communication and his continuous focus on the details in order to get the project done.

Portfolio

JSC TBCBank
.NET, C#.NET, Microservices, Docker, Kubernetes
Self-employed
Core, C#.NET
JSC TBC Bank
Agile Software Development, JavaScript, SQL Server 2016, REST APIs, C#.NET, Git...

Experience

Availability

Full-time

Preferred Environment

Git, Visual Studio, Xcode, MacOS, Windows, Visual Studio Code (VS Code)

The most amazing...

...thing I've coded was an algorithm that calculated the effective rate of return (XIRR) using the Newton polynomial approximation.

Work Experience

Software Architect, Team Lead

2021 - PRESENT
JSC TBCBank
  • Separated monolithic applications into microservices. Added observability and monitoring functionality. The existing OpenAPI solution was divided into smaller, more self-contained APIs (NetCore).
  • Implemented entire SDLC for microservices, including Azure DevOps Yaml based pipelines, high-level code coverages for unit testing, security code scanning, CI/CD process for deploying on Kubernetes cluster. (AzureDevOps, NetCore, Docker, Kubernetes).
  • Worked on sandbox environment for OpenAPI solution. Mocked all backed microservices and implemented automatic deployment for Sandbox. Thus we achieved a very flexible and robust testing environment for our customers and the automatization team.
Technologies: .NET, C#.NET, Microservices, Docker, Kubernetes

Back-end Developer

2021 - PRESENT
Self-employed
  • Architected and developed middleware that served between tourism channel manager and PMS system.
  • Wrote wrapper API which abstracted PMS layer for channel manager internal core module. The wrapper was written on .NET Core technologies.
  • Published API for pushing PMS notifications to internal core module via RabbitMQ message broker. API was written on the .NET Core.
Technologies: Core, C#.NET

Associated Partner | Developer

2018 - PRESENT
JSC TBC Bank
  • Architected, designed, and developed an open API RESTful solution.
  • Created API proxies using a Google Cloud API gateway solution.
  • Architected and developed a type of middleware web API solution using .NET Core.
  • Integrated a .NET Core middleware and cloud proxies to an OAuth internal solution.
  • Automated deployment and E2E tests using CI/CD pipelines.
  • Implemented a consent management system for enterprise-wide open banking solutions.
Technologies: Agile Software Development, JavaScript, SQL Server 2016, REST APIs, C#.NET, Git, OAuth, RESTful Development, OpenAPI, .NET Core

Solution Architect

2020 - 2022
JSC TBC Bank
  • Implemented an open banking solution based on PSD2 regulation.
  • Secured an API using mTLS OAuth. Worked on message digital signing and verification, the end-user consent management module, and the integration with an HSM module.
  • Designed micro-service architecture and implemented a collection of loosely coupled services.
  • Integrated to third-party providers: a strong customer authentication module, banks core APIs, and log management software.
Technologies: Agile Software Development, .NET Core, JavaScript, SQL Server 2016, REST APIs, C#.NET, Google Cloud API

Senior Back-end Developer

2021 - 2021
Nugios Tehcnolgies
  • Integrated travel agencies using property management system (PMS) protocol (RestAPI/XML, NetCore).
  • Integrated Dubai direct channel to the current core system. Integration was done based on provided IFA. Docker containers for microservices were created and deployed using Docker-compose (RestAPI, NetCore, Docker).
  • Worked on synchronization between the current core system and tour operator company. APIs were published for pushing balk-based tours information to the system (RestAPI, NetCore, MS SQL, Dapper).
Technologies: .NET, SQL, Dapper

Senior Full-stack Developer

2021 - 2021
ASD.ai
  • Developed back-end RESTful APIs and integrated API for the iOS application (Swift, NetCore, MongoDB).
  • Created back-end API for Apple subscriptions (auto-renewable) utilizing Apple's Server-Side API. Implemented the following functions: retrieving the subscription status, transaction history, and refund.
  • Implemented Azure functions for scheduled jobs. Updated MongoDB records based on business logic and added monitoring and traceability to protect sensitive data using Azure Key Vault service. (Azure, Net Core).
  • Integrated Firebase Auth for Razor Page application, including authentication, password reset, and password renewal. (Firebase REST API, Net Core, Razor Pages).
Technologies: Swift, Azure, C#.NET, API Integration, Firebase, MongoDB

iOS Swift Developer

2019 - 2020
Betbull
  • Developed iOS views loaded with animations. Each view contained more than 20 subviews created and placed programmatically without using storyboards.
  • Placed views and subviews programmatically using auto layout.
  • Implemented RESTFul services to load assets and appropriate data from back-end services.
  • Developed core and UIView animation to accelerate rendering and optimize animation.
  • Used trigonometry to calculate angles, spinning, and rotation of views on the screen.
  • Used GitLab as the main source control repository.
Technologies: JavaScript, iOS, REST APIs, Swift 3, Auto Layout, Core Animation, Swift

System Integrator

2012 - 2016
JSC TBC Bank
  • Analyzed business requirements—based on business requirements designing services and events; using the PowerDesigner tool.
  • Developed SOAP and REST services using C# (.NET) and TIBCO BW.
  • Created a messaging system using JMS message broker.
  • Developed adapter services for the database and file system.
  • Modeled an enterprise-wide data model: a canonical data model. Using UML class diagrams, it involved modeling entities, relations, aggregations, and associations.
  • Generated XSD schemas for future service/event development.
  • Produced an integration catalog (a catalog for enterprise-wide services and events).
  • Interfaced agreement documents for service consumers and event subscribers.
  • Devised administration and deployment guidelines for the system and DB administrators.
  • Wrote unit tests on Java for TIBCO services and unit tests for .NET services.
Technologies: TIBCO Enterprise Message Service (EMS), Agile Software Development, REST APIs, SQL, SOAP, RESTful Services, TIBCO BusinessWorks, Service, Service-oriented Architecture (SOA), TIBCO, XSLT, XPath, JMS, Java, C#, .NET

Mobile and Flash Game Developer

2011 - 2016
Freelance Work
  • Developed a Facebook game using Flash technologies. The game was a puzzle with six levels and a leaderboard using the Facebook API.
  • Built an arcade-type game on Flash technologies for Facebook. The game had ten levels and a leaderboard using the Facebook API.
  • Constructed a mobile game for iOS and Android. It was an arcade-type game for mobile. The game was developed using Adobe AIR technologies.
  • Created a mobile game on Unity. The game was developed using Unity and C# for iOS and Android. The game was a 2D arcade with a leaderboard (game center) and an iAds integration.
  • Crafted an iOS mobile game on Unity. It was a 3D game in a "cross-the-road" style with iAds integration. The project was not completed.
  • Developed a mobile internet banking application for a micro-financial company. The application was developed using Swift and Objective-C on iOS.
  • Built a mobile application for a bank's currency exchange rates. The application was developed using Swift and Objective-C on iOS. The main functionalities were fetching currency exchange rates or notifying about changes using notification services.
Technologies: iOS, Swift 3, Flash ActionScript, AS3, Flash, C#, Unity, Objective-C, Swift

Senior Software Developer

2006 - 2011
JSC TBC Bank
  • Led and managed the software developer team.
  • Helped business representatives to analyze and provide cutting-edge user stories and tasks for the developer team.
  • Amended old-style applications by rewriting obsolete software with new technologies.
  • Planned the testing and deployment process.
  • Coordinated and implemented the end-to-end, unit, and functional testing.
  • Designed and architected solutions for future development.
Technologies: SQL Server 2016, iOS, Swift 3, C#.NET, SQL, Microsoft SQL Server, C#, .NET, C++

Software Developer

2005 - 2007
JSC TBC Bank
  • Built and developed a credit management application. The application had about 100 forms and was used by 1,000 customers.
  • Developed a credit pipeline application. It was used to fill credit applications, asses risks, make decisions, and manage credit origination flows and withdrawals. It was used by ~1,000 customers.
Technologies: SQL Server 2016, SQL, Microsoft SQL Server

Software Developer

2004 - 2005
JSC Cartu Bank
  • Created an applications salary project. Based on an Excel file importing salary project customers and transferring their salaries to their accounts. It checked balances and validated input data.
  • Built an application for managing bank safes boxes—it helped with managing which box is reserved and which one is not, the pricing of the boxes, managing the paper work for customers (signing the documents), and processing all the appropriate accounting transactions in a general ledger module.
  • Developed a reporting module. It fetches a money transfer report based on the date interval; it also does filtering, grouping, and importing all necessary data into an Excel and Word file.
Technologies: SQL Server 2016, SQL, Oracle, C, C++

Run Aggregation

The "RunAggr" class obtains an array of runs as an input parameter of an initializer. After that, the initialization "runsPerWeek" contains the array. Each array element is an array of runs grouped by a week number. So, for example, "runsPerWeek[0]" has runs whose week number is the same. This code was used to group runs per week and then calculate the average pace and total distance for a specific week on the application's client side.

Open API Platform for the TBC Bank

https://developers.tbcbank.ge
I developed TBC Bank's open API platform for developers. I led the development of all the APIs and published them on the portal.

Languages

Swift, C#, SQL, C#.NET, Swift 3, Objective-C, XPath, HTML, ActionScript 3, C++, JavaScript, XSLT, C, Java, AS3, Flash ActionScript

Frameworks

UIKit, .NET Core, ASP.NET MVC 3, Unity, Core Data, Core Location, .NET, AngularJS

Libraries/APIs

REST APIs, JMS, Node.js, Google Cloud API, OpenAPI, Core Animation

Tools

Git, TIBCO Enterprise Message Service (EMS), Subversion (SVN), Xcode, Flash, Auto Layout, Apple Push Notifications, Dapper

Paradigms

Unit Testing, Agile Software Development, Functional Programming, Serverless Architecture, Service-oriented Architecture (SOA), RESTful Development, Microservices

Platforms

iOS, Firebase, AWS Lambda, Windows, Oracle, Azure, Docker, Kubernetes, Visual Studio Code (VS Code)

Storage

SQL Server 2016, MySQL, Microsoft SQL Server, MongoDB, Databases

Other

RESTful Services, OAuth, Architecture, SOAP, Gaming, Software Project Management, Message Queues, TIBCO, Service, TIBCO BusinessWorks, Core, API Integration, IT Management, Computer Science, Mathematics, Calculus, Linear Algebra, Graph Theory, Networks, Applied Mathematics

2008 - 2009

Certificate in IT Management and Operations

European School of Management - Tbilisi - Tbilisi, Georgia

2005 - 2006

Master's Degree in Applied Mathematics and Computer Science

Tbilisi State University - Tbilisi, Georgia

2000 - 2004

Bachelor's Degree in Applied Mathematics and Computer Science

Tbilisi State University - Tbilisi, Georgia

JULY 2018 - PRESENT

Intermediate iOS 10 — Advance Your Skills

Udemy

JUNE 2017 - PRESENT

Machine Learning A-Z™: Hands-On Python & R In Data Science

Udemy

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