Eugene Doktorov

Eugene Doktorov

Expert Backend Developer including Clouds, Some full stack. Architecture, Team Management.
Canada
English

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…

Experience

Founding Senior Software Developer/Architect

TripElephant, Remote
Aug 2021 - Present · 4 years 11 months

Worked on a Django-based hospitality solution.
Used Django, Celery, Django REST Framework, Stripe API, PyTest, GitHub Actions, Redis, PostgreSQL, PostGIS, Vue, and Cypress.
Helped create the solution from scratch with two other people.
Split the backend into apps.
Defined the front end - backend interface.
Designed backend for 2 apps.
Set up policies for logging and pull requests.
Implemented a logging subsystem extending Django logging.
Designed and implemented backend business logic for several apps.
Tracked technical debt.
Created a ChatGPT client.
Rewrote the ChatGPT client to use async IO to boost performance.
Worked on rewriting and storing images into Cloudflare Cache (CDN).
Implemented a fraud prevention subsystem.
Performed performance optimizations using DataDog.
Created a test system using GitHub Actions for pull request testing.
Worked with the Stripe API.
Was responsible for the full cycle of releases.

Founding Senior Software Developer/Architect

TripElephant
Jul 2021 - Present · 4 years 11 months

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

Zeel, Remote
Apr 2022 - Sep 2023 · 1 year 5 months

Worked on the new generation of a healthcare system.
Used Python, Flask/FastAPI microservices, FHIR interface, GraphQL, PostgreSQL/MongoDB, Braintree interface, AWS, JWT, RabbitMQ, GitHub Actions, and Docker.
Created a framework to use FastAPI instead of Flask.
Ported several microservices from Flask to FastAPI.
Worked on AWS authentication and authorization.
Improved performance of 2 microservices.
Refactored 1 microservice to streamline design and implementation.
Created a library to work with PostgreSQL and MongoDB at the same time.
Abstracted database differences for business layer functionality.
Created 2 AWS Lambda functions for Braintree input and internal business logic.
Optimized Docker scripts.
Worked extensively with the FHIR API while implementing and changing business logic and handling issues.

Senior Software Developer

Zeel
Apr 2022 - Sep 2023 · 1 year 4 months

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

Royal Bank of Canada, Capital Markets, Work from home
Apr 2020 - Aug 2021 · 1 year 4 months

Worked on a finance data delivery team.
Streamed data from front offices to a Hadoop cluster.
Used Java Spring Boot, Python, Apache Airflow, Hadoop, Docker, Kubernetes, Helm, PyTest, JUnit, and Mockito.
Created Java Spring Boot streaming applications for a new generation of API.
Transformed data using Airflow to insert data into a Hadoop data lake.
Created Python Airflow components.
Created a data interface for Hadoop Data Lake.

Senior Software Developer

Royal Bank of Canada
Apr 2020 - Jul 2021 · 1 year 3 months

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

bUnited Inc, Los Altos CA, Remote
Oct 2015 - Apr 2020 · 4 years 6 months

Worked on a social Django-based solution.
Used JavaScript, Bootstrap, Django, Python, PostgreSQL, Heroku, AWS EC2, AWS RDS, AWS S3, CloudFormation, Fastly, Google Analytics, and Google Tag Manager.
Moved the system from Heroku to AWS.
Moved static content to CDN.
Improved performance across the full stack.
Hooked up analytics using Google Analytics and Google Tag Manager.
Developed new functionality for users and back office.
Developed an Ethereum smart contract for ICO using Solidity 5.

Founding Full Stack Software Developer/Architect/Tech Project Manager

bUnited Inc
Sep 2015 - Apr 2020 · 4 years 6 months

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

In The Chat, Waterloo ON, Remote out of Toronto
Aug 2016 - May 2019 · 2 years 9 months

Worked on a customer service digital platform that unifies text messaging, social media, and web.
Used Ruby, Java, Node.js, MongoDB, RabbitMQ, and Docker.
Designed and implemented a caching subsystem.
Added support for GNIP 2.0 API.
Added support for Facebook private messages.
Developed an internal API using Web Services and JSON.
Developed business logic for various microservices.
Switched the middle layer to a RabbitMQ cluster.
Created new reports.
Optimized performance of existing reports.
Worked on internal message routing.
Worked on reporting.

