TypeScript Developer in New Haven, CT, United States
CTO | Co-founder | Lead Developer2014 - PRESENTTradle
Technologies: Node.js, React Native, AWS (Lambda, DynamoDB, IoT, S3, CloudFormation, ECS), Serverless
- Designed and implemented serverless deployment that can be monitored and updated while running completely under the customer's own AWS account.
- Built an adapter to DynamoDB that uses index overloading to allow an arbitrary number of data models to be stored in one table, each indexed on its own model-specific properties, with support for re-indexing.
- Designed and implemented a plugin-based real-time chat bot framework using AWS IoT.
- Created a set of nested CloudFormation stacks for deploying architecture as code, as well as an update mechanism and CLI to manage configuration, updates, and rollbacks post-deployment.
- Designed and implemented adapters to the Ethereum and Bitcoin blockchains.
- Authored a number of open-source native modules for React Native, for crypto, networking (UDP), and storage.
- Authored an open source dev tool, rn-nodeify, and a set of shims that enable a Node.js-like environment in React Native. These open source components are now used by production apps (not just ours).
- Designed and implemented a cryptographic protocol.
- Authored plugins for the Serverless framework.
Lead Developer2012 - 2014Urbien
Technologies: Backbone.js, WebRTC
- Built a zero-dep web framework for single-page applications (SPAs) with resource-loading optimization, offline storage using IndexedDB, social login/registration via multiple networks as well as plugins for maps and WebRTC.
- Developed apps for hackathons based on that framework.
Developer2011 - 2012Obval
- Integrated with multiple Russian payment processors: Robokassa and QIWI Terminal.
- Integrated with multiple American and Russian social networks for login, registration, and contact list priming.
- DynamoDB Magic (Development)https://github.com/tradle/dynamodb
This is a DynamoDB client that uses index overloading to allow an arbitrary number of data models to be stored in one table, each indexed on its own model-specific properties with support for re-indexing.
- Open Source Contributions (Other amazing things)https://github.com/mvayngrib?utf8=%E2%9C%93&tab=repositories&q=&type=fork&language=
I've contributed to many OSS projects such as WebTorrent, bitcoinjs-lib, the Serverless Framework, and React Native.
- Node.js shim for React Native (Development)https://github.com/tradle/rn-nodeify
This is a build tool for enabling Node.js compatibility in React Native, a la what Webpack does in the browser with node-libs-browser and the associated collection of shims. I'm also the author of the various shims required to make Node.js core modules such as dgram, fs, and crypto work out of the box in React Native.
- Serverless Framework Plugin that Emulates AWS IoT (Development)https://github.com/tradle/serverless-iot-local
Like the Serverless-offline project, this enables interfacing AWS Lambda with AWS IoT in a local development environment.
- React Native Markdown-based Renderer (Development)https://github.com/tradle/rn-markdown
This renders Markdown to React Native components.
FrameworksReact Native, Redux, Express.js, Koa
Libraries/APIsNode.js, React, WebRTC
ToolsAWS CLI, AWS SDK, AWS CloudFormation, NPM, AWS IAM, Webpack, VS Code, AWS ECS, AWS CloudWatch, Amazon Virtual Private Cloud (VPC)
PlatformsAWS Lambda, AWS IoT, Docker, AWS EC2, Android, iOS
StorageAWS DynamoDB, AWS S3
OtherReact Native Bridge, Code Architecture, OAuth
- Bachelor's degree in Computer Science2004 - 2008Massachusetts Institute of Technology | MIT - Cambridge, MA, USA