Vladimeri Natchkepia
Web / Software Developer
Name
Vladimeri Natchkepia
Birth Date
September 25, 1993
Web
Github
Email
contact@vnat.co
Mobile
+1 (929) 244 5665
Work History
2015 March - 2017 March
Web & Software Developer, Ops Divina, New York City
Ops Divina is a unique web design and internet solutions company founded by Gerhard Stubi and located in New York City. In my role, I was responsible for designing, developing, and maintaining websites to meet the specific needs of clients or organizations. This included everything from initial design concepts to ongoing updates and technical support to ensure optimal website performance.
2013 January - 2014 August
Software Developer, Agricultural Projects Management Agency (APMA), Georgia
As a software developer at the Agricultural Projects Management Agency (APMA), I played a role in advancing Georgia's agriculture sector by implementing cutting-edge technologies. My responsibilities included creating web and desktop applications, developing web services, managing bank transactions through SOAP / REST APIs and generating comprehensive reports.
2012 August - 2013 January
Web Developer, Liberty Bank, Georgia
I have been working on two projects:
PayStore - online marketplace.
eMoney - In my role, I was involved in developing an online payment platform similar to PayPal. My responsibilities involved designing and building secure and user-friendly website, integrating payment processing systems, ensuring compliance with financial regulations, and implementing security measures to protect user data and transactions..
2011 May - 2012 August
Web & Software Developer, Zero Studio, Georgia
In Zero Studio I was working on Facebook applications, games, websites and desktop applications. It was a time when Facebook games and applications were very popular. We created over 5 facebook games and lots of Facebook applications like photo albums for restaurants, touristic agencies, etc. But the main goal of Zero Studio was a project named Jobber. The idea of the project was to create a platform for employment job listings.
2010 August - 2011 February
Web Developer, GeoMegasoft, Georgia
GeoMegasoft was the place where I have completed Software Development course and the first company where I have started to work. My job was to maintain and create websites for the clients.
Skills
PHP (Object-Oriented Programming, RESTful API, SOAP Service)
The first programming language that I have learned after switching to web development. After years of working experience, it can be considered as my main programming language.
MySQL (PostgreSQL, MongoDB, Redis)
MySQL is a database that I use in most of my projects. Some projects require more complex database structure and in this case, I use PostgreSQL. I have used MongoDB and Redis in Node.JS applications.
HTML (HTML5, Canvas, SVG)
I had an experience with writing HTML code even before I have started learning programming languages. My first project was pure HTML, CSS made from scratch using tools like Adobe Dreamviewer.
After introduction of HTML5, I have completely switched from Macromedia Flash (Action Script 2 and 3) to Canvas and SVG. I have an experience with Canvas 2D and SVG Animations.
CSS (CSS3)
Every little piece in my project has to be animated if needed in a proper way. CSS3 has made the job easier by implementing transition, transform, animation properties which I actively use.
JavaScript (jQuery, AJAX)
jQuery is my main JavaScript library that I use.
I have used other JavaScript libraries like Angular.JS, Bootstrap, Chart.JS, CryptoJS, CoffeeScript and React in different projects.
C / C++ C#
I took Software Development course in GeoMegasoft to learn my first ever programming language, C / C++. After learning basics of programming, I preferred to switch to web development and started to work as a web developer in GeoMegasoft. Time after time I had to come back to desktop application development and I have been using C# as programming language in all of my desktop application projects.
My recent desktop application on Windows platform is Password Storage App. Application stores sensitive data using AES-256 cipher.
Java (Android SDK, Phonegap)
My first experience with Java was in 2013 when I found out that there will be a Hackathon in my city, where participants should present an Android application written in 2 days during the event. After one week of preparation and 2 days of development, me and my team presented a demo version of an Android application, which helped us to take first place in the competition. After this experience, I have been developing Android applications when needed.
Unity 3D (Blender, C#)
I had an idea to create a small game for iOS / Android platform. It was a first time I have used Blender to create 3D models for the game. As for game logic, I had two options, to use JavaScript or C# programming language. I had a pretty nice experience with both programming languages but I choose C# because of his flexibility. I have made a good choice because most recent Unity 3D version is no longer supporting JavaScript.
Node.JS (PM2, MongoDB, Redis)
It's one of my favorite programming languages when it comes to P2P socket connections, mostly used to connect front-end of the website with back-end of the linux server. With Socket.IO it's possible not only to request data from a client to server but send data from the server to client immediately. This opened a lot of opportunities for my projects.
One of my projects is chat application with client side encryption and P2P socket connection using Socket.IO. Application uses JSEncrypt library to generate public and private key pairs. After exchanging public keys with other clients, it uses CryptoJS library to encrypt and decrypt messages using AES cipher.
Linux (Installation & Configuration, Shell Scripting, Python, C)
After switching from shared hosting to a cloud server, I had to learn how to configure the server for my needs. Installing & configuring Apache, PHP, MySQL was the first thing that I have learned. After that, I have started to write custom Shell scripts.
To easily modify firewall settings I had to consider more advanced programming language. My first experience with Python was to write a script that will read YAML configuration file and modify firewall settings based on that file.
I have used C for creating executables to perform simple tasks, for example, restarting my Node.JS application.
List of different Linux distributions that I have worked on: Amazon Linux AMI, CentOS, Fedora, Ubuntu
Amazon Web Services (EC2, S3, Aurora, CloudWatch, Auto Scaling)
There's one project that explains my experience with AWS the most. Project which used Elastic Load Balancer and Auto Scaling Group to spawn new servers based on overall server load. Created pre-configured Amazon Machine Image (AMI) with Shell scripts to synchronize files from S3 storage after launching, on call, or when there's any changes in S3 file structure. All EC2 instances spawned by Auto Scaling Group was connected together with Elastic Load Balancer. Load Balancer was taking care of decision on which server requests should be sent. Aurora was used as database storage for all spawned servers.