Full-stack PHP/React Developer
2019 - PRESENTToptal, LLC- Designed and developed a speed coding competition web application that Toptal uses to attract new talent at conferences, meetups, and online.
- Optimized for high-load: a) mutexes to prevent database transaction race conditions in a non-blocking way; b) Nginx micro-caching.
- Designed PostgreSQL database schema and developed a custom PHP framework.
- Developed Docker containers for both development and production environments.
- Integrated with Matomo, an open source PHP analytics software.
Technologies: PHP 7, APIs, Babel, Webpack, Docker, Online Forms, Web Worker, Twitter, Bootstrap, SaaS, JSON API, Mutex, REST API, PostgreSQL, React, PHP, Next.js, VercelReact Front-end Engineer, Core Team
2019 - 2019Toptal, LLC- Developed Toptal Picasso React Components, a shared UI library that leverages the power of React Hooks.
- Developed new staff portal pages using TypeScript and React with Hooks.
- Mentored, reviewed code, and helped architect Toptal's staff portal as a member of the tech leads team.
- Helped shape GraphQL schema for the back-end team.
- Developed business flow diagrams based on multiple specifications and sources of knowledge about the Toptal systems.
- Developed multi-step wizards and complex forms with combined client-side and server-side data validation and error handling.
Technologies: Docker, Nginx, APIs, Babel, Git, Jest, Webpack, Material-UI, CSS, Styled Components, React Router, React Final Form, Apollo, GraphQL, React, TypeScriptReact/Redux Developer
2019 - 2019Realtime Media- Developed in-browser games with using Canvas API, Fabric.js, SVG, and React.
- Contributed to the development of a Rewards Platform web application.
- Developed a React-based theme editor for games.
- Refactored old React code to use the newer React Hooks feature.
- Developed a Firefox browser extension.
Technologies: MongoDB, C#, SVG, Fabric, Canvas, Redux, ReactLead PHP/React Web Developer
2018 - 2019XZERES- Developed a wind turbine management website automating business processes and interaction between turbine owners, landlords, technicians, helpdesk team, and XZERES staff. Developed a proprietary framework for this project.
- Built dashboards displaying gauges with live turbine data and statistics, e.g., current wind direction, total energy produced, outages, etc.
- Created an API to make it possible for other teams to integrate third-party tools and applications with the XZERES system.
- Implemented user and turbine registration forms and a corresponding back end for administrators to review applications.
- Developed, installed, and maintained Docker containers for development and production environments.
- Internationalized and localized the XZERES web application using i18next and GETTEXT. Installed and integrated Weblate to ease translator collaboration.
- Integrated ReactPHP, a low-level library for event-driven programming in PHP, to schedule and run background tasks that fetch and store data from hundreds of wind turbines located in Japan and other countries.
Technologies: Integration Testing, Nginx, PHP 7, APIs, Git, Bootstrap, HTTP API, React, PostgreSQL, PHP, Webpack, Docker, Next.jsSenior Web Developer
2014 - 2018Veer West, LLC (as FormAssembly)- Integrated FormAssembly with Stripe, Chargent, iATS, and eWay payment gateway APIs.
- Built graphs and charts to visualize statistics for 100+ thousand form submissions (used Plotly charts library).
- Developed a plugin for TinyMCE WYSIWYG editor that highlights and validates the syntax of Excel formulas. These formulas are entered by form owners to control the transformation of data and its submission to third-party services for further processing.
- Coded an internal client scoring system based on client activity, billing information, content in the forms they create, and other factors.
- Coded the next version of Form Builder using React. Form Builder is a drag-n-drop wizard that allows the user to build online forms of any complexity. Forms can have multiple pages, conditional content, repeatable sections, custom user JavaScript code, and theme support. All these features were coded in React.
- Developed React components for date range inputs and filters in response reports.
- Developed a React-based framework that unified the user interface experience in connectors. Connectors are modules that allow clients to connect their online forms with third-party services for additional data processing: Salesforce, Stripe, Mailchimp, and any others that have an API.
- Sped up archiving and exporting of thousands of files attached to form responses, from 10+ minutes down to a few seconds.
- Fixed Salesforce integration issues and upgraded it to use the latest version of Salesforce API.
- Developed unit tests using PHPUnit and Behat/Gherkin. Wrote scenarios for QA engineers.
- Helped the DevOps team to move the developer environment from Vagrant to Docker.
- Regularly reviewed PHP and JS code of other developers to improve its quality and help the product team to follow best practices.
- Translated the application interface to Russian and Ukrainian languages.
- Helped the support team write comprehensive documentation for the new and upgraded functionality.
Technologies: Integration Testing, Nginx, PHP 7, APIs, Gherkin, Behat, PHPUnit, Microservices, Docker, Functional Programming, Object-oriented Programming (OOP), Regular Expressions, jQuery, React, MySQL, PHPLead PHP Web Developer
2012 - 2013NotarZvit- Designed database schema and architected a SaaS for NotarZvit, an online service for Ukrainian notaries that simplifies (1) bookkeeping and (2) maintaining registries of notary acts.
- Developed a PDF generation module for notaries to build reports and submit the reports to the Department of Justice in Ukraine.
- Integrated the website with the Mailchimp mailing list and configured the latter to run mailing campaigns as by the client specification.
- Configured a web server for the client by installing LAMP stack on Ubuntu; deployed and regularly updated the application.
Technologies: Docker, Nginx, PHP 7, PDF, jQuery, CodeIgniter, JavaScript, MySQL, PHP, SaaSPHP Web Developer
2007 - 2012ProfitProtector Limited (UK)- Developed analytics and monitoring tools for ClickBank affiliates. This includes: database schema design, employing CodeIgniter PHP framework, integrating with ClickBank API and Alexa API, web scraping, and building graphs and charts.
- Coded a sports betting automation tool (C#, Betfair API).
- Developed an online company registration service. This included integrating with the government company registration API, generating PDFs, developing online forms, and developing the public website of the service.
Technologies: Nginx, APIs, Amazon Alexa, PayPal API, ClickBank APIs, Betfair, Web Scraping, Zend Framework, CodeIgniter, MySQL, XML, SOAP, C#, jQuery, JavaScript, PHPSoftware Developer
2005 - 2006Kyiv National University of Construction and Architecture- Developed student exam software for the university. Used Delphi and VCL components, and XML to save tests. It was used by one faculty member to automate the theoretical part of exams, i.e., quizzes.
- Generated PDF reports for both students and examiners.
- Deployed the exam software to multiple classrooms.
Technologies: Software, Windows, PDF, XML, Visual Component Library (VCL), Delphi