Senior Full-stack Web Developer
2019 - PRESENTInkarnate- Designed the architecture and implemented the new React rewrite of the legacy app.
- Updated the legacy Angular app by adding new features and fixing bugs.
- Actively participated in team discussions; giving feedback and sharing my ideas about the product.
Technologies: Ruby on Rails (RoR), Ruby, HTML5 Canvas, Redux-Saga, TypeScript, ReactPrincipal Full-stack Web Developer
2018 - 2018Random Variations (via Toptal)- Implemented a complete MVP of a real-time music app, from scratch.
- Worked as the only tech person on the team, frequently communicated with my non-tech clients to make sure the end result matched their needs and vision.
Technologies: Audio, MUI (Material UI), Real-time Audio Processing, Web Audio API, MobX, React, FirebaseFreelance Full-stack Web Developer
2017 - 2017Cardero-X (via Toptal)- Designed and implemented parts of the REST API.
- Implemented an admin app to enable the CRUD of domain-specific data.
- Added support for different user roles and different access levels inside the admin app.
Technologies: Semantic UI, Webpack, Node.js, MongoDB, Redux, ReactFreelance Full-stack Web Developer
2017 - 2017Audantic (via Toptal)- Implemented a reusable production-quality skeleton for building Flask APIs including authentication with API keys, filtering, pagination, validation, Swagger docs, and more.
- Implemented a heat map visualization of property prices with Google Maps.
- Designed and implemented a product page with embedded Looker data dashboards.
- Measured and optimized the performance of certain API calls—optimizing the database query performance.
- Consulted with my client regarding the technology choices for the web and API.
Technologies: MySQL, Flask, Python, React, Single-page Applications (SPA)Freelance Full-stack Web Developer
2017 - 2017Reporter Suite (via Toptal)- Conducted a complete rewrite of a legacy AngularJS app to modern React stack resulting in a much more fast, robust, user-friendly, and maintainable web app.
- Set up the infrastructure, deployment processes, and monitoring for the updated application on an AWS cloud platform; integrated user analytics and client-side error tracking.
- Migrated old users and data to the new app, ensuring a smooth transition for the existing customers.
- Implemented many new features while working closely with the project owner, such as Stripe payments processing, a notifications functionality, invoice PDF generation, data export, admin UI, and many others.
Technologies: Amazon Web Services (AWS), Ansible, Docker, Stripe, Node.js, Webpack, Redux, React, ECMAScript (ES6)Student Mentor (HTML, CSS, JavaScript)
2017 - 2017HTML Academy (Online Front-end Courses)- Developed one of the best online education projects on front-end technologies in Russian.
- Mentored more than ten students: reviewing code, conducting Q&A Skype calls, giving advice on how to write better JavaScript, HTML5, and CSS3 code, and following best practices such as BEM or progressive enhancement.
Technologies: Progressive Enhancement, BEM, Less, Webpack, ECMAScript (ES6), JavaScript, CSS3, HTML5Freelance Full-stack Web Developer
2017 - 2017Baleen Labs (via Toptal)- Developed a proof-of-concept SPA: visual block editor for code and business logic, akin to Microsoft micro:bit.
- Adapted a drag-n-drop library Dragula to play well with React.
- Implemented a markup after being provided Sketch designs for Baleen.io (a promo page for the company and their product).
- Developed another demo SPA that heavily used Google Maps API.
- Adapted an existing API for this second demo to be more RESTful-like, and integrated this API with the front-end.
- Took care of the dockerization and deployment of the developed apps to EC2 and documented the process of the deployment.
Technologies: Amazon Web Services (AWS), Docker, Amazon EC2, Flask, Python, Webpack, ECMAScript (ES6), Vue, Redux, ReactFull-stack Web Developer
2016 - 2017Smarkets- Optimized the app load time and client-side performance using such techniques like above-the-fold rendering, code splitting, caching of server-side rendered React components, and more.
- Consolidated localization messages between the web and mobile app—implemented tooling for intracompany collaborative crowd-sourced localization.
- Worked closely with UX designers to optimize the web-app for desktop experience—implemented responsive desktop layout, improved keyboard navigation, and more.
- Implemented and integrated with our Jenkins CI end-to-end Selenium tests running on the BrowserStack cloud platform on different browsers and different types of OS.
- Created tools for stress-testing and performance reports (max requests per second, CPU/memory utilization, and more) of the server-side rendering server.
- Participated in technical interviews for candidates for the generalist software engineer position.
- Ported a number of critical features from the older monolithic website.
Technologies: Amazon Web Services (AWS), Linux, Docker, Flask, Python, Express.js, Node.js, Webpack, ECMAScript (ES6), React Native, GraphQL, Redux, ReactSoftware Engineer
2015 - 2016AIM Tech Algotrading- Developed a scalable cluster system for easier scheduling of simulations of trading strategies on historical data to boost the productivity of our quantitative analysts.
- Designed and implemented the web front-end for this system so that that the quantitative analysts can launch their simulations, compare the performance of different approaches, visualize the results, and export data for further analysis.
- Adapted the same back-end and developed a new front-end for a student contest of HFT (high-frequency trading) strategies. This lasted two months and attracted ~1,000 participants, mainly Russian math/computer science students which allowed the company to created simulations of its pool of quantitative analyst candidates.
- Set up the infrastructure for the logging and monitoring of the system using open source technologies such as Prometheus, Grafana, and Graylog for the better visibility, user analytics, performance monitoring, and debugging ease.
- Implemented a number of high-performant data parsers for different trading data formats (FIX, FAST, and more).
- Participated in the technical interviews involving our team by designing interview questions and test projects for the candidates.
Technologies: Amazon Web Services (AWS), Prometheus, Graylog, Docker, Ansible, MongoDB, PostgreSQL, RabbitMQ, Redis, Django, Flask, Python, Webpack, React, ECMAScript (ES6)R&D Software Simulation Intern
2013 - 2014Intel- Developed a performance simulator for a new, experimental computer architecture in a small team of researchers.
- Investigated the impact of several architectural features on the performance of the modeled architecture, implemented these features in the simulator, and presented the report at the end of the internship.
- Learned a great deal about low-level programming, compilers, computer architecture, and code optimizations.
Technologies: Bash, Makefile, CMake, C++, C, LinuxFreelance Software Enginneer
2012 - 2014Freelance Work- Developed a cross-platform desktop application for testing and developing electronic devices working with ARINC429 protocol (a protocol used in avionics). I worked on it together with another engineer, doing both low-level and UI programming as well as handling the communication with the client and presenting the product. Technology stack: C, C++, Qt4, serial ports.
- Prototyped various algorithms for discrete optimization (route-planning, TSP) and classification problems. Technology stack: Python, Cython, Numpy, SciPy.
- Supported and improved five different web apps for small-to-medium enterprises.
- Refactored legacy code, reduced technical debt and added new features; all the while working in a small distributed team. Technology stack: Java EE, GWT, PHP, JavaScript, MySQL, WordPress, and phpBB.
Technologies: Apache Tomcat, GWT, Java EE, Apache, MySQL, PHP, JavaScript, Qt 4, C++, C, SciPy, NumPy, Cython, Python