Full-stack Engineer - Node/React
2020 - PRESENTYara- Implemented a VRA Brush Mode. Added an ability for the farmer to adjust and fine-tune their Variable Rate Applications of fertilizers on the map to optimize the precision of how the fertilizer is applied to the field.
- Fixed bugs, wrote e2e tests, refactored code to maintain the quality of the code.
- Implemented bulk field upload feature that allows farmers to upload all of their field data with supported files instead of manually drawing the boundaries on the map for each field.
- Implemented bulk "Crop Type" change feature that allows farmers to switch the crop type of their fields when season changes and fields need a different analysis and treatment.
Technologies: Node.js, NestJS, React, Styled-components, TypeScript, Cypress, Mapbox, Turf.js, GraphQL, JestFront-end Developer
2020 - 2020Airmeet- Added functionalities into Airmeet's built-in messaging system such as hyperlink support, message reply, chat notifications.
- Built the direct messaging ability with other conference participants. That supports sending chat requests, accepting/denying chat requests, and turning on/off notifications from individual participants.
- Built the "Speed Networking" feature that allows participants of the online conference to randomly match each other and start a video calls for fast networking and engagement within participants.
Technologies: React, Redux, Firebase, WebRTC, JavaScriptReact Native Developer
2020 - 2020UX Integrated- Built iOS and Android apps in React Native for truck drivers.
- Implemented background geolocation tracking of the device into iOS and Android app to track truck drivers' location when they are on an assignment even if the app is killed (aka swiped out).
- Implemented routine background task scheduler to turn on/off background geolocation tracking based on whether the driver has an assignment.
- Developed universal link support for iOS, Android, and web so the single link opens the correct screen no matter what platform it is.
- Integrated OneSignal push notifications with support for universal links to be able to send the user to a specific screen of the app.
Technologies: Google Maps, Redux-Saga, Axios, Redux, React Native, ReactHead of Mobile
2018 - 2018Sugi Group AB- Rebuilt the mobile app from ground up for iOS and Android in React Native.
- Implemented build pipelines for Android and iOS with Fastlane.
- Built an over‒the‒air updates pipeline with Microsoft CodePush.
- Integrated the mobile app with Bugsnag and Google Analytics for proactive bug and funnel reports.
- Built a recycling stations map with marker clustering.
- Developed a barcode scanner with scan, prescan, and validate modes that track a user's device location to decide which mode it is in.
- Implemented a dynamic mobile app localization with Google Spreadsheets.
- Published and maintained a mobile app in the Google Play and App Store.
- Implemented end‒to‒end tests for mobile app using Detox.
- Interviewed IT candidates for engineering positions.
Technologies: CodePush, Jest, Enzyme, Redux, Google Maps, Firebase, React Navigation, React NativeNode.js and React Engineer
2018 - 2018Bob's Repair- Developed a prototype web app where customers can create and receive bids for a multistep job.
- Integrated the prototype web app with Ethereum blockchain so every bidding step is registered in the public ledger.
- Implemented simple notifications system for the web app so users can see when the requested blockchain actions are finished.
Technologies: Blockchain, Redux, React, JavaScriptFront-end Developer
2017 - 2017Axon Holdings, LLC- Developed web components for Msgsafe.io including the billing, dashboard, DNS management, chat, and onboarding sections.
- Built React Native components for Msgsafe.io; included implementing the chat, email file attachments, tone manager, and WebRTC audio/video screens.
- Upgraded the dependencies of the native app that included more than 30 packages with JavaScript, iOS, and Android-specific code.
- Refactored WebRTC STUN messaging coordination to track every single step of the audio/video call connection in the app state and to handle all possible failures.
- Implemented a native-to-web authentication flow that allows the users to seamlessly, within the native app, access features available on the website but not yet in the native apps.
Technologies: React Navigation, React Native, Redux-Saga, Redux, React, JavaScriptWeb Developer
2012 - 2016YakynLabs- Developed the website, Unfpa.org.tm: a traditional website with news, gallery, publications, and linked article pages. Used jQuery, and Bootstrap/LESS for the front end and MODX for the back end.
- Rebuilt the site, Unfpa.org.tm with jQuery, SUSY/Sass for the front-end and ProcessWire for the back end. Among other things, I notably developed a responsive, nested, dropdown menu—it stack-folds for small resolution screens and lines up horizontally for wide screens. I also built a responsive Pinterest-like gallery.
- Created the website Yashlyk.info: an information hub on puberty for kids with engaging Q&A tests. Used jQuery, SUSY/Sass, and ProcessWire.
- Developed the website, Drdavtyan.ru; built a paginated article view that allows the presentation of long articles without stretching the webpage height.
- Built a jewelry web app that allows a user to compose a bracelet or necklace by dragging and dropping beads and pendants. Used AngularJS for the front-end.
- Rebuilt the jewelry web app with Backbone.js and the Famous Engine (a JavaScript animation engine that utilizes GPU for smooth 60 FPS animations).
- Developed a light-but-robust animation engine in Backbone.js to replace the Famous Engine for the jewelry web app. Which resulted in a complex jewelry composer that allows you to add/remove beads or pendants, zoom in/out for fine-tuning, gives a list of beads to choose from, and animates the random generation of a bracelet or necklace. A demo can be found in my portfolio section.
- Created a document-management and publication website with thousands of articles in two languages with multiple permission levels for the parliament of Turkmenistan.
- Constructed a widget module for a parliament website that allows the website manager to set/change the layout of the website with responsive design in mind. A demo can be found in my portfolio section.
- Developed a language manager module for a parliament website that keeps track of translation links between pages that utilizes ProcessWire's SQL query builder. A demo can be found in my portfolio section.
- Built websites for the Ministry of Nature Protection and convention on biodiversity of Turkmenistan. Links can be found in my portfolio section.
- Constructed a portfolio website for the great artist Vitaly Didenko. A link and more information can be found in my portfolio section.
- Managed the server environments for websites that I built with Nginx, PHP-FPM, and MySQL on CentOS.
- Composed a JavaScript events library that was inspired by ProcessWire's hook system and Backbone events. A link and more information can be found in my portfolio section.
- Wrote JavaScript modules that parse Sass strings and returns an array of paths that are resolved by the import directories in that string. More information can be found at the link in my portfolio section.
Technologies: React, Backbone.js, Node.js, JavaScript, MySQL, ProcessWire CMS, PHP