Senior Software Developer

In The Chat
Jul 2016 - May 2019 · 2 years 9 months

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

Aretas Sensor Networks, Vancouver BC, Remote out of Toronto
Jan 2013 - Dec 2017 · 4 years 11 months

Worked on an IoT end-to-end product for monitoring and reporting.
Used Python, Java, CouchDB, Redis, AWS SQS, Flash, ActionScript, MapQuest, AngularJS, Tornado, Jersey, JAX-RS, JAXB, Jackson, Ant, JavaScript, and Piwik.
Changed the bridge implementation from Java to Python multiprocessing.
Added support for BACnet protocol and WebSockets interface.
Implemented a user analytics portal backend using Web Services.
Added more functionality to the web client using ActionScript.
Implemented heat maps, image uploading and processing, grids, forms, and graphs.
Implemented a build system for Java components using Ant.
Added new features for pipeline J2SE servers and CouchDB.
Implemented a solution to intercept videos with pre-roll, mid-roll, or post-roll ads for flash and non-flash players with stats collection.
Created a light web client using AngularJS.

Full Stack Software Developer

Aretas Sensor Networks
Dec 2012 - Dec 2017 · 4 years 11 months

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

Elevate, Toronto ON
Jan 2012 - Jul 2016 · 4 years 6 months

Worked on a newsletter creation product with easy UI, predicted relevant content, efficient sending, and analytics.
Used Python, Celery, RabbitMQ, MongoDB, PostgreSQL, Redis, Django, Backbone, Gensim, Amazon EC2, and Amazon S3.
Performed initial architecture work and 2 major refactorings to address performance and scalability issues.
Developed algorithms for content prediction.
Worked on topic modeling with the creator of the Gensim library.
Built a mailer solution for fast rendering and sending large amounts of emails.
Worked on content and analytics involving both databases and application servers.
Created the API for the frontend.
Integrated Twitter, LinkedIn, Eloqua, and other third-party systems using REST and OAuth2.
Worked on SRED.

Founding Software Developer /Architect

Elevate
Dec 2011 - Jul 2016 · 4 years 6 months

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

Thoora (subsidiary of Rogers Communications), Toronto ON
Jan 2010 - Dec 2011 · 1 year 11 months

Worked on an online content discovery and curation service.
Used Python, C++, Thrift, MongoDB, Java, and Redis.
Developed middle layer servers for large-scale data processing, caching, and transport.
Created a common framework for middleware servers.
Was involved in defining the architecture of the whole system.
Worked on performance improvements.

Software Developer

Thoora
Dec 2009 - Dec 2011 · 1 year 11 months

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

JVL Corporation, Concord ON
Jun 2008 - Sep 2009 · 1 year 3 months

Built a backend system from scratch for touch screen entertainment machines.
Led the Web/DB department responsible for a distributed multi-tier system.
Managed 3 local teams.
Managed a remote team.
Worked on architecture.
Worked on performance improvements of the game server for mobile clients.
Worked on post-manufacturing sequence of automatic installation, self-configuration, and registration of the client music device.
Redesigned the transport layer using a new custom protocol and Apache MINA.
Worked on a recommendation engine for music search results.
Worked on SRED.

Development Manager / Architect

JVL Corporation
May 2008 - Sep 2009 · 1 year 3 months

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

Groove Media Inc, Toronto ON
Apr 2006 - Jun 2008 · 2 years 2 months

Led the Application Servers team responsible for 4 J2EE servers.
Worked on Gaming Portal, Payments server, Affiliates server, and Administration server.
Participated in creation of the prototype covering main integration points within the system.
Defined technologies to be used in Java servers.
Built a communication link between Gaming Portal server and Gaming Proxy server.
Worked on a proprietary binary protocol over TCP-IP.
Performed performance tuning.
Adjusted the system for clustered Oracle.
Worked on replication of JBoss servers using AOP.
Analyzed potential security issues in web servers.
Was responsible for certification of Java servers for payment processors.
Worked on SRED.

