About Me
• Twenty seven years of commercial hands-on software development
• Experience with development of b2b, healthcare, finance, hospitality, entertainment, social, IoT, customer service, decision making and content manag…
• Twenty seven years of commercial hands-on software development
• Experience with development of b2b, healthcare, finance, hospitality, entertainment, social, IoT, customer service, decision making and content management software
• Experience with development of distributed systems, full stack development of web applications, development of APIs, multiplatform client side applications and system software
• Experience with Windows and Linux, Python/Java/C++ stacks, SQL and noSQL DBs, various App Servers, distributed frameworks like Thrift(gPRC) and tons of APIs & SDKs
• Experience with working in startup companies. Understanding of startup culture
• Experience with outsourcing and geographically dispersed teams
• Worked on projects on my own / Led teams of 3 to 12 people
• There are number of projects I'm really proud to be a part of.
Experience
Founding Senior Software Developer/Architect
<p>Worked on a Django-based hospitality solution.<br>
Used Django, Celery, Django REST Framework, Stripe API, PyTest, GitHub Actions, Redis, PostgreSQL, PostGIS, Vue, and Cypress.<br>
Helped create the solution from scratch with two other people.<br>
Split the backend into apps.<br>
Defined the front end - backend interface.<br>
Designed backend for 2 apps.<br>
Set up policies for logging and pull requests.<br>
Implemented a logging subsystem extending Django logging.<br>
Designed and implemented backend business logic for several apps.<br>
Tracked technical debt.<br>
Created a ChatGPT client.<br>
Rewrote the ChatGPT client to use async IO to boost performance.<br>
Worked on rewriting and storing images into Cloudflare Cache (CDN).<br>
Implemented a fraud prevention subsystem.<br>
Performed performance optimizations using DataDog.<br>
Created a test system using GitHub Actions for pull request testing.<br>
Worked with the Stripe API.<br>
Was responsible for the full cycle of releases.</p>
Founding Senior Software Developer/Architect
Hospitality. Django based solution. Backend: Django, Celery, Django REST Framework, Stripe API, PyTest, GitHub Actions, Redis, PostgreSQL, PostGIS. Frontend: Vue, Tests pytest, Cypress
Senior Software Developer
<p>Worked on the new generation of a healthcare system.<br>
Used Python, Flask/FastAPI microservices, FHIR interface, GraphQL, PostgreSQL/MongoDB, Braintree interface, AWS, JWT, RabbitMQ, GitHub Actions, and Docker.<br>
Created a framework to use FastAPI instead of Flask.<br>
Ported several microservices from Flask to FastAPI.<br>
Worked on AWS authentication and authorization.<br>
Improved performance of 2 microservices.<br>
Refactored 1 microservice to streamline design and implementation.<br>
Created a library to work with PostgreSQL and MongoDB at the same time.<br>
Abstracted database differences for business layer functionality.<br>
Created 2 AWS Lambda functions for Braintree input and internal business logic.<br>
Optimized Docker scripts.<br>
Worked extensively with the FHIR API while implementing and changing business logic and handling issues.</p>
Senior Software Developer
Healthcare. Worked on the new generation of the system. Backend: Python, Flask/FastAPI microservices, FHIR interface, GraphQL, PostgreSQL/MongoDB, Braintree interface, AWS(API Gateway, Cognito, Lambda, EC2, Elastic), JWT, Rabbit MQ, GitHub actions, Docker
Senior Software Developer
<p>Worked on a finance data delivery team.<br>
Streamed data from front offices to a Hadoop cluster.<br>
Used Java Spring Boot, Python, Apache Airflow, Hadoop, Docker, Kubernetes, Helm, PyTest, JUnit, and Mockito.<br>
Created Java Spring Boot streaming applications for a new generation of API.<br>
Transformed data using Airflow to insert data into a Hadoop data lake.<br>
Created Python Airflow components.<br>
Created a data interface for Hadoop Data Lake.</p>
Senior Software Developer
Finance. Data delivery team. Streaming data from front offices to Hadoop Cluster. Applications using Java Spring Boot, Python using Apache Airflow, Hadoop, Docker, Kubernetes/Helm
Founding Full Stack Software Developer/Architect/Tech Project Manager
<p>Worked on a social Django-based solution.<br>
Used JavaScript, Bootstrap, Django, Python, PostgreSQL, Heroku, AWS EC2, AWS RDS, AWS S3, CloudFormation, Fastly, Google Analytics, and Google Tag Manager.<br>
Moved the system from Heroku to AWS.<br>
Moved static content to CDN.<br>
Improved performance across the full stack.<br>
Hooked up analytics using Google Analytics and Google Tag Manager.<br>
Developed new functionality for users and back office.<br>
Developed an Ethereum smart contract for ICO using Solidity 5.</p>
Founding Full Stack Software Developer/Architect/Tech Project Manager
Social media Platform. Django-based solution. JS(Bootstrap)/Django(Python)/PostgreSQL. Hosted first on Heroku, then on AWS(EC2, RDS, S3, Cloud Formation)
Senior Software Developer
<p>Worked on a customer service digital platform that unifies text messaging, social media, and web.<br>
Used Ruby, Java, Node.js, MongoDB, RabbitMQ, and Docker.<br>
Designed and implemented a caching subsystem.<br>
Added support for GNIP 2.0 API.<br>
Added support for Facebook private messages.<br>
Developed an internal API using Web Services and JSON.<br>
Developed business logic for various microservices.<br>
Switched the middle layer to a RabbitMQ cluster.<br>
Created new reports.<br>
Optimized performance of existing reports.<br>
Worked on internal message routing.<br>
Worked on reporting.</p>
Senior Software Developer
Customer Service. Digital customer service platform that unifies text messaging, social media and web. Chatbots. Ruby for frontend, Java & Node.js for middleware, Mongo DB as database, RabbitMQ as messaging layer. Docker.
Full Stack Software Developer
<p>Worked on an IoT end-to-end product for monitoring and reporting.<br>
Used Python, Java, CouchDB, Redis, AWS SQS, Flash, ActionScript, MapQuest, AngularJS, Tornado, Jersey, JAX-RS, JAXB, Jackson, Ant, JavaScript, and Piwik.<br>
Changed the bridge implementation from Java to Python multiprocessing.<br>
Added support for BACnet protocol and WebSockets interface.<br>
Implemented a user analytics portal backend using Web Services.<br>
Added more functionality to the web client using ActionScript.<br>
Implemented heat maps, image uploading and processing, grids, forms, and graphs.<br>
Implemented a build system for Java components using Ant.<br>
Added new features for pipeline J2SE servers and CouchDB.<br>
Implemented a solution to intercept videos with pre-roll, mid-roll, or post-roll ads for flash and non-flash players with stats collection.<br>
Created a light web client using AngularJS.</p>
Full Stack Software Developer
IoT. End-2-end product for monitoring and reporting. All the way from sensors to analytics. Both hardware & software.
Python(multiprocessing) for hardware interface component a.k.a. Bridge. Java (Servlets, Web Services) for pipeline servers. CouchDB for data, Redis as cache, AWS SQS as messaging solution. Flash/Actionscript ,MapQuest and AngularJS for 2 different web clients. Tornado web server.
Founding Software Developer /Architect
<p>Worked on a newsletter creation product with easy UI, predicted relevant content, efficient sending, and analytics.<br>
Used Python, Celery, RabbitMQ, MongoDB, PostgreSQL, Redis, Django, Backbone, Gensim, Amazon EC2, and Amazon S3.<br>
Performed initial architecture work and 2 major refactorings to address performance and scalability issues.<br>
Developed algorithms for content prediction.<br>
Worked on topic modeling with the creator of the Gensim library.<br>
Built a mailer solution for fast rendering and sending large amounts of emails.<br>
Worked on content and analytics involving both databases and application servers.<br>
Created the API for the frontend.<br>
Integrated Twitter, LinkedIn, Eloqua, and other third-party systems using REST and OAuth2.<br>
Worked on SRED.</p>
Founding Software Developer /Architect
Product for creating newsletters: easy UI, predicted relevant content, efficient sending, analytics, Machine learning.
Built using: Python/Celery using RabbitMQ as a broker. MongoDB for analytics, PostgreSQL for content, Redis as cache. Django/Backbone for webservers. Gensim for topic modeling. Interfaces with Eloqua, Salesforce, Embedly, Twitter & Linkedin. Exposes its own REST API. Hosted on Amazon: EC2 & S3.
Software Developer
<p>Worked on an online content discovery and curation service.<br>
Used Python, C++, Thrift, MongoDB, Java, and Redis.<br>
Developed middle layer servers for large-scale data processing, caching, and transport.<br>
Created a common framework for middleware servers.<br>
Was involved in defining the architecture of the whole system.<br>
Worked on performance improvements.</p>
Software Developer
Online content discovery and curation service. TechCrunch50 finalist.
Stack: LAMP (Python), C++/Thrift – performance critical components, MongoDB, Java for some components, Redis.
Development Manager / Architect
<p>Built a backend system from scratch for touch screen entertainment machines.<br>
Led the Web/DB department responsible for a distributed multi-tier system.<br>
Managed 3 local teams.<br>
Managed a remote team.<br>
Worked on architecture.<br>
Worked on performance improvements of the game server for mobile clients.<br>
Worked on post-manufacturing sequence of automatic installation, self-configuration, and registration of the client music device.<br>
Redesigned the transport layer using a new custom protocol and Apache MINA.<br>
Worked on a recommendation engine for music search results.<br>
Worked on SRED.</p>
Development Manager / Architect
Backend system from scratch for existing touch screen entertainment machines. Java, C++
Real time financial transactions, multiplayer games, streaming of music (including software for in-house made music device), support for thin mobile clients. Still on the market.
Team Lead Servers / Lead Developer
<p>Led the Application Servers team responsible for 4 J2EE servers.<br>
Worked on Gaming Portal, Payments server, Affiliates server, and Administration server.<br>
Participated in creation of the prototype covering main integration points within the system.<br>
Defined technologies to be used in Java servers.<br>
Built a communication link between Gaming Portal server and Gaming Proxy server.<br>
Worked on a proprietary binary protocol over TCP-IP.<br>
Performed performance tuning.<br>
Adjusted the system for clustered Oracle.<br>
Worked on replication of JBoss servers using AOP.<br>
Analyzed potential security issues in web servers.<br>
Was responsible for certification of Java servers for payment processors.<br>
Worked on SRED.</p>
Team Lead Servers / Lead Developer
SkillGround is an online multiplayer arena where gamers can play videogames head-to-head. The challenge is designed so that players can select opponents of a similar skill level. Was online for 3 years (2006-2009).
Team Lead Servers /Lead Developer
<p>Worked on a C3D Casino platform, a distributed server platform, casino application, games, and a 3D client.<br>
Worked first as a client developer, then as a server developer, then led the server team.<br>
Designed and implemented a common component to support card table games.<br>
Designed and implemented a client framework for non-game related functionality.<br>
Designed and implemented an extension to the network protocol for multiplayer games.<br>
Designed a routing layer within the messaging subsystem.<br>
Conducted design reviews for components.<br>
Provided high-level design and implementation of the failover mechanism for the distributed server application.<br>
Participated in refactoring of the transport layer.<br>
Optimized threading and resolved bottlenecks from performance tests.</p>
Team Lead Servers /Lead Developer
C3D Casino platform – a distributed server platform, casino application, a set of games and a 3D client.
Server: C++, Solaris (server was done from scratch using proprietary technologies) STL, Oracle DB
Client: C++, Direct X
Senior Software Developer
<p>Worked on Immersion cinema and Poetic Dimensions Real Time server and controller products.<br>
Worked in the Core team.<br>
Used C++, MFC, STL, ATL, MSVC, DirectShow, Macromedia Director, IRIX, OpenGL Performer, TCP/IP, Windows, and MFC.<br>
Designed and developed key modules for the Immersion backbone using COM/ATL.<br>
Developed a data transfer module with an implementation of a Reliable UDP protocol.<br>
Developed a registration module.<br>
Designed and developed a new version of the communication protocol between the PDRT server and controller.<br>
Designed and developed a new user interface for the PDRT controller.</p>
Senior Software Developer
<p>Worked on Hotline 2.0, a multiplatform file sharing and exchange system.<br>
Worked in the UI team.<br>
Used C/C++, TCP/IP, HTTP, SMTP, STL, COM, MSVC, and CodeWarrior.<br>
Developed an end-to-end file transfer subsystem.<br>
Worked on low-level Winsock and TCP/IP.<br>
Worked on the Hotline protocol.<br>
Worked on the Hotline middleware.<br>
Worked on the GUI.<br>
Designed and developed XML structures describing transfers.<br>
Refined the low-level connection mechanism between the client and the server.<br>
Added support for resumable transfers.<br>
Designed and developed support for Windows shortcuts for file sharing and transfer subsystems.<br>
Designed and developed Community and Service modules.<br>
Improved drag-and-drop support on Windows.<br>
Developed several widgets such as tables, trees, and special combo boxes.</p>
Software Developer then Senior Software Developer
<p>Worked on TechOptimizer 2.5, 3.0, and 3.5.<br>
Worked in the TechOptimizer team.<br>
Used C++, MFC, UML, Design Patterns, STL, ATL, MSVC, and DirectShow.<br>
Took part in creation of the project structure.<br>
Designed the data model of Chart.<br>
Implemented advanced features of the Chart graphical editor.<br>
Implemented an animation subsystem for the Chart graphical editor.<br>
Developed a tool for creating and managing the internal database using CodeBase SDK.<br>
Created report-related widgets.<br>
Developed a viewer for files in VRML format using Direct3DRM.<br>
Created a storing mechanism for voice comments.</p>
Coop Terms
<p>Implemented search mechanisms.<br>
Implemented simple class hierarchies.<br>
Created user interface for internal tools.<br>
Tested different modules.<br>
Performed usability testing.<br>
Performed stress testing.<br>
Developed Help system using Help compiler.</p>