Full-stack Web Developer2016 - PRESENTToptal Clients
- Created a WebRTC webinar PWA for WebinarNinja (via Toptal) using TypeScript, Angular 2, and ngrx/store; also developed a document conversion solution with PHP and Laravel.
- Refactored and fixed security issues in a legacy PHP application for Kickinespresso (via Toptal).
- Implemented a number of features for Camsoda (via Toptal) using PHP, Laravel, MySQL, and AngularJS.
Freelance Web Developer2009 - PRESENTSelf-employed
- Created Lingvix, a language learning platform, using PHP, Laravel framework, and Symfony components, MySQL, SphinxSearch, nginx, and Beanstalkd for the full stack. Developed a PHP-CPP extension for Hunspell. The front-end is built with AngularJS.
- Developed BBWDream, a dating website. The server side is implemented with PHP, Laravel, Symfony components, ReactPHP/Rachet for the WebSockets chat server, PostgreSQL GIN/GIST and Redis for quick profile search. The front-end is built with AngularJS.
- Built the game engine for BrainApps.ru, an online brain training website. Developed a flexible framework based on AngularJS, and a dozen brain-training games. The framework enables the customer to have more games implemented by lower skilled devs.
- Programmed the server side code of Sivi, a cloud-based website builder, using PHP, MySQL, and Memcached, including a custom high-availability/sharding/clustering framework, JSON-RPC API interface, cloud website renderer, and an infrastructure manager.
- Created a faceted search engine for Sotmarket online store using SphinxSearch, with additional PHP layer for REST API and automated incremental conversion from EAV-structured MySQL database to a set of dynamically managed Sphinx indices.
- Built a search engine for the Tekora 4i enterprise idea management web service, a high-performance re-implementation of an initially MS SQL-based search system. Developed as a REST service with SphinxSearch, PHP, and WinCache.
- Created WebArena.Ru, an online marketing system for a ring of medical/health information websites, using PHP, PostgreSQL and Memcached. The development took four days. The engine serves hundreds of requests on a dozen websites on a single entry-level server.
- Worked on side projects for Chronopay, a digital media online store with an affiliate program (PHP/PostgreSQL), a UGC-based news website (PHP/MySQL).
Lead Full-stack Developer2020 - 2021Textly Inc.
- Implemented a NestJS-based back end (with PostgreSQL and Redis for storage), an Angular-based web front end, and browser extensions (Chrome, Firefox, Safari) for the Textly.AI grammar checker/AI assistant.
- Devised an algorithm for real-time incremental checking, based off the idea of operational transformations, which was implemented with Socket.IO as a transport layer.
- Created an in-house analytics system with ClickHouse as a column-oriented database and custom Go microservices for delivery.
- Implemented API clients in Java and Swift for Android and iOS teams.
- Introduced the best CI/CD practices with CircleCI and Docker.
- Served as a lead developer which included developing high-level design documents, designing the APIs, and selecting and leading a team of web, iOS, and Android developers.
Senior Full-stack Developer2019 - 2019Evisors, Inc. (via Toptal)
- Worked as a full-stack developer and implemented lots of features for Evisors.com: a SaaS platforms that connect students and alumni for career advice at over 100 universities, including Harvard, Oxford, and Cambridge.
- Built the most significant and huge feature: smart profile synchronization with LinkedIn via v2 API (and, while doing that, created the first fully functional LinkedIn v2 API client in existence).
- Refactored the back-end codebase (PHP) to use a modern object-oriented design approach.
- Found and fixed multiple security (SQL injections, XSS vulnerabilities) and performance (SQL queries, algorithmic complexity) issues.
- Reworked the front-end code to use a Webpack-based building process which resulted in 10x load time improvement. Introduced Docker-based development and deployment procedures.
Head of Development2009 - 2009Tellver
- Developed a scalable social network framework.
- Developed an in-house PHP extension for extended Redis support.
- Organized the development process: moved from chaotic development to Scrum-based workflow.
- Introduced test-driven development and continuous integration.
- Selected and trained a strong team of developers.
CTO2007 - 2008NCP, Ltd.
- Selected a small team of three senior developers.
- Organized Agile workflow with Scrum, TDD, and continuous integration.
- Combined the roles of CTO, chief developer, team leader, and Scrum master.
- Oversaw the development of a scalable eCommerce website building service using PHP, MySQL, and Memcached, and built several corporate websites.
Senior Web Developer2006 - 2007Badoo Corp.
Technologies: Memcached, MySQL, PHP, SQL, NoSQL, NGINX, Object-oriented Programming (OOP), PHP-FPM
- Built components of the second version of Badoo.com: a dating-focused social network, including user profiles, multilingual profile builder, photo and video galleries, and comments.
- Coded in PHP and MySQL/Memcached with a lot of attention to scalability, availability, load balancing, and the ability to distribute between two data centers in the US and Europe.
- Developed a blogging/commenting system able to work seamlessly even when users are hosted in different data centers.
- Created a component to generate multilingual profile descriptions on natural languages based on profile data and language definitions automatically compiled from MS Word documents to PHP code.
- Contributed to the development of Badoo open source projects written in C like Blitz, a PHP template engine extension, and php-fpm, the FastCGI process manager.
Freelance Web Developer2004 - 2006Self-employed
- Developed a web hosting management and affiliate platform for BestHosting, LLC using PHP and MS SQL.
- Developed a web hosting/virtual server management platform for Gigakom s.r.o. LLC using PHP and MySQL.
- Performed security audits for Bank Saint-Petersburg.
- Developed an intranet real estate database application for a real estate agency using PHP and PostgreSQL.
- Developed dozens of websites using PHP and MySQL.