Team Lead Servers / Lead Developer

Groove Media Inc
Mar 2006 - Jun 2008 · 2 years 2 months

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

Cryptologic Inc, Toronto ON
Aug 2004 - Apr 2006 · 1 year 8 months

Worked on a C3D Casino platform, a distributed server platform, casino application, games, and a 3D client.
Worked first as a client developer, then as a server developer, then led the server team.
Designed and implemented a common component to support card table games.
Designed and implemented a client framework for non-game related functionality.
Designed and implemented an extension to the network protocol for multiplayer games.
Designed a routing layer within the messaging subsystem.
Conducted design reviews for components.
Provided high-level design and implementation of the failover mechanism for the distributed server application.
Participated in refactoring of the transport layer.
Optimized threading and resolved bottlenecks from performance tests.

Team Lead Servers /Lead Developer

Cryptologic Inc
Jul 2004 - Apr 2006 · 1 year 8 months

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

Immersion Studios Inc, Toronto ON
Jul 2002 - Apr 2003 · 9 months

Worked on Immersion cinema and Poetic Dimensions Real Time server and controller products.
Worked in the Core team.
Used C++, MFC, STL, ATL, MSVC, DirectShow, Macromedia Director, IRIX, OpenGL Performer, TCP/IP, Windows, and MFC.
Designed and developed key modules for the Immersion backbone using COM/ATL.
Developed a data transfer module with an implementation of a Reliable UDP protocol.
Developed a registration module.
Designed and developed a new version of the communication protocol between the PDRT server and controller.
Designed and developed a new user interface for the PDRT controller.

Senior Software Developer

Hotline Communication Ltd, Toronto ON
Apr 2001 - Feb 2002 · 10 months

Worked on Hotline 2.0, a multiplatform file sharing and exchange system.
Worked in the UI team.
Used C/C++, TCP/IP, HTTP, SMTP, STL, COM, MSVC, and CodeWarrior.
Developed an end-to-end file transfer subsystem.
Worked on low-level Winsock and TCP/IP.
Worked on the Hotline protocol.
Worked on the Hotline middleware.
Worked on the GUI.
Designed and developed XML structures describing transfers.
Refined the low-level connection mechanism between the client and the server.
Added support for resumable transfers.
Designed and developed support for Windows shortcuts for file sharing and transfer subsystems.
Designed and developed Community and Service modules.
Improved drag-and-drop support on Windows.
Developed several widgets such as tables, trees, and special combo boxes.

Software Developer then Senior Software Developer

Science Soft Inc (dept. of Invention Machine Corp, Boston, MA), Minsk Belarus
Oct 1996 - Apr 2000 · 3 years 6 months

Worked on TechOptimizer 2.5, 3.0, and 3.5.
Worked in the TechOptimizer team.
Used C++, MFC, UML, Design Patterns, STL, ATL, MSVC, and DirectShow.
Took part in creation of the project structure.
Designed the data model of Chart.
Implemented advanced features of the Chart graphical editor.
Implemented an animation subsystem for the Chart graphical editor.
Developed a tool for creating and managing the internal database using CodeBase SDK.
Created report-related widgets.
Developed a viewer for files in VRML format using Direct3DRM.
Created a storing mechanism for voice comments.

Coop Terms

Science Soft Inc, Minsk Belarus

Implemented search mechanisms.
Implemented simple class hierarchies.
Created user interface for internal tools.
Tested different modules.
Performed usability testing.
Performed stress testing.
Developed Help system using Help compiler.

Skills

Backend Development Java Python C++ Django Flask FastAPI PostgreSQL CouchDB MongoDB JavaScript ActionScript Vue Docker AWS Microservices Web Services Thrift RPC Ethereum Solidity IoT FHIR ChatGPT Nginx WebSocket Machine Learning Celery Django REST Framework Stripe API PyTest GitHub Actions Redis PostGIS Cypress GraphQL Braintree JWT RabbitMQ AWS API Gateway AWS Cognito AWS Lambda AWS EC2 AWS Elastic Spring Boot Apache Airflow Hadoop Kubernetes Helm JUnit Mockito
Report this Profile?